航空发动机剩余寿命预测与人类情绪识别研究
一、NASA涡轮风扇发动机剩余使用寿命预测
在复杂环境下,数据内部的关系对模型应用性能有着重要影响。本次研究聚焦于将经典机器学习算法应用于涡轮风扇发动机数据集,以计算喷气发动机的剩余使用寿命(RUL)。
(一)数据集
选择了NASA涡轮风扇数据集,该数据集来自NASA的预测数据仓库,包含了涡轮风扇发动机从运行到故障的传感器读数。它有多个不同特点,适合用于本次研究,且常被用于预测研究。
- 数据集中有多个相同类型的涡轮风扇发动机,每台发动机的初始磨损和制造条件不同。假定初始磨损正常,发动机在开始时正常运行。
- 该数据集有四组训练集和测试集,且存在噪声。因第二组数据集数据量更多(50k行,其他约20k行),所以选择它来训练和测试模型。
- 发动机在运行过程中会出现故障,在训练集中故障会逐渐加剧直至系统故障,而测试集的数据在机器故障前结束。每行对应一个运行周期,数据集有26列,每台发动机有21个传感器收集运行时发动机状态的不同读数,还有三个操作设置来改变发动机性能。
| Index | Features | Type | Description |
|---|---|---|---|
| 1 | unit_nr | Integer | 唯一发动机标识符 |
| 2 | Time cycles | Integer | 当前周期(时间度量) |
| 3 | Setting_1 | Float | 发动机设置1 |
| 4 | Setting_2 | Float | 发动机设置2 |
| 5 | Setting_3 | Float | 发动机设置3 |
| 6 | s_1 | Float | 传感器读数1 |
| 7 | s_2 | Float | 传感器读数2 |
(二)预测方法
- 计算RUL :先计算训练集和测试集中每个实例的剩余使用寿命(RUL)。
- 数据预处理 :应用预处理方法使数据适合算法处理。
- 模型训练 :将训练数据输入算法构建模型,使用Python编程环境开发和测试模型,用seaborn和matplotlib等Python库绘制变化图,用测试集验证模型适用性,使用r²分数和RMSE等指标比较结果并评估模型。
-
实验步骤
:
- 最初,不改变特征集拟合所有特征,记录基线分数。
- 然后将目标(RUL)限制在125,因为RUL与时间并非线性下降关系,开始时是恒定的,发动机出现故障后才开始下降,这样做使训练分数有了显著提高。
- 最后,挑选关键特征(如使用随机森林或XgBoost的特征重要性属性)进行拟合,消除不太重要特征引入的可能噪声。
mermaid语法的流程图如下:
graph LR
A[计算RUL] --> B[数据预处理]
B --> C[模型训练]
C --> D[最初拟合所有特征]
D --> E[记录基线分数]
E --> F[RUL限制在125]
F --> G[挑选关键特征拟合]
(三)算法选择
选择了监督学习中的回归方法,应用了四种回归算法进行比较研究:
1.
线性回归
:建立因变量和自变量之间的最佳拟合线,使线的误差平方和最小。
2.
随机森林(RF)
:常用于预测维护技术,简单且抗过拟合能力强。
3.
XgBoost
:即极端梯度提升,是先进算法,提供并行树提升,可用于回归和分类任务。
4.
K近邻(KNN)
:根据特征的最近K值对对象进行分类。
(四)性能指标
使用两个性能指标评估模型:
1.
均方根误差(RMSE)
:衡量回归直线对数据点的拟合程度,通过取残差均值的平方根确定,值越低模型越好。计算公式为:$RMSE = \sqrt{MSE} = \sqrt{\frac{1}{N}\sum_{i=1}^{N}(y_1 - \hat{y})^2}$
2.
决定系数(R²)
:统计指标,表明因变量的方差可由自变量预测的比例,用于解释一个因素的变异性与另一个因素的关系。计算公式为:$R^2 = 1 - \frac{\sum_{i=1}^{N}(y_1 - \hat{y}
i)^2}{\sum
{i=1}^{N}(y_1 - \bar{y}_i)^2}$
其中,$\hat{y}_i$为预测值,$\bar{y}$为均值,$y$为实际RUL。
不同算法的R²误差和RMSE如下表所示:
| 算法 | 训练集 - R² | 训练集 - RMSE | 测试集 - R² | 测试集 - RMSE |
| — | — | — | — | — |
| 线性回归 - 基础模型 | 0.650 | 40.9187 | 0.6445 | 32.0611 |
| 线性回归 - RUL限制在125 | 0.755 | 20.6210 | 0.6512 | 31.760 |
| 线性回归 - 特征工程 | 0.754 | 20.6245 | 0.6510 | 31.770 |
| XGBoost回归 - 基础模型 | 0.7924 | 31.5171 | 0.7153 | 28.694 |
| XGBoost回归 - RUL限制在125 | 0.8831 | 14.2429 | 0.7341 | 27.7277 |
| XGBoost回归 - 特征工程 | 0.8831 | 14.2429 | 0.7341 | 27.7277 |
| 随机森林 - 基础模型 | 0.9599 | 13.8522 | 0.7167 | 28.6200 |
| 随机森林 - RUL限制在125 | 0.9772 | 6.2863 | 0.7284 | 28.0265 |
| 随机森林 - 特征工程 | 0.9771 | 6.3049 | 0.7270 | 28.0943 |
| KNN - 基础拟合 | 0.77680 | 32.683 | 0.6537 | 31.64533 |
| KNN - RUL限制在125 | 0.8699 | 15.0271 | 0.7026 | 29.3232 |
| KNN - 特征工程 | 0.8699 | 15.0271 | 0.7026 | 29.3232 |
二、基于面部特征的新型人类情绪识别模型堆叠
人类情绪识别是具有广泛现实应用的计算复杂任务,基于单一数据源的单一学习模型难以准确检测情绪。近年来,设计了多种方法和技术来实现高效准确的人类情绪检测。
(一)研究背景
在视觉数据模态下,许多面部表情检测工具将人类情绪分为7大类:快乐、悲伤、愤怒、恐惧、惊讶、中性和厌恶。本次研究提出了一个面部情绪识别的堆叠框架,具有控制隐式数据论证参数的功能。
(二)研究动机
- 模型选择困难 :现有模型众多,选择合适模型很繁琐,因此采用轻量级模型并创建自定义模型以提高准确性。
- 数据处理挑战 :自适应数据论证在面部情绪识别中至关重要,处理数据对象的相应特征可能很繁琐,预处理阶段的特征空间论证可使识别模型的学习阶段更顺畅。
(三)研究方法
- 数据集选择 :在FER2013数据集上进行实验,采用三级交叉验证(训练、测试和验证)。
- 模型训练策略 :使用转移学习和堆叠技术训练模型,为解决CNN模型可能的过拟合问题,使用Dropout和Kernel正则化。
(四)研究问题
- RQ - I :哪些深度学习技术可用于创建“人类情绪识别”的广泛框架?
- RQ - II :为了使人类情绪识别模型获得更好结果,应给面部特征多少堆叠?
- RQ - III :数据仲裁在基于面部的学习模型数据场景中如何发挥关键作用?
(五)研究成果
实验实现了约64.3%的准确率,超过了现有约61.2%的准确率,与人类约60 - 70%的准确率相当。
三、结果与讨论
(一)NASA涡轮风扇发动机剩余使用寿命预测结果
-
数据集选择依据
- 选择第二数据集是因为其有50k行数据,而其他数据集约20k行。通常在数据质量良好的情况下,更多的数据有利于模型训练和测试。
- 第二数据集所有特征都有方差,意味着所有特征可能都包含对RUL预测有用的信息。 -
发动机寿命分布情况
- 发动机寿命的频率分布呈右偏态,更多发动机在第200个周期或之前发生故障。 -
模型预测表现
- 通过绘制实际RUL与预测RUL值的图表发现,所有使用的算法在预测较低RUL限值时表现良好,但在预测较高限值时存在困难。所有预测在RUL超过125时趋于稳定,这可能是由于预处理时为获得更好分数进行了裁剪操作。
- 计算RUL的方法是,对于发动机的特定行,先计算发动机运行到故障的周期数,然后用该周期数减去每行的周期数。由于很难完全准确地计算RUL,所以使用R²分数和RMSE作为性能指标。R²分数表示模型能解释的方差比例,RMSE用于避免低估平均误差。 -
模型过拟合情况
- 假设中随机森林每次都会过拟合,实际情况也是如此。因为数据集中存在大量异常值,随机森林等算法对异常值敏感,即使进行了超参数调整,仍可能出现过拟合。而XgBoost不过拟合可能是因为其预测方式(提升)与随机森林本质不同。
- 超参数调整对分数的提升效果不明显,这表明给定的特征集本身不够丰富。 -
模型性能比较
- 从不同算法的R²误差和RMSE结果来看(如下表),XGBoost回归的测试集RMSE最低(27.7277),表现最佳。
| 算法 | 训练集 - R² | 训练集 - RMSE | 测试集 - R² | 测试集 - RMSE |
| — | — | — | — | — |
| 线性回归 - 基础模型 | 0.650 | 40.9187 | 0.6445 | 32.0611 |
| 线性回归 - RUL限制在125 | 0.755 | 20.6210 | 0.6512 | 31.760 |
| 线性回归 - 特征工程 | 0.754 | 20.6245 | 0.6510 | 31.770 |
| XGBoost回归 - 基础模型 | 0.7924 | 31.5171 | 0.7153 | 28.694 |
| XGBoost回归 - RUL限制在125 | 0.8831 | 14.2429 | 0.7341 | 27.7277 |
| XGBoost回归 - 特征工程 | 0.8831 | 14.2429 | 0.7341 | 27.7277 |
| 随机森林 - 基础模型 | 0.9599 | 13.8522 | 0.7167 | 28.6200 |
| 随机森林 - RUL限制在125 | 0.9772 | 6.2863 | 0.7284 | 28.0265 |
| 随机森林 - 特征工程 | 0.9771 | 6.3049 | 0.7270 | 28.0943 |
| KNN - 基础拟合 | 0.77680 | 32.683 | 0.6537 | 31.64533 |
| KNN - RUL限制在125 | 0.8699 | 15.0271 | 0.7026 | 29.3232 |
| KNN - 特征工程 | 0.8699 | 15.0271 | 0.7026 | 29.3232 |
mermaid语法的流程图展示不同算法的性能比较流程:
graph LR
A[选择算法] --> B[训练模型]
B --> C[计算R²和RMSE]
C --> D[比较不同算法结果]
D --> E[确定最佳算法]
(二)基于面部特征的新型人类情绪识别模型结果
-
准确率提升
- 在FER2013数据集上的实验取得了约64.3%的准确率,超过了现有约61.2%的准确率,与人类约60 - 70%的准确率相当。这表明所提出的堆叠框架和采用的训练策略是有效的。 -
研究问题解答思路
- RQ - I :在本研究中使用了如MobileNetV2、ResNet121和VGG - 16等基于图像的模型,并结合转移学习和堆叠技术,这些深度学习技术共同构成了人类情绪识别的框架。
- RQ - II :通过实验不断调整堆叠的方式和程度,最终实现了较好的结果,但具体的堆叠量需要根据不同的数据集和模型进行进一步探索。
- RQ - III :自适应数据论证在预处理阶段对特征空间进行论证,减少了数据的隐式不平衡,避免了CNN模型的过拟合,从而使基于面部的学习模型能够更好地学习数据特征,发挥关键作用。
四、总结与展望
(一)NASA涡轮风扇发动机剩余使用寿命预测总结与展望
-
总结
- 通过对NASA涡轮风扇发动机数据集的研究,应用多种回归算法计算RUL,并比较了它们的性能。XGBoost回归在RMSE指标上表现最佳,说明其在预测发动机剩余使用寿命方面具有优势。 -
展望
- 未来可以尝试时间序列和分类方法,进一步探索深度学习架构,以减少误判情况并获得更好的结果。这有助于航空公司优化发动机维护计划,提高运营效率。
(二)基于面部特征的新型人类情绪识别模型总结与展望
-
总结
- 提出的面部情绪识别堆叠框架在FER2013数据集上取得了较好的准确率,解决了部分现有模型的局限性。 -
展望
- 未来可以进一步探索更多的深度学习技术和数据处理方法,以提高人类情绪识别的准确率和鲁棒性。同时,可以将研究扩展到多模态数据,结合语音、行为等信息进行更全面的情绪识别。
2万+

被折叠的 条评论
为什么被折叠?



