准确率计算逻辑更改数据库
This commit is contained in:
parent
af408caef1
commit
3f24f117d5
@ -197,15 +197,15 @@ warning_data = {
|
|||||||
|
|
||||||
### 开关
|
### 开关
|
||||||
is_train = True # 是否训练
|
is_train = True # 是否训练
|
||||||
is_debug = True # 是否调试
|
is_debug = False # 是否调试
|
||||||
is_eta = False # 是否使用eta接口
|
is_eta = False # 是否使用eta接口
|
||||||
is_timefurture = True # 是否使用时间特征
|
is_timefurture = True # 是否使用时间特征
|
||||||
is_fivemodels = True # 是否使用之前保存的最佳的5个模型
|
is_fivemodels = False # 是否使用之前保存的最佳的5个模型
|
||||||
is_edbcode = True # 特征使用edbcoding列表中的
|
is_edbcode = False # 特征使用edbcoding列表中的
|
||||||
is_edbnamelist = False # 自定义特征,对应上面的edbnamelist
|
is_edbnamelist = False # 自定义特征,对应上面的edbnamelist
|
||||||
is_update_eta = False # 预测结果上传到eta
|
is_update_eta = False # 预测结果上传到eta
|
||||||
is_update_report = False # 是否上传报告
|
is_update_report = False # 是否上传报告
|
||||||
is_update_warning_data = True # 是否上传预警数据
|
is_update_warning_data = False # 是否上传预警数据
|
||||||
|
|
||||||
### 北京环境数据库jbsh_test
|
### 北京环境数据库jbsh_test
|
||||||
# url: jdbc:mysql://192.168.101.27:3306/jingbo_test?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&useSSL=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
|
# url: jdbc:mysql://192.168.101.27:3306/jingbo_test?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&useSSL=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
|
||||||
@ -225,8 +225,8 @@ db_mysql.connect()
|
|||||||
|
|
||||||
# 数据截取日期
|
# 数据截取日期
|
||||||
start_year = 2000 # 数据开始年份
|
start_year = 2000 # 数据开始年份
|
||||||
end_time = '' # 数据截取日期
|
end_time = '2024-11-23' # 数据截取日期
|
||||||
freq = 'W' # 时间频率,"D": 天 "W": 周"M": 月"Q": 季度"A": 年 "H": 小时 "T": 分钟 "S": 秒 "B": 工作日
|
freq = 'B' # 时间频率,"D": 天 "W": 周"M": 月"Q": 季度"A": 年 "H": 小时 "T": 分钟 "S": 秒 "B": 工作日
|
||||||
delweekenday = True if freq == 'B' else False # 是否删除周末数据
|
delweekenday = True if freq == 'B' else False # 是否删除周末数据
|
||||||
is_corr = False # 特征是否参与滞后领先提升相关系数
|
is_corr = False # 特征是否参与滞后领先提升相关系数
|
||||||
add_kdj = False # 是否添加kdj指标
|
add_kdj = False # 是否添加kdj指标
|
||||||
@ -235,7 +235,7 @@ if add_kdj and is_edbnamelist:
|
|||||||
### 模型参数
|
### 模型参数
|
||||||
y = 'Brent连1合约价格' # 原油指标数据的目标变量 Brent连1合约价格 Brent活跃合约
|
y = 'Brent连1合约价格' # 原油指标数据的目标变量 Brent连1合约价格 Brent活跃合约
|
||||||
# y = '期货结算价(连续):布伦特原油:前一个观测值' # ineoil的目标变量
|
# y = '期货结算价(连续):布伦特原油:前一个观测值' # ineoil的目标变量
|
||||||
horizon =4 # 预测的步长
|
horizon =5 # 预测的步长
|
||||||
input_size = 40 # 输入序列长度
|
input_size = 40 # 输入序列长度
|
||||||
train_steps = 50 if is_debug else 1000 # 训练步数,用来限定epoch次数
|
train_steps = 50 if is_debug else 1000 # 训练步数,用来限定epoch次数
|
||||||
val_check_steps = 30 # 评估频率
|
val_check_steps = 30 # 评估频率
|
||||||
|
@ -172,25 +172,25 @@ def predict_main():
|
|||||||
row, col = df.shape
|
row, col = df.shape
|
||||||
|
|
||||||
now = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
|
now = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
|
||||||
# ex_Model(df,
|
ex_Model(df,
|
||||||
# horizon=horizon,
|
horizon=horizon,
|
||||||
# input_size=input_size,
|
input_size=input_size,
|
||||||
# train_steps=train_steps,
|
train_steps=train_steps,
|
||||||
# val_check_steps=val_check_steps,
|
val_check_steps=val_check_steps,
|
||||||
# early_stop_patience_steps=early_stop_patience_steps,
|
early_stop_patience_steps=early_stop_patience_steps,
|
||||||
# is_debug=is_debug,
|
is_debug=is_debug,
|
||||||
# dataset=dataset,
|
dataset=dataset,
|
||||||
# is_train=is_train,
|
is_train=is_train,
|
||||||
# is_fivemodels=is_fivemodels,
|
is_fivemodels=is_fivemodels,
|
||||||
# val_size=val_size,
|
val_size=val_size,
|
||||||
# test_size=test_size,
|
test_size=test_size,
|
||||||
# settings=settings,
|
settings=settings,
|
||||||
# now=now,
|
now=now,
|
||||||
# etadata=etadata,
|
etadata=etadata,
|
||||||
# modelsindex=modelsindex,
|
modelsindex=modelsindex,
|
||||||
# data=data,
|
data=data,
|
||||||
# is_eta=is_eta,
|
is_eta=is_eta,
|
||||||
# )
|
)
|
||||||
|
|
||||||
|
|
||||||
logger.info('模型训练完成')
|
logger.info('模型训练完成')
|
||||||
@ -228,7 +228,7 @@ def predict_main():
|
|||||||
file=max(glob.glob(os.path.join(dataset,'*.pdf')), key=os.path.getctime),
|
file=max(glob.glob(os.path.join(dataset,'*.pdf')), key=os.path.getctime),
|
||||||
ssl=ssl,
|
ssl=ssl,
|
||||||
)
|
)
|
||||||
m.send_mail()
|
# m.send_mail()
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
@ -369,9 +369,9 @@ def model_losss(sqlitedb):
|
|||||||
|
|
||||||
# find_most_common_model()
|
# find_most_common_model()
|
||||||
|
|
||||||
df_predict2 = df_predict.copy()
|
df_predict2 = df_combined3.tail(horizon)
|
||||||
df_predict2['ds'] = pd.to_datetime(df_predict2['ds'])
|
df_predict2['ds'] = pd.to_datetime(df_predict2['ds'])
|
||||||
df_predict2['ds'] = df_predict2['ds'].dt.strftime('%Y-%m-%d 00:00:00')
|
df_predict2['ds'] = df_predict2['ds'].dt.strftime('%Y-%m-%d')
|
||||||
|
|
||||||
# 保存到数据库
|
# 保存到数据库
|
||||||
if not sqlitedb.check_table_exists('accuracy'):
|
if not sqlitedb.check_table_exists('accuracy'):
|
||||||
@ -382,13 +382,13 @@ def model_losss(sqlitedb):
|
|||||||
df_predict2['id'] = range(max_id + 1, max_id + 1 + len(df_predict2))
|
df_predict2['id'] = range(max_id + 1, max_id + 1 + len(df_predict2))
|
||||||
else:
|
else:
|
||||||
df_predict2['id'] = range(1, 1 + len(df_predict2))
|
df_predict2['id'] = range(1, 1 + len(df_predict2))
|
||||||
df_predict2['CREAT_DATE'] = datetime.datetime.now().strftime('%Y-%m-%d')
|
|
||||||
|
df_predict2['CREAT_DATE'] = end_time
|
||||||
df_predict2['PREDICT_DATE'] = df_predict2['ds']
|
df_predict2['PREDICT_DATE'] = df_predict2['ds']
|
||||||
df_predict2['MIN_PRICE'] = df_predict2['min_within_quantile']
|
df_predict2['MIN_PRICE'] = df_predict2['min_within_quantile']
|
||||||
df_predict2['MAX_PRICE'] = df_predict2['max_within_quantile']
|
df_predict2['MAX_PRICE'] = df_predict2['max_within_quantile']
|
||||||
print(df_predict2.clumns)
|
|
||||||
df_predict2 = df_predict2[['id','PREDICT_DATE','CREAT_DATE','MIN_PRICE','MAX_PRICE']]
|
df_predict2 = df_predict2[['id','PREDICT_DATE','CREAT_DATE','MIN_PRICE','MAX_PRICE']]
|
||||||
df_predict2.to_sql(table_name, con=sqlitedb.connection, if_exists='append', index=False)
|
df_predict2.to_sql("accuracy", con=sqlitedb.connection, if_exists='append', index=False)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user