David 3 tháng trước cách đây
mục cha
commit
12b2b4187f

+ 4 - 3
models_processing/model_koi/tf_bp_pre.py

@@ -58,17 +58,18 @@ def model_prediction_bp():
         # ------------ 获取模型,预测结果------------
         bp.get_model(args)
         res = list(chain.from_iterable(target_scaler.inverse_transform(bp.predict(scaled_pre_x))))
-        pre_data['power_forecast'] = res[:len(pre_data)]
         pre_data['farm_id'] = args.get('farm_id', 'null')
-
         if args.get('algorithm_test', 0):
-            pre_data['model'] = 'lstm'
+            pre_data[args['model_name']] = res[:len(pre_data)]
             pre_data.rename(columns={args['col_time']: 'dateTime'}, inplace=True)
+            pre_data = pre_data[['dateTime', 'farm_id', args['target'], args['model_name'], 'dq']]
+            pre_data = pre_data.melt(id_vars=['dateTime', 'farm_id', args['target']], var_name='model', value_name='power_forecast')
             res_cols = ['dateTime', 'power_forecast', 'farm_id', args['target'], 'model']
         else:
             pre_data['cdq'] = args.get('cdq', 1)
             pre_data['dq'] = args.get('dq', 1)
             pre_data['zq'] = args.get('zq', 1)
+            pre_data['power_forecast'] = res[:len(pre_data)]
             pre_data.rename(columns={args['col_time']: 'date_time'}, inplace=True)
             res_cols = ['date_time', 'power_forecast', 'farm_id', 'cdq', 'dq', 'zq']
 

+ 4 - 3
models_processing/model_koi/tf_cnn_pre.py

@@ -57,18 +57,19 @@ def model_prediction_bp():
         cnn.opt.cap = round(target_scaler.transform(np.array([[args['cap']]]))[0,0], 2)
         logger.info("---------cap归一化:{}".format(cnn.opt.cap))
         cnn.get_model(args)
-        # result = bp.predict(scaled_pre_x, args)
         res = list(chain.from_iterable(target_scaler.inverse_transform(cnn.predict(scaled_pre_x))))
-        pre_data['power_forecast'] = res[:len(pre_data)]
         pre_data['farm_id'] = args.get('farm_id', 'null')
         if args.get('algorithm_test', 0):
-            pre_data['model'] = 'cnn'
+            pre_data[args['model_name']] = res[:len(pre_data)]
             pre_data.rename(columns={args['col_time']: 'dateTime'}, inplace=True)
+            pre_data = pre_data[['dateTime', 'farm_id', args['target'], args['model_name'], 'dq']]
+            pre_data = pre_data.melt(id_vars=['dateTime', 'farm_id', args['target']], var_name='model', value_name='power_forecast')
             res_cols = ['dateTime', 'power_forecast', 'farm_id', args['target'], 'model']
         else:
             pre_data['cdq'] = args.get('cdq', 1)
             pre_data['dq'] = args.get('dq', 1)
             pre_data['zq'] = args.get('zq', 1)
+            pre_data['power_forecast'] = res[:len(pre_data)]
             pre_data.rename(columns={args['col_time']: 'date_time'}, inplace=True)
             res_cols = ['date_time', 'power_forecast', 'farm_id', 'cdq', 'dq', 'zq']
         pre_data = pre_data[res_cols]

+ 4 - 3
models_processing/model_koi/tf_lstm_pre.py

@@ -56,18 +56,19 @@ def model_prediction_bp():
         scaled_pre_x, pre_data = dh.pre_data_handler(pre_data, feature_scaler)
         ts.opt.cap = round(target_scaler.transform(np.array([[args['cap']]]))[0, 0], 2)
         ts.get_model(args)
-        # result = bp.predict(scaled_pre_x, args)
         res = list(chain.from_iterable(target_scaler.inverse_transform(ts.predict(scaled_pre_x))))
-        pre_data['power_forecast'] = res[:len(pre_data)]
         pre_data['farm_id'] = args.get('farm_id', 'null')
         if args.get('algorithm_test', 0):
-            pre_data['model'] = 'lstm'
+            pre_data[args['model_name']] = res[:len(pre_data)]
             pre_data.rename(columns={args['col_time']: 'dateTime'}, inplace=True)
+            pre_data = pre_data[['dateTime', 'farm_id', args['target'], args['model_name'], 'dq']]
+            pre_data = pre_data.melt(id_vars=['dateTime', 'farm_id', args['target']], var_name='model', value_name='power_forecast')
             res_cols = ['dateTime', 'power_forecast', 'farm_id', args['target'], 'model']
         else:
             pre_data['cdq'] = args.get('cdq', 1)
             pre_data['dq'] = args.get('dq', 1)
             pre_data['zq'] = args.get('zq', 1)
+            pre_data['power_forecast'] = res[:len(pre_data)]
             pre_data.rename(columns={args['col_time']: 'date_time'}, inplace=True)
             res_cols = ['date_time', 'power_forecast', 'farm_id', 'cdq', 'dq', 'zq']
         pre_data = pre_data[res_cols]