装备可靠性工程专栏
随着大数据技术的广泛应用和相关技术的不断成熟,人们利用数据资源的能力得到了较大提升。在数据巨量增加、数据种类繁多和数据格式迥异的情况下,如何从海量数据中获取有价值的信息,成为了大数据运用的核心问题。作为一种对数据高效处理和全面利用的技术,数据挖掘技术是应对上述挑战的有效手段之一,已经在许多领域得到了应用[1-3]。数据挖掘就是从大量数据中获取有用信息的过程,为了从数据中获取满足人们实际需求的知识,就要求所获得的数据具有较强的可用性[4-5]。但事实上,即使原始数据可靠性足够高,能准确反映装备的实际情况,从中挖掘信息的过程可能依然存在困难,数据类型的影响同样不可忽视。针对数据挖掘技术用于装备质量信息分析时,可能面临部分数据类型不适应数据挖掘方法的问题,本文中提出一种装备质量数据离散化方法。
运用数据挖掘方法能够从海量数据中找出隐含的规律和有价值的信息,然而许多数据挖掘算法并不适用于连续型数据,因此数据离散化是实施数据挖掘之前不可或缺的预处理环节。数据离散化是通过在连续属性的数据中插入断点,将其转化为若干个数值区间的过程[6-7]。将连续型数据转化为离散数据,能够使数据挖掘算法顺利运行。连续数据通常具有较高的数据精度与数据量,对其进行离散化可减轻机器的压力,而且离散数据更容易被计算机识别,能使数据挖掘效率得到提升。
在机器学习、模式识别、数据挖掘等领域,研究人员已经提出了许多数据离散化方法[8-11]。离散化算法可大致划分为以下几类:① 按照属性空间利用情况可分为局部离散化算法和整体离散化算法;② 按照离散化方向可分为自底向上的方法与自顶向下的方法;③ 按照处理时是否参考类别属性可分为有监督离散化算法和无监督离散化算法;④ 按照是否考虑属性联系可分为基于单属性的离散化方法和基于多属性的离散化方法;⑤ 按照是否同步进行离散化与决策树生成可分为静态离散化算法和动态离散化算法。
类别属性最大相互依赖算法是一种基于单属性的自顶向下的有监督静态离散化算法,适用于规则提取等方法的数据预处理。但是该算法仍存在信息易缺失和易过度离散化的问题,将对其基本原理进行介绍,在经典算法的基础上进一步提出改进算法,并通过实验检验其性能。
类别属性最大相互依赖(class-attribute interdependency maximization,CAIM)算法是Kurgan等人提出的一种受监督的离散化算法,简称CAIM算法[12]。该算法的目的是使数据对象所属类别与其属性值之间的依赖性最大化,并尽可能少地生成离散区间,下面对其进行简要介绍。
类别属性最大相互依赖准则是CAIM算法选取离散断点依据。假设存在一个包含N个对象和m个连续属性的数据集,其所有对象分别属于T个类别。对于其中任一连续属性Fi,存在一种离散化方案,将Fi的属性值划分成n个离散的数值区间,有:
D={[d0,d1],[d1,d2],…,[dn-1,dn]}
(1)
式(1)中:d0是属性Fi的最小值;dn是属性Fi最大值。
在这种框架下,类别C和属性Fi的离散区间构成了一个二维量子矩阵,如表1所示。
表1 二维量子矩阵
Table 1 Two-dimensional quanta matrix
类别区间[d0,d1]…[dr-1,dr]…[dn-1,dn]类别内总和C1q11…q1r…q1nM1+︙︙…︙…︙…Ciqi1…qir…qinMi+︙︙…︙…︙…CTqT1…qTr…qTnMT+区间内总和M+1…M+r…M+nM
对于i=1,2,…,T和r=1,2,…,n,qir表示属于区间[dr-1,dr]内的第i类的连续数值的总数,Mi+表示属于第i类的对象总数,M+r表示区间[dr-1,dr]内属性Fi的连续数值的总数。
类别属性最大相互依赖准则定义了类别C和属性Fi的离散化方案D之间的依赖性,计算公式为
(2)
式(2)中:n是区间数,用r来迭代所有区间;R是所有qir中的最大值,即量子矩阵第r列中的最大数值;M+r是区间[dr-1,dr]内属性Fi的连续数值的总数。R对应的类别是区间[dr-1,dr]中的主导类,主导类中的元素越多,CAIM值越大,类别与属性之间的关联程度也越大,断点的选择越合理。
CAIM算法的目的是将连续的属性值划分成若干个离散的区间,然后依次实现对每一个连续属性的离散化,其核心环节是求取用于划分区间的断点集合。首先定义 GlobalCAIM值,将其初始化为0。定义离散断点集合D并分配适当的存储空间,计算当前属性所有相邻数值的平均值,作为暂时的离散断点,然后求出这些断点的CAIM值并升序排列,再逐一与GlobalCAIM比较。若某个断点的CAIM值大于GlobalCAIM,则将该点存入断点集合D,同时将GlobalCAIM的值更新为该点的CAIM值,然后比较GlobalCAIM与下一个断点的CAIM值,重复上述步骤直到完成对所有断点的比较。在此过程中,当离散断点集合D中的元素数量超过类别数量时,结束对该属性的离散化。用相同的方法对下一个属性再进行离散化,直到所有的连续属性均完成离散化。
算法主要步骤如下。
Input:包含T类M个对象的数据决策表;
对于每个连续属性Fi均执行以下步骤:
Step1 找到当前属性所有数值的最大值dn和最小值d0;
Step2 对Fi的所有数值升序排序,用最大值dn、最小值d0和集合中所有相邻数对的平均值初始化分界点集合B;
Step3 将初始离散化方案设置为D:{[d0,dn]},定义变量GlobalCAIM,将其初始化为0;
Step4 初始化k为1;
Step5 暂时从集合B中添加一个不在D中的内边界,并计算相应的CAIM值;
Step6 在所有尝试性的添加完成后,采用CAIM值最高的方案;
Step7 若CAIM>GlobalCAIM或者k<T,则在Step6中用接受的方案更新D,并设置GlobalCAIM=CAIM,否则终止;
Step8 令k=k+1并前往Step5;
Output:离散化方案D。
在理想情况下,执行以上算法步骤能够得到k-1个断点和k个离散区间,其中任意一个区间中的元素均属于同一种类别,CAIM达到最大值:CAIM=M/k,此时已选定的k-1个断点为最佳离散断点。但是在实际应用中,CAIM值会随着离散断点数量的增加而增加,通常在达到局部最大化之后会开始减小。CAIM算法主要有2个缺陷:一是仅考虑区间中主导类与属性之间的依赖性,容易导致信息缺失,降低数据离散化的质量;二是最终形成的离散化方案所划分的区间数通常与类别数量很接近,容易使离散化过度,影响结果的准确度。
针对CAIM算法在应用中存在的不足,提出一种改进的离散化算法用于数据预处理。为解决CAIM算法信息缺失过多的问题,采用统一的标准衡量数据中各属性的重要程度,由属性的重要性决定对其进行离散化的顺序。为解决CAIM算法容易离散化过度的问题,根据粗糙集理论[13],引入属性分辨率控制离散化过程。
假设存在一个信息系统I=(U,A,V,F),其中U={x1,x2,…,xm}为论域,A为所有属性的集合,V为属性所有取值的集合,F为 U×A→V的映射。设C为条件属性集合,D为决策属性集合,如果A=C∪D且C∩D=∅,则将该系统称为决策表。
定义1:设x,y∈U,对P⊆A,θP是U上的一个等价关系,若满足xθPy⟺(∀p∈P)(fp(x)=fp(y)),则θP称为x和y的一个不可分辨关系。
定义2:U为论域,P和Q为U上的等价关系簇,Q的P正域记为POSP(Q),定义为:
(3)
定义3:设P⊆C,P将对象划分为n个类别{Y1,Y2,…,Yn},其近似精度为:
(4)
式(4)中,card表示集合的基数。近似精度γP描述了论域U的知识完备程度,反映了对决策表分类的合理性。
定义4:对于决策表I=(U,A,V,F)和条件属性集合C的子集B,反映任意条件属性a∈C相对于条件属性集合B对决策属性集合D依赖程度的属性重要度定义为:
sgf(a,B,D)=γB+{a}-γB
(5)
粗糙集理论认为知识就是区分事物的能力。对于论域U,如果所有对象都能被划入同一个等价类,那么该论域包含的知识是最少的;如果其中任意2个对象都能被区分开,那么该论域包含的知识是最多的。本节基于知识量的含义,引入属性分辨率概念。CAIM算法实施区间划分所依据的标准相当于粗糙集理论中的近似精度,本文中提出的改进算法在经典算法理念的基础上,增加了属性分辨率的控制作用,从而限制过度的离散化。属性分辨率推导过程如下。
若论域U中含有M个对象,其中任意2个对象都能被区分,则其近似精度为1,此时该论域中的可分辨对个数为:
(6)
这是理论上能达到的最大值。将可分辨对最大个数乘以K(1,1)即最大知识量,K(1,1)为常数,本节取值为2。
若论域U中含有M个对象,某属性将其划分为n个等价类,各个类别包含的对象数分别为m1,m2,…,mn,则该属性具有的知识量为:
(7)
属性分辨率是信息系统中某属性具有的知识量在整个信息系统最大知识量中占有的比例。计算方法为:
(8)
属性重要度对分类具有重要影响,但是CAIM算法的离散化过程是按照数据集中各属性的自然顺序进行的,未考虑属性重要程度的影响。本文中提出的改进算法是根据类别属性依赖冗余准则与类别属性依赖不确定性准则评价各属性的重要性并重新进行排序[14-15],通过更合理的离散化顺序减少信息损失。
由表1量子矩阵可知,属性F的值在区间[dr-1,dr]内并且属于类别Ci的联合估计概率为:
(9)
属性F的值属于类别Ci的边际估计概率pi+,以及属性F的值在区间[dr-1,dr]内的边际估计概率p+r分别为:
(10)
(11)
类别C和属性F的离散化方案D之间的类别属性交互信息定义为:
(12)
类别属性信息和香农熵分别定义为:
(13)
(14)
由式(12)、式(13)和式(14)得到类别属性依赖冗余度CAIR与类别属性依赖不确定度CAIU为:
(15)
(16)
类别属性依赖冗余度标准反映类别和离散属性之间的相互依赖性,CAIR值越大,类别与离散区间的相关性越好,与类的数量和连续属性取值的数量均无关。对类别属性依赖不确定性标准同样适用,但关系是相反的,即CAIU值越大,类别与离散区间的相关性越差。将2种指标结合得到属性重要性评价标准S为
S=CAIR·(1-CAIU)
(17)
式(17)中:S的值越大,表明对应的属性越重要,对其进行离散化的程度应相对小些。
算法步骤如下。
Input:包含T类M个对象的数据决策表;
Step1 根据式(17)计算每个连续属性Fi的属性重要度S;
Step2 按照S的值将表中所有连续属性从小到大重新排序;
对于每个连续属性Fi均执行以下步骤:
Step3 找到当前属性所有数值的最大值dn和最小值d0,根据式8计算连续属性Fi的初始分辨率Dro(F);
Step4 对Fi的所有数值升序排序,用最大值dn、最小值d0和集合中所有相邻数对的平均值初始化分界点集合B;
Step5 将初始离散化方案设置为D:{[d0,dn]},定义变量GlobalCAIM,将其初始化为0;
Step6 初始化k为1;
Step7 暂时从集合B中添加一个不在D中的内边界,并计算相应的CAIM值;
Step8 在所有尝试性的添加完成后,采用CAIM值最高的方案;
Step9 若CAIM>GlobalCAIM或者k<T,则在Step8中用接受的方案更新D,并设置GlobalCAIM=CAIM,否则终止;
Step10 令k=k+1并前往Step7;
Step11 返回离散化方案D;
Step12 根据式(8)计算连续属性Fi离散化后的分辨率Dr(F);
Step13 若Dr(F)<Dro(F)×S,则进一步拆分区间,否则结束;
Output:离散化后的属性值区间。
为检验所提出的改进CAIM算法是否具备优越性,开展了相关实验并分析了实验结果。实验目的是比较经典CAIM算法与改进CAIM算法对数据集中的连续属性进行离散化处理的效果。
鉴于本文中讨论的算法都是由对象的类别与各属性之间的依赖关系得到离散化方案,本实验所使用的是UCI数据库中的公开数据集,数据集的基本信息如表2所示。
表2 实验数据集
Table 2 Experiment data set
数据集类别数量属性数量对象数量iris34150wine313178breast29683vehicle418846
使用2种算法对数据集进行离散化处理,得到对应的8个离散数据集,随机选取其中80%的数据作为训练数据集,剩余的数据作为测试数据集,运用支持向量机对离散数据进行分类。采用“一对多”多分类,模型选用C-支持向量分类机,核函数选用高斯核。分类之前需要对各数据集的离散数据进行归一化处理,方法为
(18)
式(18)中:ai为任意离散数据;ni为归一化之后的数据,-1≤ni≤1。
归一化完成后开始分类,计算每个离散数据集用于分类的精度,结果如表3所示。
表3 分类精度
Table 3 Classification accuracy
处理算法原始数据集Iris/%Wine/%Breast/%Vehicle/%经典CAIM算法90.094.394.151.5改进CAIM算法96.791.497.871.6
从表3结果来看,用改进CAIM算法处理的数据集的分类精度总体较用经典CAIM算法处理的数据集高,表明改进算法造成的信息缺失较少,离散化效果较好。
为检验本文中所提方法的有效性,以某型装备为例进行实验。采集某型装备运行过程中的测试数据,提取部分数据建立数据决策表,包括产品类型、气温、加工温度、转速、扭矩等属性,数据决策表见表4。
表4 数据决策表
Table 4 Data decision table
产品类型气温/K加工温度/K转速/(r·min-1)扭矩/(N·m)刀具磨损/minL301.9310.41 37654.9126L303.9313.21 42248.0215M302.2310.91 77127.654H295.5305.91 59337.2197M296.3307.21 31968.324………………
原始数据除了包含离散型数据,还包含大量连续型数据,运用所提方法进行数据处理,得到表5所示离散化编码。
表5 离散化编码
Table 5 Discretization codings
属性编码0编码1…编码4产品类型LM…气温/K[0,295.3](295.3,296.8]…(303.75,304.5]加工温度/K[0,305.7](305.7,308.1]…(312.15,313.8]转速/(r·m-1)[0,1 168](1 168,1 379.5]…(2 097.5,2 886]扭矩/(N·m)[0,3.8](3.8,15.35]…(62.45,76.6]刀具磨损/min0(0,5.5]…(231.5,253]……………
根据离散化编码对原始数据进行处理,将其中的连续型数据转化为离散数据,离散化后的数据决策表如表6所示。
表6 离散化后的数据决策表
Table 6 Data decision table after discretization
产品类型气温/K加工温度/K转速/(r·min-1)扭矩/(N·m)刀具磨损/min033132044233133322211323111142………………
将关联规则挖掘这一重要的数据挖掘技术应用于离散化后的数据,采用了经典的Apriori算法[16]。根据关联规则基本原理,最小支持度和最小置信度是用户根据需要设定的2个阈值。最小支持度规定关联规则必须满足的最低重要程度,最小置信度规定关联规则必须满足的最低可靠程度。这些参数对算法的执行过程和结果具有重要影响,对于运行中产生的项集,若其支持度不低于最小支持度,则将其视为频繁项集;如果一条关联规则的支持度不低于最小支持度,且置信度不低于最小置信度,则称其为强关联规则。支持度阈值和置信度阈值的取值由用户自行决定,通常支持度阈值不宜设得过高,防止有用信息过多丢失。初次实验将支持度阈值设为10%,置信度阈值设为70%,由于装备发生质量特性退化,出现显性故障的情况相对较少,若希望发掘出更多与此类情况相关的知识,可动态调整参数设置多次实验。实验得到若干与装备寿命周期内的质量变化规律相关的规则,表7列出了部分强关联规则。
表7 强关联规则
Table 7 Strong association rules
序号关联规则支持度/%置信度/%1散热失效⇒气温(301.65,303.75][K]1.1196.522功率(1 154.4,3 514.3][W]⇒断电0.301003功率(9 023.9,1 0524.3][W]⇒断电0.6491.43
规则1表示装备散热失效时空气温度为301.65~303.75 K,说明散热失效这一故障模式与空气温度之间存在关联,装备运行时若气温处于301.65~303.75 K,需重点关注散热性能。
规则2表示装备运行功率为1 154.4~3 514.3 W时发生断电。
规则3表示装备运行功率为9 023.9~10 524.3 W时发生断电。结合规则2与规则3可知,该型装备不适合在3 514.3 W以下或9 023.9 W以上的功率下工作,否则容易断电,日常使用中应尽量避免功率过低或过高。
由以上分析说明本文所提方法是有效的。
1) 提出一种基于改进CAIM算法的装备质量数据离散化方法,用于装备质量信息分析的数据预处理,解决数据类型不适应数据挖掘方法的问题。
2) 在经典算法的基础上进行了改进,引入粗糙集理论和属性分辨率,实现了对过度离散化的限制;提出属性重要性评价方法,减少了数据离散化过程中的信息缺失。通过对比实验验证了本文中所提方法的优越性。
3) 运用提出的方法对数据集进行预处理,并对其进行关联规则挖掘,得到了反映装备寿命周期内质量变化规律的知识,验证了本文方法的有效性。
[1] 张錋,毛澍,李彦庆,等.利用数据挖掘技术改进TCP CUBIC拥塞控制算法[J].计算机应用研究,2018,35(10):3044-3047.
ZHANG Peng,MAO Shu,LI Yanqing,et al.Improved algorithm for TCP CUBIC congestion control based on data mining technology[J].Application Research of Computers,2018,35(10):3044-3047.
[2] 马可欣,李乔扬,李籽圻,等.数据挖掘在装备储存和使用过程中的应用研究[J].火力与指挥控制,2022,47(2):77-81.
MA Kexin,LI Qiaoyang,LI Ziqi,et al.Research on the application of data mining in the process of equipment storage and operation[J].Fire Control &Command Control,2022,47(2):77-81.
[3] 郭兴华,李伟,刘芳武,等.基于数据挖掘的船舶航线自动控制技术[J].舰船科学技术,2022,44(4):132-135.
GUO Xinghua,LI Wei,LIU Fangwu,et al.Research on automatic control technology of ship navigation line based on data mining[J].Ship Science and Technology,2022,44(4):132-135.
[4] WITTEN I,FRANK E,HALL M,et al.Data mining:practical machine learning tools and techniques,third edition (the morgan kaufmann series in data management systems)[J].Acm Sigmod Record,2011,31(1):76-77.
[5] ZOHURI B,MOSSAVAR-RAHMANI F,BEHGOUNIA F.Data warehousing,data mining,data modeling,and data analytics[M].Knowledge is Power in Four Dimensions:Models to Forecast Future Paradigm,2022:59-86.
[6] MARY V A.A Novel Approach to data discretization using clustering techniques in mining of high dimensional data[C]//Proc.of the Advances in Computer Science and Applications.ACSA-2016,2016:62-67.
[7] YUSA M,ERNAWATI E,SETIAWAN Y,et al.Handling numerical features on dataset using gauss density formula and data discretization toward nave bayes algorithm[C]//Proc.of the Sriwijaya International Conference on Information Technology and Its Applications (SICONIAN 2019).2020:467-473.
[8] BERMANIS A,SALHOV M,WOLF G,et al.Measure-based diffusion grid construction and high-dimensional data discretization[J].Applied and Computational Harmonic Analysis,2015,40(2):207-228.
[9] ZHENG B,LI Y F,FU G Z.Discretization algorithm based on particle swarm optimization and its application in attributes reduction for fault data[J].Journal of Shanghai Jiaotong University(Science),2018,23(5):101-105.
[10] 邓青,薛青,杜楠,等.装备模拟训练系统数据离散化[J].科学技术与工程,2021,21(27):11674-11680.
DENG Qing,XUE Qing,DU Nan,et al.Data discretization of equipment simulation training system[J].Science Technology and Engineering,2021,21( 27):11674-11680.
[11] 刘云,袁浩恒.数据挖掘中并行离散化数据准备优化[J].四川大学学报(自然科学版),2018,55(5):993-999.
LIU Yun,YUAN Haoheng.Parallel discretization of data preparation optimization in data mining[J].Journal of Sichuan University(Natural Science Edition),2018,55(5):993-999.
[12] KURGAN L A,CIOS K J.CAIM discretization algorithm[J].IEEE Transactions on Knowledge and Data Engineering,2004,16(2):145-153.
[13] LIU H,JIANG C,WANG M,et al.An improved data discretization algorithm based on rough sets theory[C]//Proc.of the 2020 IEEE Intl Conf on Parallel &Distributed Processing with Applications,Big Data &Cloud Computing,Sustainable Computing &Communications,Social Computing &Networking (ISPA/BDCloud/SocialCom/SustainCom).IEEE,2020:1432-1437.
[14] CANO A,NGUYEN D T,VENTURA S,et al.UR-CAIM:Improved CAIM discretization for unbalanced and balanced data[J].Soft Computing,2016,20(1):173-188.
[15] SINGH G K,MINZ S.Discretization using clustering and rough set theory[C]//Proc.of the 2007 International Conference on Computing:Theory and Applications (ICCTA’07).IEEE,2007:330-336.
[16] AGRAWAL R,SRIKANT R.Fast algorithm for mining association rules in large database[C]//Proc of the 20th International Conference on Very Large Databases,Santiago,Chile:Morgan Kaufmann Publisher,1994:487-499.