) z0 G) y. z2 v& I: N' e4. 支持向量机 d; C9 t5 |9 p* L; u; s 支持向量机(SVM)是一种统计机器学习分类算法,它是建立在由Vapnik和Chervonenkis提出的统计学习理论的VC维理论和结构风险最小化原理的基础上。结构化风险等于经验风险加上置信风险,而经验风险为分类器在给定训练样本上的误差,置信风险为分类器在未知类别的实例集上的分类误差。给定的训练样本的数量越多,泛化能力越有可能越好,则学习效果越有可能更好,此时置信风险越小。以前的学习算法目标是降低经验风险,要降低经验风险,则需要增加模型对训练样本的拟合度,即提高分类模型的复杂度,此时会导致VC维很高,泛化能力就差,置信风险就高,所以结构风险也高。而SVM算法则是以最小化结构风险为目标,这便是SVM的优势。SVM是最大化分类几何间隔来构建最优分类超平面来提高模型的泛化能力的。并且引入核函数来降低VC维的。支持向量机在对未知类别的实例进行分类时使用该实例落在超平面哪个区域所对应的类别作为该实例的类别的。7 D8 V+ o* Y. m$ f+ ^2 j
( e* N* s+ V! F- G8 v; [/ a* W
5. 基于关联规则的分类器 5 Y# a# B1 S* K 基于关联规则的分类方法是基于关联规则挖掘的,它类似于关联规则挖掘,使用最小支持度与置信度来构建关联规则集:Xs->C,只是不同于关联规则挖掘,Xs是属性值对集合,而C则是类别。它首先从训练集中构建所有满足最小支持度与最小置信度的关联规则;然后使用这些关联规则来进行分类,该类型常见的算法有CBA、ADT等。, R) J6 B3 l; k0 Z! F d5 I
3 q0 J' }& h" p r P2 Q
6. 集成学习2 o/ f; ^% k( {1 C7 v3 D
在实际应用中,单一的分类算法往往不能达到理想的分类效果,并且有时单一的分类器会导致过拟合。类似于三个臭皮匠率过一个诸葛亮的思想,使用多个分类器进行集成往往能够达到更好的分类效果。常见的集成方式包括Stacking、Bagging以及Boosting,常见的集成算法包括AdaBoost算法、GBDT、随机森林等。 # m2 K: D" J; |" ^- ^( a5 r3 `/ _9 b/ d% a$ H7 j- w
7. 人工神经网络 3 n [* D$ b5 S% ~+ l 人工神经网络模拟人脑的工作原理,使用节点之间的连接来模拟人脑中的神经元连接来进行信息处理的机器学习模型。人工神经网络包括输入层、隐含层、输出层。这些层以此使用不同的权值进行连接,每个节点(神经元)都有一个激励函数,用来模拟人脑神经元的抑制与兴奋。信息从输入层流通到输出层,并且使用训练集来学习网络中的权值,改善网络的效果。一般是使用梯度下降误差反向传播来对网络中的参数进行学习更新,以达到更多的误差,直到满足精度要求。在分类中,首先使用训练集样本对网络中的参数进行学习,然后从输入层输入未知实例的特征向量,输出层的输出便是其类别。常见的人工神经网络有:BP神经网络、RBF神经网络、循环神经网络、随机神经网络、竞争神经网络以及深度神经网络等。不同的神经网络用来处理不同的应用场景。 6 k. e4 Z0 U* a( {3 G1 \ L
不同的分类算法适应着不同的应用场景。在选择分类算法是,需要考虑它们的有缺点。比如特别关注分类准确度,那么可以分别使用上述的分类算法,然后使用交叉验证选择最好的分类算法。首先,要考虑模型的训练集有多大。如果训练集较小,那么高偏差/低方差的分类器(如贝叶斯分类器、SVM、集成学习)要比低偏差/高方差的分类器具有优势,因为后者容易过拟合。然而随着训练集的增大,低偏差/高方差的分类器将开始具有优势(它们拥有更低的渐进误差)。然后要根据不同分类器的特点去选择。朴素贝叶斯简单,容易理解,但是需要假设属性之间条件独立。决策树解释性强,能够处理属性之间的交叉关系,并且模型是非参数化的,但是器不支持在线学习,于是在新样本到来后,决策树需要进行重建;以及容易过拟合。K近邻容易理解,简单,但是其复杂度高,不适合实时性要求高的场景。支持向量机具有很好的理论支持,分类准确率高,对于线性不可分的情况,可以使用核函数进行映射到高维空间而线性可分,但是只适合训练集较小的情况,内存消耗大。基于规则的分类器容易解释,规则容易建立,但是可能效果不佳;集成学习容易达到较好的分类效果,并且容易避免过拟合,但是它需要训练多个不同的分类器;人工神经网络效果好,能够以任意精度去拟合非线性分类器,但是模型解释性不强,并且训练复杂,学习速度慢。 " f8 r; v0 ^+ u1 d 5 S8 x# G( c- M3 U4 P9 V( j回归模型: ) S2 Q, J/ b$ O: L 回归模型是指通过对数据进行统计分析,得到能够对数据进行拟合的模型,确定两种或两种以上变量间相互依赖的定量关系。它与分类的区别在于其结果是连续的。包括线性回归与非线性回归。线性回归模型是假设自变量与因变量之间是一种线性关系,即自变量最高次是一次,然后使用训练集对模型中的各个参数进行训练学习,得到自变量与因变量之间的定量关系方程,最后将未知结果的实例代入方程得到结果,常用的算法是线性回归算法、L2正则的岭回归与L1正则的Lasso回归。而非线性回归则相反,是假设自变量与因变量之间的关系是非线性的,即自变量的最高次是大于1的。常用的非线性回归算法有逻辑回归、softmax回归、神经网络、支持向量机以及CART等。若在回归结果上面加一层,则可以达到分类的效果。 ' A* F3 ?6 G% \( P0 R; C: i8 X) w* A( X% S6 y) i4 q+ B; m" `6 G
预测模型:/ M: c- y4 g4 I
预测模型包括分类模型与回归模型,两者的区别在于前者是对离散值进行预测,而后者是对连续值进行预测。同时,在与时间有关的预测模型中,是根据历史的状态预测将来一段时间内的状态。如设备故障预测等。常用的算法包括自回归积分滑动平均模型(ARIMA)、灰度预测模型、循环神经网络以及深度学习模型等。 . O( s# X# J% ~" G1 h+ S! T- E$ n 使用分类、回归模型对设备的故障进行预测以便在设备故障发生之前就进行维修,对设备采购需求、设备技改、设备剩余寿命进行预测,同时可以对设备的故障进行分类等。; U- h7 X7 Q7 N- p/ E2 U* h
$ d, W" B: E: Q# B聚类模型: J q% Y; z9 ^! S: y2 k
聚类分析是数据挖掘的重要研究内容与热点问题。其由来已久,国外可以追溯到亚里士多德时代。在中国,很久之前便流传着“物以类聚,人以群分”的聚类思想。从而可知聚类是一个非常古来的问题,它伴随着人类社会的产生与发展而不断深化。人们通过事物之间的区别性与相似性来认识与改造世界,将相似的对象聚集到一起。聚类便是按照某种相似性度量方法对一个集合进行划分成多个类簇,使得同一个类簇之间的相似性高,不同类簇之间不相似或者相似性低。同一类簇中的任意两个对象的相似性要大于不同类簇的任意两个对象。从学习的角度来看,聚类中事先并不需要知道每个对象所属的类别,即每个对象没有类标进行指导学习,也不知道每个簇的大小,而是根据对象之间的相似性来划分的,因此聚类分析属于一种无监督学习方法,又被称为“无先验知识学习方法”。其目的是在数据中寻找相似的分组结构和区分差异的对象结构。目前,聚类算法已经被广泛应用于科学与工程领域的方方面面,如在电子商务上进行消费群体划分与商品主题团活动等;在生物信息学上进行种群聚类,便于识别未知种群以及刻画种群结构等;在计算机视觉上应用聚类算法进行图像分割、模式识别与目标识别等;在社交网络上进行社区发现等;在自然语言处理中进行文本挖掘等。常见的聚类方式有以下几种:$ W% H% ^5 y3 N, z9 {3 o9 [+ `
8 p& X: X5 n2 e
1. 基于划分的聚类算法 ' X( J: y. C) j8 Y7 n 基于划分的聚类算法是指基于欧式距离将各个对象划分到对应的簇中。主要的代表算法有:K-means、K-mediods、FK-means、K-modes、K-prototype、EM算法、CLARANS等; " g, d5 @# v2 ~7 d6 k( e: r. z( O) ]. v6 u4 K% X d
2. 基于层次的聚类算法- ?. O3 a2 D" y$ C4 Y
基于层次的聚类算法可分为两大类,一种是自底向上,一种是自顶而下。自底向上策略是使用凝聚方法进行聚类,该方法最初是将每个点作为一个簇,使用某些准则对簇不断地进行合并,直到满足某个终止条件,便得到了聚类的所有簇;而自顶而下策略是使用分裂方法进行聚类,该方法最初是将所有点都作为一个簇,不断使用某些准则对簇进行分裂,直到所有对象都自成一个簇或者满足某个终止条件,这样便得到了各个簇,层次方法在每个过程中所得到的簇可以构成一棵聚类树。另外,可以在聚类过程中同时结合凝聚与分裂方法。层次凝聚的代表算法是AGNES(Agglomerative Nesting)算法,层次分裂的代表算法是DIANA(Divisive Analysis)算法,以及凝聚与分裂相结合的BIRCH、CURE等; # w+ M5 o9 K3 A: X: X3 z* }) [% m/ c3 l/ K1 f4 Y( F% r; b: H
3. 基于图论的聚类算法7 Z' o& C' O1 j
基于图论的聚类算法首先将样本对象构造成一张图,每个对象为图的一个顶点,对象之间的关系(相似度)作为图顶点之间的边值。然后,采用图论的方法对图进行划分而形成多个子图,每个子图便是一个簇,使得子图内部相似性大,子图间相似性小,称为图划分聚类。划分的准则有:最小割集(Minimum-cut)准则、率切(Ratio-cut)准则、规范切(Normalized-cut)准则、最小最大切(Min-max-cut)准则等,基于图论的聚类又称为谱聚类(Spectral Clustering),其基本思想是利用样本数据的相似矩阵(一般是Laplacian矩阵或Laplacian的变换矩阵)进行特征分解后得到的特征向量进行聚类。根据划分准则可以将谱聚类分为两大类:规范化谱聚类(Normalized Spectral Clustering)与非规范化谱聚类(Unnormalized Spectral Clustering),其主要区别在于输入的Laplacian矩阵是否进行了规范化,如最小割集与率切准则是非标准化准则,规范切与最小最大切准则则是规范化准则。在谱聚类算法中使用最广泛的是Ng与Jordan等人提出的基于规范切的谱聚类算法;# l) r2 h0 F0 E" J* l. a. ^
C, n8 O* I% \: F$ X2 Z4. 基于密度的聚类算法 4 [' W ]7 k: b3 n; j 基于密度聚类算法不是基于距离的而是基于密度的。对象的密度是指以这个对象为中心,单位体积内对象的个数。该类聚类算法使得类簇内的密度大,类簇间的密度小。这样,基于密度聚类便能克服基于距离的算法只能发现“圆形簇”的缺点。其根据对象集合构成的空间的密度差异,将每个类簇看成是:由低密度区域分割开的高密度区域。该类型的算法的一个主要方向是如何去对高低密度区域进行定义。常见的有DBSCAN、OPTICS、DENCLUE、CBFSAFODP等算法;: c W6 M, n* R! M; x
% f2 ~: H7 z( D- }3 P6 e5. 基于网格的聚类算法% J! }& `7 Y3 k# P+ X4 Q; M
基于网格的聚类算法,首先将数据空间划分成有限个单元的网格结构,每个单元作为基本处理单元,这种方法的一个突出优点便是处理速度快,它与数据本身的对象个数无关,只与把这些对象分成多少个网格有关,代表算法有STING、CLIQIUE等算法;6 M$ ]- u, G o9 u# g% p/ ]
( v4 f# U& x) m
6. 基于模型的聚类算法 ) y' ~6 c4 ~& l 基于模型聚类是假定每一个类簇都是一个模型,然后去寻找能够拟合这个模型的簇,每一个模型反映的是数据对象在样本空间中的密度分布,其潜在假定就是:目标数据集是由一系列的概率分布所决定的。基于模型主要有两类方法:基于统计学的方法与基于神经网络的方法。基于统计学方法有COBWeb雨Auto-class算法,基于神经网络的有CL、LVQ、SOFM等算法。 : @8 `/ E# i5 O2 [( P9 x+ _ 使用聚类算法对设备故障类型或者设备状态进行聚类,以便发现类似的设备故障以及设备状态等。 & u; _& Q1 J2 U8 ^- ]7 O* Z & v X; h2 |( m关联规则挖掘:1 W$ l8 s1 R& x0 q$ `
关联规则挖掘是指:给定一个数据集T,每条记录有多个特征,从这些记录中找出所有支持度大于等于最小支持度support>=min_support,置信度大于等于最小置信度confidence>=min_confidence的规则Xs->Ys。其形式话的定义:两个不相交的非空集合Xs、Ys,如果Xs->Ys,就说Xs->Ys是一条规则。例如,啤酒与尿布的故事,它已成为了关联规则挖掘的经典案例,{啤酒}->{尿布}就是一条关联规则。支持度support的定义为:support{Xs->Ys}为集合Xs与集合Ys中的项在同一条记录中出现的次数除以总记录的个数。置信度confidence的定义为:confidence{Xs->Ys}为集合Xs与集合Ys中的项在同一条记录中出现的次数除以集合Xs中的项共同出现的次数。支持度和置信度越高,则说明规则越强。关联规则挖掘就是挖掘出具有一定强度的规则集合,即该规则集合中的每条规则的支持度要大于等于最小支持度,置信度要大于等于最小置信度。常见的关键规则挖掘算法有Apriori、FP-growth、GSpan等算法。 ! F: R6 d& K. I$ N5 t
我们可以使用关联规则挖掘算法来对设备故障进行监控与预测,以便找到故障发生的关键原因与因素。2 y. m! z" D! j S+ g9 d
/ N9 ]$ J1 c) n9 H
- F3 l9 @) m6 ^* d& Z. i