Skip to content

ChaoQiezi/RetrievalPrecipitation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

01 完成model1的模型构建

使用PRCP_cq34_FY3DL2_202005_08_daily_T_order.csv

目前暂实现的各个模型的输入情况

model_1: FY3D-MWHS 1-15, daily, 5-8month, not exist NAN
model_4: FY4A cn1-14, hourly, 5-8month, exists NAN
model_14: FY4A cn1-14, daily, 5-8month, not exist NAN
model_19: FY3D-MWHS 1-15 + FY4A cn1-14, daily, 5-8month, not exist NAN

00 步骤记录

2024/04/27前 理清模型核心部分

简单编写了数据的样本生成, 编写初步的LSTM模型, 期望可以得到尚可的结果 遇到的问题: 尝试使用同时期的X预测同时期的Y, 效果很差, 原因有想法但是 目前时间有限暂不做解释和验证; 换了LSTM常用思路: 利用过去的X(或继续 加入过去的Y)训练模型, 用训练好的模型预测未来的Y。

2024/04/28 样本生成优化

整理了样本生成的代码, 方便后续各种情况下样本的生成; 下一步: 完善和优化模型的核心部分, 并尝试加入参数寻优等方法; 后续可能的问题: 注意样本中存在的无效值对LSTM的影响如何解决?

2024/5/15 训练存在瑕疵

上次已经修改了训练存在的瑕疵, 这个问题是此前process_timeseries.py进行样本/特征处理时, 由于 索引两边取值(我认为是左闭右开, 然而在pd中是两边闭), 因此意外地将目标数据放到特征数据中去训练了 导致训练结果过好, 上次已经修复这个问题.

但是现在存在新问题就是, 训练的模型在R2上表现极差了, 这个是目前存在的最大问题.

另外总结现有完成的工作, 梳理一下脉络, 方便后续进一步搭建框架. 在Scripts文件夹下核心是

  • process_timeseries.py(生成样本)
  • model_train.py(模型训练) 在utils文件夹中
  • utils.py存在相关常用函数

2024/5/16 训练存在瑕疵的讨论和解决

现在为了方便管理, 项目根目录增加Config.py配置文件, 用于全局控制相关变量的处理. 初步的添加model_eval.py, 可以进行简单的评估, 但是还没有完善绘图部分和计算评估指标. 优化了model_train.py, 对utils.py和model.py的相关函数进行了优化和重构. 现在重点在着手解决model训练的loss虽然看着很小, 至少相对于RF,而且目前评估时的各类 指标也比较小,但是实际绘图: 模型预测结果_2024/5/16

2024/6/3 尝试优化模型

后续可能增加

  1. 优化配置文件
  2. 增加自注意力机制的LSTM模型,期望得到更好结果
  3. 完善各类数据排列组合传入的模型的运行流程
  4. 解决部分训练数据(时间分辨率: 小时)中存在的无效值,暂通过多项式插值解决
  5. 是否需要类似径流模拟项目中类似做法对时间序列进行卡尔曼滤波?
  6. 为process_timeseries.py等脚本增加基本信息的输出以明晰运行情况(最好通过日志生成)

0.0 Note

  1. 注意为了减少随机性,取五次平均值作为最后的预测
  2. 不能独立地对测试机的X进行scale

About

基于CNN-LSTM的降水反演,特征因子包括FY3D-MWHS、MWTS、FY4A cn1-14

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages