Bladeren bron

awg commit algorithm components

anweiguo 4 maanden geleden
bovenliggende
commit
1a582bb983

+ 3 - 0
README.md

@@ -26,6 +26,9 @@
 * ·‌LSTM    ·‌CNN    ·DNN    ·Lightgbm   ·Xgboost    ·RandomForest
 * [模型预测] model_predict
 
+### 模型后处理 post_processing
+
+
 ### 评估 evaluation_processing
 
 * 准确率计算

+ 2 - 1
models_processing/model_predict/model_prediction_lightgbm.py

@@ -10,7 +10,7 @@ app = Flask('model_prediction_lightgbm——service')
     
 
 def model_prediction(df,args):
-    mongodb_connection,mongodb_database,mongodb_model_table,model_name = "mongodb://root:sdhjfREWFWEF23e@192.168.1.43:30000/",args['mongodb_database'],args['mongodb_model_table'],args['model_name']
+    mongodb_connection,mongodb_database,mongodb_model_table,model_name,model_key = "mongodb://root:sdhjfREWFWEF23e@192.168.1.43:30000/",args['mongodb_database'],args['mongodb_model_table']
     client = MongoClient(mongodb_connection)
     db = client[mongodb_database]
     collection = db[mongodb_model_table]
@@ -20,6 +20,7 @@ def model_prediction(df,args):
         # 反序列化模型 
         model = pickle.loads(model_binary)
         df['predict'] = model.predict(df[model.feature_name()])
+        df['model'] = model_name
         print("model predict result  successfully!")
     return df
 

+ 2 - 1
models_processing/model_predict/model_prediction_lstm.py

@@ -23,7 +23,7 @@ def create_sequences(data_features,data_target,time_steps):
 
 
 def model_prediction(df,args):
-    features, time_steps, col_time =  str_to_list(args['features']), int(args['time_steps']),args['col_time']
+    features, time_steps, col_time, model_name =  str_to_list(args['features']), int(args['time_steps']),args['col_time'],args['model_name']
     feature_scaler,target_scaler = get_scaler_model_from_mongo(args)
     df = df.fillna(method='ffill').fillna(method='bfill').sort_values(by=col_time)
     scaled_features = feature_scaler.transform(df[features])
@@ -34,6 +34,7 @@ def model_prediction(df,args):
     y_predict = list(chain.from_iterable(target_scaler.inverse_transform([model.predict(X_predict).flatten()])))
     result = df[-len(y_predict):]
     result['predict'] = y_predict
+    result['model'] = model_name
     return result
 
 def str_to_list(arg):