时序预测模型Timesnet(项目报告)
模型使用
模型已经可以支持持久化部署,直接启动main.py文件即可
目前会导致模型停止的情况:
1,在最近的两小时里,没有最新的环境数据被收到。
2,过去七天里,能用做模型输入的数据不足144组。
3,其他bug。
模型运行过程
每隔两小时,会在http://xxx/api/lab/admin/v1/monitor-data/query/predict上获取最近24小时的数据作为特征输入,然后预测未来两小时的数据变化,最后将数据上传到http://xxxxx/api/lab/admin/v1/monitor-data/predict/receive
可以通过
http://xxx/api/lab/admin/v1/monitor-data/query
下载最新的预测数据(每组数据间隔十分钟)
模型配置
该项目通过三个Timesnet模型进行已有环境数据的预测,三模型的配置如下:
#model1模型预测参数
#date 土壤温度 空气温度 空气湿度 光照强度
#Time-Series-Library-main\timesnet_data\real_data1.csv
MODEL_PATH="mymodels/model1.pth"
# 自定义数据集路径
DATA_PATH="timesnet_data/real_data1.csv"
# 预测结果保存路径
OUTPUT_PATH="timesnet_data/predictions1.csv"
python -u predict.py \--model_path $MODEL_PATH \--data_path $DATA_PATH \--output_path $OUTPUT_PATH \--seq_len 144 \--label_len 24 \--pred_len 12 \--enc_in 4 \--dec_in 4 \--c_out 4 \--d_model 64 \--e_layers 2 \--d_layers 1 \--factor 3 \--d_ff 256 \--top_k 5 \--embed 'fixed' \--freq 'T' \--use_norm 1\--batch_predict=False#model2模型预测参数
##date 二氧化碳
#Time-Series-Library-main\timesnet_data\real_data2.csv
MODEL_PATH="mymodels/model2.pth"
# 自定义数据集路径
DATA_PATH="timesnet_data/real_data2.csv"
# 预测结果保存路径
OUTPUT_PATH="timesnet_data/predictions2.csv"
python -u predict.py \--model_path $MODEL_PATH \--data_path $DATA_PATH \--output_path $OUTPUT_PATH \--seq_len 144 \--label_len 24 \--pred_len 12 \--enc_in 1 \--dec_in 1 \--c_out 1 \--d_model 32 \--e_layers 2 \--d_layers 1 \--factor 3 \--d_ff 128 \--top_k 5 \--embed 'fixed' \--freq 'T' \--use_norm 1\--batch_predict=False#!model3模型预测参数
#date 土壤水分 土壤EC值
#Time-Series-Library-main\timesnet_data\real_data3.csv
MODEL_PATH="mymodels/model3.pth"
# 自定义数据集路径
DATA_PATH="timesnet_data/real_data3.csv"
# 预测结果保存路径
OUTPUT_PATH="timesnet_data/predictions3.csv"
python -u predict.py \--model_path $MODEL_PATH \--data_path $DATA_PATH \--output_path $OUTPUT_PATH \--seq_len 144 \--label_len 24 \--pred_len 12 \--enc_in 2 \--dec_in 2 \--c_out 2 \--d_model 32 \--e_layers 2 \--d_layers 1 \--factor 3 \--d_ff 128 \--top_k 5 \--embed 'fixed' \--freq 'T' \--use_norm 1\--batch_predict=False
模型效果
三张图对应三个模型:
目前问题(优化方向)
虽然光照数据和空气湿度都存在一些诡异的突变,难以预测拟合,但这两数据与空气,土壤温度的关联性很强,最后还是决定将这四组数据一起建模,但是即使是效果最好的模型,其在捕捉光照强度突变的周期性特征上,效果依然不佳。
另外,二氧化碳的模型效果不佳,这是由于二氧化碳的数据抽搐的太猛,突变太多,而且周期性很差,模型难以捕捉特征。