基于随机森林的屋顶机空调系统故障诊断研究

2019-01-19 08:10吴斌杜鑫杜志敏晋欣桥
制冷技术 2018年5期
关键词:测试数据决策树正确率

吴斌,杜鑫,杜志敏,晋欣桥

(上海交通大学制冷与低温工程研究院,上海 200240)

0 引言

随着社会的发展,人们需求的提高,空调系统在日常生活中应用越来越普遍,据统计,空调的耗电量已占建筑总能耗的50%以上[1-2]。随着各部件的老化、设备的性能衰减,空调系统常常运行在亚健康状态,导致能耗大幅上升,维护成本增长以及使用者舒适度下降[3],因此针对空调系统的故障诊断势在必行。目前空调系统的故障诊断技术主要分为3大类:基于模型的方法、基于规则的方法和基于数据挖掘的方法[4]。基于模型方法依赖准确的数学物理模型,NORFORD等[5]开发了一种物理模型来检测空调箱的常见故障,此外还有黑箱模型[6]和灰箱模型[7];与基于模型方法不同,基于规则的方法不需要构建准确的数学模型而是依靠专家知识或经验规则,VISIER等[8]构建了专家系统用于诊断学校空调系统故障,HOUSE等[9]提出了一系列的规则来判断空调箱的运行状况,但如果专家规则构建的不够详细,诊断效率就会下降;基于数据挖掘的方法近几年发展非常迅速,主元分析[10-11]、支持向量机[12]、神经网络[13-15]等方法均已用在空调系统的故障诊断中,该方法通过挖掘数据之间的固有关系来区分正常与故障数据,如 LEE等[16]提出了回归神经网络诊断空调箱的突发性性能衰退故障,WANG等[17]在变风量系统中提出了基于神经网络的传感器故障检测模型。近几年计算能力的提高,新型算法的出现,使得机器学习在数据挖掘、计算机视觉、自然语言处理等领域的应用效果有了明显提升,而随机森林作为机器学习中一个重要的分支也拥有着广泛的应用。

本文以3个屋顶机空调系统作为研究对象,采用了随机森林的方法,分别构建并研究了不同屋顶机系统的故障检测与诊断的模型。首先,本文介绍了随机森林方法的基本原理。接着说明了RF模型具体构建过程并验证了该方法的准确性。然后,本文研究了不同故障程度的训练数据产生的模型与检测结果的关系并进行了对比验证。最后研究了相似系统间模型通用性的问题,验证了本文所建立的RF模型具有一定的通用性能力。

1 研究对象

1.1 屋顶机空调系统

本文研究对象为3个屋顶机空调系统,分别记为RTU1,RTU2和RTU3,系统组成如图1所示,由压缩机、冷凝器、节流装置和蒸发器4大部件组成。3个屋顶机系统之间,节流装置形式相同,不同之处在于压缩机的形式、制冷剂的种类以及制冷能力,具体见表1。

图1 屋顶机空调系统简图

3个系统之间具有相同的传感器测点布置,分别测取:室内回风干球温度、室内回风湿球温度、室内送风干球温度、室内送风湿球温度、室外送风干球温度、室外回风干球温度、液管温度、吸气温度、排气温度以及液管压力、吸气压力和排气压力共计12个变量。

表1 3个屋顶机空调系统构成

1.2 故障类型与程度

本文共研究了屋顶机系统的6种热力故障,分别为冷凝器结垢(Condenser Low Airflow Fault,CA)、蒸发器结垢(Evaporator Low Airflow Fault,EA)、压缩机阀门泄露(Compressor Valve Leakage,VL)、液管堵塞(Liquid Line Restriction,LL)、制冷剂不足(Undercharged,UC)与制冷剂过多(Overcharged,OC),故加上正常类型(Normal)的数据,共计 7个类型。

表2为实验故障程度,其中每个故障类型下均有较大范围的实验故障程度覆盖,故本数据集能够支持不同故障程度的训练数据产生的模型与检测结果关系的研究。但对比不同机组可以发现,在相同的故障类型下,不同机组的故障程度范围并不统一,如UC故障下,RTU3的故障程度范围仅为RTU1的1/3,这给跨系统对比增加了难度。

表2 实验故障程度

因此,本文将任一故障类型的数据均划分为 3类,分别为轻度、中度和重度,并保证在每类中故障等级大小相近,不同类中故障等级大小无重叠的前提下,将样本数据均分到3类中,划分后具体结果见表3所示。

本文中所采用的数据均来自具体实验,关于故障的引入,以及故障程度衡量方式可以参考文献[18],本文由于篇幅有限,不作展开介绍。

表3 分类后故障程度

2 基于随机森林的诊断模型

随机森林是2001年BREIMAN提出[19],具有很高的分类精度,对噪声和异常值有较好的稳健性和较强的泛化能力等优势。RF属于集成学习法(使用一系列学习器进行学习,并使用某种规则把各个学习结果进行整合从而获得比单个学习器更好效果的一种机器学习方法),而组成RF的基本元素为决策树。

2.1 决策树

决策树是20世纪80年代非常流行的人工智能技术,为树状结构,见图2左,由一系列的节点与分支构成,其在节点处根据属性的不同对样本进行分类并一直持续到叶节点,该处就是决策结果。决策树的分类结果示意图见图2右侧,从中可见,决策树的分类是采用二分法在数据平面中依据数据的特征属性划分出诸多区域,每一个区域代表了一个决策结果。在决策树的构建时,常用算法有迭代二叉树3代(Iterative Dichotomiser 3,ID3),C4.5决策树(Classifier 4.5, C4.5),CART决策树(Classification And Regression Tree, CART)等[20]。决策树易于实现,训练时间短,训练完毕的模型便于理解,但有过度拟合的问题,常通过“剪枝”来改善。图2中,t1~t2均为节点,且t1为根节点,n1~n3为叶节点,代表了决策结果。

图2 决策树结构以及划分示意图

2.2 随机森林

随机森林由多个决策树分类器{h(x,θ_i),i=1,2,…,k}组成,其中h(x,θ_i)为 RF 中第i棵决策树,x为该决策树的训练集,θ_i为相互独立且同分布的随机向量,该随机向量决定该决策树的生成过程[21]。最终RF的输出结果由所有决策树投票得到。故RF算法包括决策树的生成和投票决定结果两部分,图3为RF方法的示意图。随机森林包含了两大随机化思想:

1)套袋思想,从原始样本中有放回抽取(即原始样本中某些样本可能在训练样本中多次出现)与原样本数量相同的训练样本集以构建单棵决策树;

2)特征子空间思想,在决策树节点进行分裂时,从全部特征中抽取一个特征子集,再从子集中选择一个最优特征进行分裂,这保证了每个决策树的训练数据只是部分训练样本中部分特征,虽然单颗树的分类能力不强,但大量的树的存在却有较高的预测准确性。

2.2.1 决策树的生成

单个决策树的生成如下:

1)从数据量为N的原始样本数据中采取放回抽样的方法随机抽取样本,重复N次形成一个新的训练数据集。

2)该训练数据集是该棵决策树所有训练数据,该训练数据集中有M个特征,从M个特征中随机挑选m个作为该决策树的训练特征。在该树的每个节点处,按照节点不纯度最小的原则从m个特征选一个特征进行分支生长,直到该树可以准确分类训练数据集或者所有属性已被用过,并且在森林的生长中,m保持不变,其中m的值采用如下公式确定:

3)决策树不进行剪枝操作,充分生长,从而使得每个节点的不纯度达到最小。

重复k次1~3步骤,从而生成由k棵决策树构成的随机森林。

2.2.2 投票决定结果

多棵决策树组合成的随机森林,在得到新的测试数据后,其结果由决策树分类器投票数确定,即对测试数据X,随机森林预测多个结果,得票数最多的类即为测试数据的最终标签,随机森林的投票公式如下:

式中:

H(X)——组合分类模型;

hi——单个决策树分类模型;Y——输出变量;

I(*)——示性函数。

图3 随机森林示意图

2.3 基于随机森林的故障诊断系统

本文采用的随机森林,其包含的决策树数量为500,m为4。输入的数据包括实际系统中测量值、部分物性计算等,分别为:室内回风干球温度、室内回风湿球温度、室内回风露点温度、室内回风相对湿度、室内送风干球温度、室内送风湿球温度、室内送风露点温度、室内送风相对湿度、室外送风干球温度、室外回风干球温度、液管温度、吸气温度、排气温度以及液管压力、吸气压力和排气压力、冷凝温度、蒸发温度、过冷度、过热度、COP(Coefficient of Performance)、室内送风量与正常值的比值共计22个。所有采集的数据均需通过异常数据剔除和稳态数据判别两个过程。

异常数据剔除,本文采用方法为箱图法,将一组特征数据从大到小排列,分别计算出上边缘、上四分位数Q3、中位数、下四分位数Q1、下边缘,其中内距(IQR)等于Q3与Q1的差,上下边缘分别为Q3+1.5IQR和Q1-1.5IQR,超出上下边缘的为异常值,如图4中黑叉所示。

图4 箱图法示意

本文使用移动窗口均值法判别稳态数据,即在k时刻、宽度为n的窗口内数据平均值如下式计算:

式中:

n——时间窗口宽度,s;

表4 类型编码

图5为本文中基于随机森林的故障诊断系统示意图,数据处理之后再根据研究具体内容,划分好训练数据集和测试数据集,利用训练数据集生成随机森林,再用测试数据进行验证,比较测试数据的预测类型与真实类型从而得出检测有效性。

图5 基于随机森林的故障诊断系统

3 实验验证

3.1 基于随机森林的诊断模型验证

在适用性验证部分,本文选用的数据为所有的故障程度,即轻度、中度、重度的总和。随机抽取66.6%样本用于训练RF模型,其余部分用于测试。

测试数据集的检测结果(本文之后所提到的检测结果均为测试数据集)如图6所示,3个系统的检测正确率分别为 81.5%、80%与 98.1%,均表现了较高的准确率,尤其RTU3,这与RTU3数据量较多有关。对于检测出错的样本,可以发现大部分为漏检,即实际为有故障,但模型预测为正常,其百分比分别为14.8%、12.0%与0%。3个机组的诊断正确率分别为73.7%、78.9%和100%,也表现出了不错的故障分辨能力。

考虑到本次测试的数据中包含有6种故障类型,RF方法在每一种故障类型下其检测正确率如图 7所示。从中可见,RTU3机组部分,所有类型的故障检测成功率均为 100%,只有对正常类型的数据出现了4.2%的检测错误。而RTU1在UC和OC故障下表现较差只有62.5%和75%,RTU2最差的结果发生在正常类型下,只有 66.7%并且EA和 UC的结果也不高,导致了RTU2的整体检测正确率3个系统中最低。

图6 随机森林方法总体适用性结果

图7 各种故障类型下RF方法的适用性结果

通过上文的简单验证之后可以发现,随机森林在RTU3数据部分表现优异,但另外两个屋顶机系统上却与RTU3的结果有明显差异。为了避免因为数据量的问题导致了检测结果的偏差,本文采用 k折交叉验证的方法。k折交叉验证是将原始样本集分为k个子样本,一个单独子样本集作为测试数据集,其余k-1个为训练数据集,并重复k次,而本文中k取3。使用三折交叉验证所得结果如下表所示,P1~P3 分别为 3 次验证的结果,AVRG(Average)为3次结果的平均值。从中可以发现,前文的简单验证结果即是P1部分结果。其次,对于RTU3各次检测的结果相差并不大,可认为RTU3的模型稳定可靠,这也验证了随机森林方法在RTU3系统中有着优异表现;而对于RTU1和RTU2,由于选取样本的不同,结果仍旧存在较大的跳动,如 RTU1的P1和P3的诊断正确率,但从平均值来看,其检测正确率、诊断正确率都处于一个相对不错的水平。

综上所述,随机森林的方法可以适用于屋顶机空调系统的故障检测与诊断。

表5 三折交叉验证结果

3.2 故障程度对模型的影响分析

本文已将所有的数据根据故障程度分为了轻度、中度和重度3类,在本节中,模型训练数据集选用轻度、重度、所有故障等级和轻重混合四类。其中轻重混合由轻度中故障程度最小的一半和重度等级中最大的一半共同组成。在具体划分训练和测试数据时,所有故障程度与3.1节相同,另外3个,如轻度,选用部分轻度故障数据以及部分正常数据用作训练,测试数据为其余正常数据、其余最小故障等级数据以及其他故障等级下的所有数据。

测试数据集结果如图8所示,RTU1机组在4种不同的故障程度下,检测正确率分别为81.5%、63.0%、31.2%和72.3%,诊断正确率分别为73.7%、55.3%、17.5%和66.7%。对比所有故障程度,减少训练数据的故障程度后,检测效果均出现了下降,其中轻重混合效果最佳。

对比3个屋顶机系统,可以发现统一规律,按照检测正确率和诊断正确率从高到低排列均为:所有故障程度>轻重混合>轻度>重度。

此外,为了证明在各个故障类型下均有上述结论存在,本文还对比研究了单一故障类型下训练数据的故障程度与检测结果关系。由于 RTU3的故障类型最齐全,故以其为例。图9列出了RTU3机组在5种故障类型下的结果。从中可见,正常类型的训练和测试数据由于未发生变动,故其效果均表现不错,其他故障下,大部分结果与前文结论相同,除了在EA故障下,重度的结果略微优于轻度。RT1与RTU2的结论与RTU3类似,除了在OC故障下结果出现了个例:所有故障程度>轻度>轻重混合>重度。

故可得出结论,在大部分的故障类型下,故障程度与其检测正确率关系均为:所有故障程度>轻重混合>轻度>重度。对此可以解释为在减少训练用故障等级数据后,RF模型所能识别的故障特征信息数量也有所下降,所以检测结果在所有故障程度时为最好,而轻重混合较另外两个含有更多的故障特征信息,故其效果为第二好。此外,轻度下包含有部分重度下的故障特征信息,而重度下含有的轻度的信息较少,故轻度的效果好于重度。

图8 不同故障程度结果

图9 RTU3系统不同故障类型下结果

3.3 模型的通用性验证

本节中模型的通用性指的是由某一系统数据训练生成的RF模型能否检测其他系统的数据。本次检验部分,RF模型采用3.1节中模型,测试数据为其他系统的所有数据,如对于RTU1的RF模型,其测试数据为RTU2和RTU3的所有数据。

进行初步检测后,可以发现模型有两种完全不同的响应,如图 10所示,横坐标为样本序号,纵坐标为数据类型。图中采用的样本数据均为 RTU2数据,分别用RTU1的RF模型和RTU3的RF模型进行测试。前者,样本的真实类型与模型的预测类型大部分吻合,而后者输出为定值,均表现为“正常”,虽然总体的检测正确率不为零,但该种检测没有实用价值,故本文将以“无效”标记。

图10 两种响应

通过交叉验证可得到表6的结果,其中验证方式1~2表示为RTU1模型检测RTU2数据。从中可以发现RTU3的模型对RTU1和RTU2的数据均为上文所述的定值输出为无效检测,而RTU1与RTU2的模型在3个系统的数据下均有正常的输出,并且检测的正确率均在50%以上,尤其是RTU1模型RTU2数据(1~2)和RTU2模型RTU1数据(2~1),检测正确率都接近80%,几乎与检测自身模型的数据结果相等。故可以推出,RTU1和RTU2之间模型的通用性较强,但RTU3与另两者通用性较差。考虑到3个系统之间特征输入值的范围并不相同,如图11所示。从中可见,在液管压力、吸气压力、排气压力3个特征下,RTU1与RTU3机组数据几乎不重合,并且这种数据范围不统一的情况在其他温度类的特征中也有体现,这也有可能影响模型的通用性。

为了减少数据范围的影响,本文采用了3种方式对数据处理并重新训练随机森林,分别为:温度特征值不变,所有的压力均除以排气压力,记为数据处理 1;所有的温度除以室外温度,所有的压力除以排气压力,记为数据处理2;以RTU2的数据中最大值和最小值为基础,分别对所有机组数据进行归一处理,记为数据处理3。重新训练并测试后,得到的结果如图12所示,纵轴坐标为检测正确率。

表6 模型通用性结果

图11 数据分布

图12 通用性提高结果

从图中可知,数据处理的方式对模型的通用性有一定影响,其中数据处理2的结果表现最好,在RTU2模型RTU1数据(2~1)、RTU2模型RTU3数据(2~3)、RTU3模型 RTU1数据(3~1)和RTU3模型RTU2数据(3~2)4种情况下,检测正确率分别提高了7.7%、10.5%、21.9%和15.7%。其次,这3种数据处理后其 RF模型对自身数据检测结果与原始结果重合,除了RTU2的数据处理1和数据处理3生成的模型的检测正确率下降了8%和4%,这证明了数据处理的方式几乎不影响RF模型对自身数据的检测效果。并且还可以发现数据处理的方法对原先效果较差的情况提升效果较大,但原先效果较好时,提升并不明显。

4 结论

本文通过随机森林的方法对3个屋顶机空调系统,共计6种故障类型进行了故障检测与诊断的研究,从实验数据的分析可知:

1)随机森林方法可以适用于屋顶机系统的故障检测与诊断,具有不错的效果;

2)在本文研究的 3个系统下,不同故障等级的训练数据与检测结果出现了统一的规律:所有故障程度>轻重混合>轻度>重度,并且在大部分单一故障类型下,也都存在该规律。这为之后设计实验的故障程度提供了依据,即可以采用轻重混合的类型,既能保持较高的准确性,又能减少实验次数;

3)本文研究所用的膨胀阀类型相同,制冷量、制冷剂和压缩机不同的屋顶机空调系统之间,随机森林生成的模型具有一定的通用性,RTU1和RTU2的模型之间具有较强的通用性,而RTU3模型则相对较弱;

4)本文以数据处理的方式,调整了特征数据的范围,从而提升了模型之间的通用性,其中以数据处理2的效果最好。

猜你喜欢
测试数据决策树正确率
个性化护理干预对提高住院患者留取痰标本正确率的影响
门诊分诊服务态度与正确率对护患关系的影响
测试数据管理系统设计与实现
决策树和随机森林方法在管理决策中的应用
生意
基于自适应粒子群优化算法的测试数据扩增方法
生意
基于决策树的出租车乘客出行目的识别
空间co-location挖掘模式在学生体能测试数据中的应用
基于模糊关联规则和决策树的图像自动标注