0. RUL问题的通常步骤
其步骤为:
- 数据处理(预处理与特征提取)
- 模型搭建 (搭建神经网络)
- 将处理好的数据送进模型(确保维度一致)
- 根据预测值与实际值计算评价指标。
需要解决明确的问题:
- 训练/预测 的对象是什么?
- 数据选取的方式是什么?分层选取?逐次抽取?随机抽取?
1. 数据处理
原始数据也可以直接送入网络(需要match网络形状),但通常有数据不干净和数据冗杂的问题。
- 数据处理的意义:①将原始数据处理为有实际意义的数据。②将数据形状处理为可以输入网络的形状。
- 其又大致分为:①数据的预处理。②时频变换。③数据特征提取
1.1 数据预处理
数据预处理有多种方法:数据清理,数据集成,数据变换,数据归约等。
这些数据处理技术在数据挖掘之前使用,大大提高了数据挖掘模式的质量,降低实际挖掘所需要的时间。
1.2 时频变换
时域数据往往难以直接获得信息,而频域数据却能较好的获得异常信息,所以需要通过时频变换处理数据。
详解见链接:https://blog.csdn.net/u013539952/article/details/80525393?spm=1001.2014.3001.5502
1.3 数据特征提取
- 特征值即最能代表数据信息的值,其本质是少量数据表明全部数据的特征。在机械RUL领域,又可分为 时域特征值 和 频域特征值。
- 其本质是是通过数学公式计算而来的数据统计值。
a. 时域特征值
其可以在原始数据中直接得到。
b. 频域特征值
其需要在时频变换之后的频域中提取。
2. 训练集,验证集和测试集
2.1 训练集和验证集的作用
通过二者的表现对比,可以判断模型/数据集的情况,以此对模型进行修改。这就是验证集的作用。
训练集损失下降 验证集损失下降 ——> 网络正在学习(理想状态)
训练集损失下降 验证集损失不变 ——> 网络过拟合(尝试dropout、L2等手段)
训练集损失不变 验证集损失下降 ——> 数据集有问题(检查数据集)
训练集损失不变 验证集损失不变 ——> 网络遇到学习瓶颈(减小learning rate或batch size)
训练集损失上升 验证集损失上升 ——> 网络结构设计不当、超参设置不当、数据集经过清洗等