陳 揚,劉勤明,梁耀旭
(上海理工大學(xué) 管理學(xué)院,上海 200093)
隨著我國科技水平的飛速發(fā)展,我國對設(shè)備的健康壽命預(yù)測準確度要求越來越高,很多關(guān)鍵設(shè)備一旦在服役期間出現(xiàn)事故很有可能會造成大量人員傷亡或巨大經(jīng)濟損失[1]。因此,及時準確地檢查出設(shè)備的健康狀況問題至關(guān)重要。
隨著機器學(xué)習(xí)和深度學(xué)習(xí)的飛速發(fā)展,越來越多的人工智能技術(shù)開始普及。其中,機器學(xué)習(xí)中的代表算法支持向量機(support vector machine,SVM)、神經(jīng)網(wǎng)絡(luò)(neural networks,NNs)、隨機森林(random forests,RF)和K 鄰近值算法被越來越多地運用到實際工業(yè)生產(chǎn)中。在機器學(xué)習(xí)與深度學(xué)習(xí)算法的實際應(yīng)用方面,劉文溢等[2]提出了一種基于隱馬爾可夫鏈的設(shè)備壽命預(yù)測模型,并通過算例驗證了該算法在實際工業(yè)壽命預(yù)測領(lǐng)域的可行性。曹正志等[3]提出卷積神經(jīng)網(wǎng)絡(luò)與雙向長短期記憶網(wǎng)絡(luò)相結(jié)合預(yù)測設(shè)備健康數(shù)據(jù)特征發(fā)展趨勢,并通過實驗證明了該方法的有效性。但是,現(xiàn)階段越來越多的算法只面向大規(guī)模數(shù)據(jù),在小樣本不平衡數(shù)據(jù)下很多算法不再適用,因此,發(fā)展面向小樣本不平衡數(shù)據(jù)的算法存在必要性[4]。
SMOTE (synthetic minority oversampling technique)算法是目前適用較多的合成少數(shù)類過采樣技術(shù),它是基于隨機過采樣算法的一種改進方案。由于隨機過采樣采取簡單復(fù)制樣本的策略來增加少數(shù)類樣本,這樣容易產(chǎn)生模型過擬合的問題,即使得模型學(xué)習(xí)到的信息過于特別而不夠泛化。SMOTE 算法的基本思想是對少數(shù)類樣本進行分析,并根據(jù)少數(shù)類樣本人工合成新樣本添加到數(shù)據(jù)集中。SMOTE 算法本身也存在很多問題,首先鄰近值的選擇難以確定,同時面對異常值以及不平衡數(shù)據(jù)分布的時候表現(xiàn)并不理想。針對以上問題,Han 等[5]提出了一種Borderline-SMOTE 算法,目前這也是最廣為人接受的改進算法。楊賽華等[6]在此基礎(chǔ)上提出了一種BN-SMOTE 改進算法,利用最近鄰思想構(gòu)建處于決策邊界附近的多數(shù)類樣本集,再一次確定邊界區(qū)域難以學(xué)習(xí)的少數(shù)類樣本點從而構(gòu)建一個新的少數(shù)類樣本集。楊毅等[7]在Han 的研究基礎(chǔ)上提出了一種RB-SMOTE 的改進模型,通過合成不平衡率不一的多個新訓(xùn)練樣本,組成相應(yīng)的多個基分類器,再采用投票的方式對測試樣本進行分類。Bansal 等[8]提出了SMOTE-M算法規(guī)避數(shù)據(jù)不平衡帶來的問題。王超學(xué)等[9]提出了一種GA-SMOTE 算法提高SMOTE 面對不平衡數(shù)據(jù)集的分類性能。以上幾種算法均對SMOTE 算法進行不同程度的改進,但是,面對多數(shù)類樣本中存在的噪聲的問題并沒有進行有效處理,因此,以上幾種改進算法并不能很好地對已有數(shù)據(jù)進行優(yōu)化。
在此基礎(chǔ)上,面對存在問題的數(shù)據(jù),傳統(tǒng)KNN 算法也無法處理不平衡數(shù)據(jù)和噪聲問題,因此,不能直接應(yīng)用于大多數(shù)情況下的設(shè)備壽命數(shù)據(jù)處理。同時,當不同種類樣本點分布較為緊密時,KNN 算法難以對數(shù)據(jù)進行有效分類。針對此情況,本文提出了一種ISMOTE 算法(Improvement-SMOTE),通過改進SMOTE 算法克服了傳統(tǒng)SMOTE 算法存在的問題,使得改進后的新增數(shù)據(jù)不再出現(xiàn)邊緣化、存在異常值、分類結(jié)果不夠泛化等弊端。由于傳統(tǒng)KNN 算法無法面向小樣本不平衡以及存在異常值的數(shù)據(jù),利用ISMOTE 算法改進后的數(shù)據(jù)剛好可以彌補KNN 算法的不足,使得KNN 算法可以應(yīng)用在存在小樣本不平衡數(shù)據(jù)的設(shè)備壽命預(yù)測領(lǐng)域。其次,在實際工業(yè)生產(chǎn)中,出現(xiàn)問題的數(shù)據(jù)有時會和正常設(shè)備的數(shù)據(jù)緊密分布,當不同種類的數(shù)據(jù)分布較為緊密時,KNN 算法的分類效果并不好。針對此問題,本文提出了一種投票式KNN (Voting-KNN,VKNN)算法。根據(jù)測試集數(shù)據(jù)分布以及數(shù)據(jù)種類引入PSO(particle swarm optimization)尋求每個設(shè)備狀態(tài)數(shù)據(jù)分布的中心點,隨后通過計算同簇樣本點到中心點的歐式距離均值建立分隔閾值,對到中心點距離小于的數(shù)據(jù)點利用“投票法”判斷數(shù)據(jù)種類,拋棄傳統(tǒng)KNN 算法計算k個距離最近樣本點從而判斷樣本種類的法則,規(guī)避數(shù)據(jù)混淆引起的誤差。優(yōu)化后的數(shù)據(jù)通過改進KNN 算法在準確分析設(shè)備健康狀態(tài)的同時也可以有效預(yù)測設(shè)備未來健康發(fā)展趨勢。
目前機器學(xué)習(xí)領(lǐng)域越來越多的算法只適用于面向大量有效數(shù)據(jù)的情況。而面向小樣本不平衡數(shù)據(jù),誤用傳統(tǒng)機器學(xué)習(xí)算法很有可能會導(dǎo)致人們對設(shè)備的壽命產(chǎn)生錯誤預(yù)測從而造成巨大的經(jīng)濟損失[10],因此,在數(shù)據(jù)不足的情況下可以通過數(shù)據(jù)增強提高樣本質(zhì)量[11]。面對傳統(tǒng)KNN 算法無法處理不平衡和異常數(shù)據(jù)的情況,本文采用改進SMOTE 算法(ISMOTE)。ISMOTE 算法首先對數(shù)據(jù)進行新增處理,采用類似k鄰近值原理剔除分布較為分散的異常數(shù)據(jù),在保持數(shù)據(jù)特征的前提下人工合成符合條件的數(shù)據(jù),解決了傳統(tǒng)SMOTE算法新增樣本出現(xiàn)新增樣本點質(zhì)量低、容易邊界模糊以及新增后數(shù)據(jù)分布出現(xiàn)異常的問題。最后,通過VKNN 算法對優(yōu)化數(shù)據(jù)進行分類,模型如圖1 所示。
圖1 基于ISMOTE-VKNN 模型的設(shè)備數(shù)據(jù)分析流程Fig.1 Equipment data analysis process based on the ISMOTE-VKNN model
SMOTE 即合成少數(shù)類過采樣技術(shù)[12],它是基于隨機過采樣算法的一種改進方案。由于隨機過采樣采取簡單復(fù)制樣本的策略來增加少數(shù)類樣本,SMOTE 算法的基本思想是對少數(shù)類樣本進行分析并根據(jù)少數(shù)類樣本人工合成新樣本添加到數(shù)據(jù)集中,算法流程如下:
a.對于少數(shù)類中每一個樣本x,以歐氏距離為標準計算它到少數(shù)類樣本集中所有樣本的距離,得到其k個近鄰。
b.根據(jù)樣本不平衡比例設(shè)置一個采樣比例以確定采樣倍率N,對于每一個少數(shù)類樣本x,從其k個近鄰中隨機選擇若干個樣本,假設(shè)選擇的近鄰為xn。
c.對于每一個隨機選出的近鄰xn,分別與原樣本按照如下的公式構(gòu)建新的樣本。
很顯然,由于設(shè)備會受到運行環(huán)境以及狀況等一系列條件的影響,從設(shè)備中提取的數(shù)據(jù)可能并不能直接用于SMOTE 算法進行優(yōu)化。傳統(tǒng)SMOTE 算法存在很多局限性,根樣本或輔助樣本中存在噪聲可能會導(dǎo)致新增樣本出現(xiàn)質(zhì)量問題。在特殊情況下新增樣本處于多數(shù)類與少數(shù)類樣本的邊界區(qū)域會導(dǎo)致數(shù)據(jù)集出現(xiàn)邊界模糊的情況,而在此情況下使用傳統(tǒng)SMOTE 算法同樣會加重原先就存在的問題。因此,本文提出了一種改進SMOTE(ISMOTE)算法,該改進算法可以對以上問題進行規(guī)避,從而可以在數(shù)據(jù)存在問題的情況下對設(shè)備健康狀況進行評估。
面對存在異常值點,也就是噪聲的問題。這里的噪聲是指出現(xiàn)在多數(shù)類樣本群中的孤立的少數(shù)類樣本,在設(shè)備數(shù)據(jù)方面表現(xiàn)為數(shù)據(jù)看起來正常但是實際上已經(jīng)因為某些原因無法正常運行的那一類。針對這種情況,本文選擇設(shè)置噪聲比例β對每個少數(shù)點進行評估。噪聲比例β的表達式為
式中:NMin為k鄰近值中少數(shù)類樣本個數(shù);NMaj為多數(shù)類樣本個數(shù)。
設(shè)置噪聲標準α,x為 樣本集。
若β>α,按照如下公式構(gòu)建新樣本:
否則刪除該樣本點。
該改進法則的核心思想為通過噪聲比例判斷某種類樣本集中是否出現(xiàn)一定數(shù)量的其他種類樣本,如果出現(xiàn)頻率低于所設(shè)置的閾值,則將那些出現(xiàn)的點視為噪聲并刪除。此過程是在保留樣本分布特征的情況下對數(shù)據(jù)集進行優(yōu)化,并不會影響后續(xù)步驟。
而當設(shè)備數(shù)據(jù)中正常數(shù)據(jù)與異常數(shù)據(jù)過于接近的情況發(fā)生的時候,針對傳統(tǒng)SMOTE 算法中可能出現(xiàn)的邊界模糊的情況,本文通過計算每個少數(shù)類樣本點與周圍最近的多數(shù)類樣本點的歐式距離,通過與設(shè)置的閾值進行比較從而選擇性地對部分少數(shù)類樣本點進行新增樣本的處理,歐氏距離的表達式為
該改進算法不僅僅能處理二維數(shù)據(jù),針對以多分類為目標的問題也可以優(yōu)化多維數(shù)據(jù)集。
為了防止少數(shù)類樣本點和多數(shù)類樣本點在新增過程中分布過于接近,需要設(shè)置閾值dmin,這里設(shè)樣本點計算出的實際距離為d。
設(shè)d<dmin的樣本點集為xi,則剩下的樣本點集為
同樣地,在特殊情況下多數(shù)類樣本和少數(shù)類樣本本身的分布可能就存在問題,即健康的設(shè)備數(shù)據(jù)和不健康的設(shè)備數(shù)據(jù)總是雜糅或是過于稀疏,這也會直接導(dǎo)致優(yōu)化后的新增數(shù)據(jù)不夠泛化。部分區(qū)域過于密集或是過于稀疏都會導(dǎo)致新增樣本之后加重本身就存在的問題。一旦在這種情況下強行利用SMOTE 算法進行新增處理可能會導(dǎo)致最后利用機器學(xué)習(xí)算法分類時候準確性不足。因此,可以采用類似B-SMOTE 算法進行處理。
本文根據(jù)Han 提出的Borderline-SMOTE 算法的啟發(fā)采用如下算法進行處理,這里計算少數(shù)類樣本與周圍同類k鄰近值的距離d并通過設(shè)置閾值m進行比較。根據(jù)比較的結(jié)果數(shù)量將樣本點分為以下幾類:
設(shè)樣本點x∈xMin
a.若對于任意x,都有d<m,則x=xn
b.若對于任意x,至多50%樣本的d<m,則x=xh,從中隨機抽取部分樣本點xi進行新增處理,xi∈xh,抽取比例為25%~50%
c.若對于任意x,大于50%樣本的d>m,則x=xu,采用傳統(tǒng)SMOTE 算法新增樣本。
隨后按照以下步驟對不同樣本種類的樣本點x進行處理:
忽略xn,
利用此方法可以解決數(shù)據(jù)本身存在的分布不均勻問題,同時將此方法與上述方法進行結(jié)合可以有效地對原本存在諸多問題的數(shù)據(jù)進行處理,將其變?yōu)榭梢员籏NN 算法進行運算的數(shù)據(jù)。同時,優(yōu)化后的數(shù)據(jù)可以規(guī)避傳統(tǒng)KNN 算法中可能帶來的種種問題。
ISMOTE 算法流程如圖2 所示。
圖2 ISMOTE 算法流程圖Fig.2 Flow chart of ISMOTE algorithm
該改進算法不僅最大程度保留了樣本集的分布特征,同時也在刪除噪聲、消除邊界模糊、優(yōu)化少數(shù)類樣本分布方面對數(shù)據(jù)集進行了一定程度的優(yōu)化,彌補了傳統(tǒng)SMOTE 與B-SMOTE 的不足,使得經(jīng)過該算法優(yōu)化處理后的數(shù)據(jù)能夠被目前大部分機器學(xué)習(xí)算法計算。
KNN(K-Nearest Neighbor)法即k最鄰近法,最初由 Cover 和Hart 于1968 年提出,是一個理論上比較成熟的方法,也是最簡單的機器學(xué)習(xí)算法之一。該方法的思路非常簡單直觀:如果一個樣本在特征空間中的k個最相似(即特征空間中最鄰近)的樣本中的大多數(shù)屬于某一個類別,則該樣本也屬于這個類別。該方法在定類決策上只依據(jù)最鄰近的一個或者幾個樣本的類別來決定待分樣本所屬的類別。KNN 算法的核心思想是,如果一個樣本在特征空間中的k個最相鄰的樣本中的大多數(shù)屬于某一個類別,則該樣本也屬于這個類別,并具有這個類別上樣本的特性。該方法在確定分類決策上只依據(jù)最鄰近的一個或者幾個樣本的類別來決定待分樣本所屬的類別。KNN 方法在類別決策時,只與極少量的相鄰樣本有關(guān)。
在KNN 算法理論方面,Yadav 等[13]比較了KNN 算法與其他機器學(xué)習(xí)算法在處理分類問題時的準確度,并從數(shù)學(xué)角度證明了KNN 算法擁有不錯的分類能力。Xu 等[14]將KNN 與超球結(jié)構(gòu)相結(jié)合,使得改進后的KNN-MVHM 算法能有效處理不均衡數(shù)據(jù),規(guī)避了傳統(tǒng)KNN 算法的局限性。殷小舟[15]針對支持向量機超平面附近的測試樣本分類錯誤的問題,改進了將支持向量機分類和k近鄰分類相結(jié)合的方法,形成了一種新的分類器。在分類階段計算待識別樣本和最優(yōu)分類超平面的距離時,如果距離差大于給定閾值,可直接應(yīng)用支持向量機分類,否則用最佳距離k近鄰分類。李歡等[16]提出了一種有效的k近鄰分類文本分類算法,即SPSOKNN 算法,該算法利用粒子群優(yōu)化方法的隨機搜索能力在訓(xùn)練集中隨機搜索,在搜索k近鄰的過程中,粒子群跳躍式移動,掠過大量不可能成為k近鄰的文檔向量,并且去除了粒子群進化過程中粒子速度的影響,從而可以更快速地找到測試樣本的k個近鄰。以上算法都對KNN 算法進行了改進,提高了分類精度以及分類速率,但是卻沒有解決KNN 算法數(shù)據(jù)分布重疊導(dǎo)致分類誤差較大以及無法面向不平衡數(shù)據(jù)的問題,因此,上述算法在預(yù)測設(shè)備健康狀態(tài)時并不適用。
本文在面向給定數(shù)據(jù)時,首先利用前文ISMOTE算法對數(shù)據(jù)本身進行優(yōu)化,將優(yōu)化后的數(shù)據(jù)傳遞給KNN。優(yōu)化后的數(shù)據(jù)剛好規(guī)避了傳統(tǒng)KNN 算法最大的幾個問題,能夠更加有效地對數(shù)據(jù)進行計算。
在傳統(tǒng)KNN 算法中,k的取值一直是一個比較困擾的問題。如果k值過低可能會出現(xiàn)過擬合的問題,不能很好地泛化。如果k值過高可能使得模型過于泛化,出現(xiàn)欠擬合的問題[17]。針對此問題,本文不再使用KNN 算法中根據(jù)k近鄰樣本點種類作為分類依據(jù)的原則。通過利用粒子群算法尋優(yōu)速度快的特點首先對訓(xùn)練集樣本點進行中心點搜索,隨后計算同簇樣本點到中心點距離均值作為分隔閾值對樣本點進行分隔,最后對分隔后的樣本點進行種類“投票”處理并輸出分類結(jié)果。在粒子群算法中,個體和群體間需要不斷交互信息從而尋找最優(yōu)解。在此過程中,粒子通過式(10)和式(11)不斷更新自己的速度Vid和位置Xid。
式中:ω為慣性因子;C1與C2為加速常數(shù),一般取2;Pid為第i個變量的個體極值的第d維度;Pgd表示全局最優(yōu)解的第d維度。
當滿足最大迭代次數(shù)時迭代停止并輸出最優(yōu)解。
a.樣本點集合為
b.建立適應(yīng)度函數(shù)為
搜尋到的樣本點xn中心坐標為(xn,yn)。
c.根據(jù)歐氏距離式(6)對同簇樣本點到該種類樣本分布中心進行計算,計算出的距離合集D={d1,d2,···,dm},根據(jù)式(12)計算同簇樣本到中心點距離均值
d.若di<,則納入隔離樣本集Dnew。
e.判斷Dnew中多數(shù)類樣本種類并作為最終輸出結(jié)果。
相比傳統(tǒng)KNN,該算法克服了因為k取值不同而會出現(xiàn)不同分類結(jié)果的問題,針對相同數(shù)據(jù)集VKNN 算法每次分類結(jié)果都相同。同時,通過引入粒子群算法可以最大程度提升VKNN 算法的計算效率,避免在尋找同簇樣本距離均值過程中花費太多計算時間。在實際生產(chǎn)過程中,盡可能減少計算時間與盡可能提高算法計算效率無疑會給企業(yè)生產(chǎn)效率帶來巨大提升。
基于ISMOTE-VKNN 算法流程如下:
a.收集設(shè)備狀態(tài)的數(shù)據(jù),將其數(shù)據(jù)進行預(yù)處理后按照2∶1 的比例分為訓(xùn)練集與測試集。
b.根據(jù)企業(yè)要求確定噪聲標準α,計算每個少數(shù)類樣本的噪聲系數(shù)β并進行比較,從而選擇合適的樣本點。
c.設(shè)置距離閾值dmin并計算少數(shù)類樣本距離d進行比較,選擇合適的樣本點。
d.通過計算k鄰近值并判斷樣本狀態(tài)選擇不同的新增方式。
f.分隔樣本點并生成Dnew。
g.進行投票,輸出分類結(jié)果。
ISMOTE-VKNN 流程圖如圖3 所示。
圖3 ISMOTE-VKNN 算法分析流程圖Fig.3 Flow chart of ISMOTE-VKNN algorithm analysis
使用美國卡特彼勒公司液壓泵與凌津灘水電站8 號機水導(dǎo)軸承狀態(tài)數(shù)據(jù)進行實驗,通過該數(shù)據(jù)以驗證SMOTE_KNN 算法的有效性。液壓泵與水導(dǎo)機器的故障一般是以軸承振動的方式表現(xiàn)出來,液壓泵實驗每隔10 min 進行一次約1 min 的設(shè)備振動數(shù)據(jù)收集,隨后對收集的數(shù)據(jù)進行特征提取以達到能夠被本文模型處理的要求。水導(dǎo)軸承實驗通過記錄不同負荷下的軸承橫向與縱向振動數(shù)據(jù)以分析軸承的壽命情況。本文將液壓泵前2/3 的數(shù)據(jù)用于訓(xùn)練,用剩下1/3 的數(shù)據(jù)進行測試以驗證模型的有效性。同時針對水導(dǎo)軸承數(shù)據(jù)采用同樣的方式進行模型驗證,具體步驟和前者相同并省略。仿真環(huán)境為Anaconda 3.0。
為了表現(xiàn)出ISMOTE_KNN 算法的優(yōu)越性,本文將初始的多維數(shù)據(jù)進行拆分處理,即將原本的多維數(shù)據(jù)分為n個二維數(shù)據(jù)并挑選其中一組進行驗證。使用CH1-1 與CH1-9 振動數(shù)據(jù)進行模擬。圖4 為進行處理后的二維振動數(shù)據(jù)點位分布。
圖4 振動數(shù)據(jù)點位分布Fig.4 Distribution of vibration data points
從圖4 中可以看出,少數(shù)類樣本中存在孤立于多數(shù)類樣本中的異常值點。其中,黑色點為振動數(shù)據(jù)存在異常的點,橙色點為狀況健康的點,黑色類為少數(shù)類樣本,橙色類為多數(shù)類樣本。該數(shù)據(jù)無法直接用傳統(tǒng)KNN 算法進行處理,如果直接使用SMOTE 算法進行處理會出現(xiàn)上文描述的大量問題,因此,需要使用ISMOTE 對數(shù)據(jù)進行優(yōu)化以達到KNN 算法使用的標準。
通過應(yīng)用貝葉斯后驗概率[18]計算得出k取4,通過對少數(shù)類樣本計算噪聲比例并設(shè)置閾值可以將其中的異常值點找出。這里噪聲比例α取0.1。通過對所有少數(shù)類樣本點計算噪聲比例β,得到如表1 所示的結(jié)果。
表1 β 與閾值α 的比較結(jié)果Tab.1 Comparison results for β and threshold α
很明顯存在一個異常值點,該點β值為0,將其剔除。
即使將異常值點剔除,剩余的少數(shù)類樣本依然存在與多數(shù)類樣本十分接近的點。因此,將dmin設(shè)置為0.5,忽略容易導(dǎo)致邊界模糊的點。
利用ISMOTE_KNN 模型設(shè)置距離閾值m=0.5,k=4,同時通過計算可得模型中的少數(shù)類樣本點均為半正常樣本,隨機性地對符合新增要求的樣本點進行新增處理。將數(shù)據(jù)按照ISMOTE 算法進行處理可得到新增樣本數(shù)據(jù)如圖5 所示。
圖5 ISMOTE 算法處理后的數(shù)據(jù)分布Fig.5 Data distribution after ISMOTE algorithm processing
在新增樣本點過程中,為了保證ISMOTE 算法不會影響原始數(shù)據(jù)的特征,提取原始數(shù)據(jù)與新增數(shù)據(jù)的異常點擬合壽命曲線如圖6 所示。
圖6 原始異常數(shù)據(jù)點擬合曲線Fig.6 Fitting curve of original abnormal data points
如圖7 所示,在進行ISMOTE 新增處理后的數(shù)據(jù)幾乎不會影響原始數(shù)據(jù)點的壽命擬合曲線,因此,使用ISMOTE 算法優(yōu)化數(shù)據(jù)是有效、可行的。
圖7 ISMOTE 異常數(shù)據(jù)點擬合曲線Fig.7 Fitting curve of ISMOTE abnormal data points
在ISMOTE 的基礎(chǔ)上引入VKNN 算法。其中,在PSO 算法中,經(jīng)過實驗確定 ωini=0.9,ωend=0.4,C1=C2=1.5,最大迭代次數(shù)為100。
最終PSO 輸出的同簇樣本中心分別為(3.12,6.45)與(2.29,6.16)。根據(jù)式(12)計算出=0.373,=0.411。由此對樣本點進行分割處理,對處理后的數(shù)據(jù)種類進行分類并利用“投票”選擇最終結(jié)果。
用12 組測試數(shù)據(jù)利用VKNN 算法對設(shè)備健康狀況處理結(jié)果如表2 所示。
表2 ISMOTE_VKNN 設(shè)備數(shù)據(jù)預(yù)測結(jié)果Tab.2 Prediction results of equipment data based on ISMOTE_VKNN
如果不使用ISMOTE_VKNN 算法,直接進行KNN 算法計算結(jié)果如表3 所示。
表3 KNN 設(shè)備數(shù)據(jù)預(yù)測結(jié)果Tab.3 Equipment data prediction results based on VKNN
通過比對可以表明,相比傳統(tǒng)KNN 算法,ISMOTE_VKNN 算法擁有更高的準確性,并且2 種算法的耗時在面對小樣本數(shù)據(jù)的時候都很短,在時間上也繼承了KNN 算法的快速性。
同時為了保證ISMOTE_KNN 算法的優(yōu)越性,而利用同樣的測試集與訓(xùn)練集,在ISMOTE 優(yōu)化數(shù)據(jù)的基礎(chǔ)上利用非線性SVM[19-20]以及僅僅對原始數(shù)據(jù)用非線性SVM 進行分類效果如表4 所示。
表4 SVM 與ISMOTE_SVM 處理結(jié)果Tab.4 SVM and ISMOTE_ SVM processing results
由于測試集樣本容量較小,所以,ISMOTE 算法的優(yōu)越性主要體現(xiàn)在了容量相對較大的訓(xùn)練集上。
將以上結(jié)果進行整合如表5 所示。
表5 液壓泵各算法正確率展示表Tab.5 The correct rate of each algorithm of hydraulic pump
可以看出,在液壓泵小樣本情況下雖然訓(xùn)練集錯誤率已經(jīng)明顯降低,但是,由于測試集的錯誤率偏高,幾乎接近直接使用KNN 算法進行計算的錯誤率,由此可以看出,ISMOTE_KNN 算法在小樣本數(shù)據(jù)處理中的優(yōu)越性。
利用同樣的方式對水導(dǎo)軸承的振動數(shù)據(jù)進行分析和計算,得到的結(jié)果如表6 所示。
表6 水導(dǎo)軸承各算法正確率展示表Tab.6 Accuracy display table of hydraulic guide bearing
通過國內(nèi)的水導(dǎo)軸承振動數(shù)據(jù)分析可知,ISMOTE_KNN 算法在實際應(yīng)用中相比傳統(tǒng)機器學(xué)習(xí)算法以及其他聯(lián)合算法擁有更好的分類效果,即便是少數(shù)類樣本容量不足也能夠?qū)ζ鋽?shù)據(jù)進行處理。相比大多數(shù)情況下使用的SVM,本文的算法能夠更加準確地對液壓泵狀態(tài)進行分析從而淘汰那些狀態(tài)異常的設(shè)備。
在實際工業(yè)中,設(shè)備振動方均根值RMS能夠體現(xiàn)設(shè)備健康狀況,因此,本文通過對設(shè)備訓(xùn)練集與測試集數(shù)據(jù)點的RMS數(shù)值進行觀察,觀察結(jié)果可作為分析設(shè)備健康狀況的依據(jù)。本文數(shù)據(jù)點的RMS數(shù)據(jù)計算結(jié)果如圖8 所示。
圖8 設(shè)備數(shù)據(jù)點RMS 監(jiān)視數(shù)據(jù)Fig.8 RMS monitoring data of equipment data points
根據(jù)設(shè)備的健康狀況以及對數(shù)據(jù)點的分析,當RMS數(shù)據(jù)區(qū)趨于7 及以上的時候設(shè)備健康狀況將會導(dǎo)致設(shè)備無法完成預(yù)計的生產(chǎn)目標。因此,本文著重對7 及以上RMS的數(shù)據(jù)點進行分析和預(yù)估并擬合數(shù)據(jù)線性趨勢。其中,設(shè)備真實RMS數(shù)據(jù)值與預(yù)測RMS數(shù)據(jù)對比圖如圖9 所示。
圖9 RMS 實際值與測試值比較圖Fig.9 Comparisons of RMS actual value and test value
同樣地,對軸承的振動數(shù)據(jù)進行分析并擬合出機器剩余壽命RUL預(yù)測曲線如圖10 所示。
圖10 水導(dǎo)軸承RUL 實際值與測試值比較圖Fig.10 Comparison between actual RUL value and test value of hydraulic guide bearing
通過觀察2 個設(shè)備真實RMS數(shù)據(jù)線性擬合結(jié)果與本文算法的預(yù)測擬合結(jié)果可知,兩者具有高度的相似性,因而可以證明本文提出的算法在數(shù)據(jù)處理中不僅可以保證不會破壞數(shù)據(jù)的特征,同時也可以準確分析出設(shè)備健康狀況以及預(yù)測設(shè)備未來壽命發(fā)展趨勢,進而可以避免實際工業(yè)中因為設(shè)備健康問題而造成的經(jīng)濟損失。
通過引入SMOTE 算法彌補KNN 算法存在的局限性,同時針對傳統(tǒng)SMOTE 算法的不足進行改進,通過設(shè)置噪聲比例β消除存在于多數(shù)類樣本附近的少數(shù)類樣本噪聲,再通過設(shè)置閾值dmin忽略那些新增后容易導(dǎo)致邊界模糊的少數(shù)類樣本點,選擇性地對部分優(yōu)秀的樣本點進行新增處理,提高了新增樣本點的質(zhì)量,規(guī)避了傳統(tǒng)SMOTE 算法存在的局限性。最后通過PSO 尋找同簇樣本中心,建立分隔閾值對樣本點進行裁剪并投票,規(guī)避KNN 算法面對交錯數(shù)據(jù)無法準確分類的問題。仿真部分比較了各種算法下液壓泵與水導(dǎo)軸承的健康狀況分析準確度。算例表明,本文提出的聯(lián)合算法相比傳統(tǒng)機器學(xué)習(xí)算法具有更高的準確性。在面對大規(guī)模數(shù)據(jù)時,當數(shù)據(jù)本身呈現(xiàn)出緊密離散型分布特點并且樣本分布毫無規(guī)律時,本文提出的改進算法由于法則限制會出現(xiàn)較大偏差,在此情況下可以適當拋棄ISMOTE 并需要對后續(xù)的機器學(xué)習(xí)改進算法進行進一步提升。在保持計算精度要求的前提下可以對VKNN 算法進行集成處理輸出強學(xué)習(xí)器Adaboost。為了保證該集成算法的計算速率,后續(xù)可以從樣本權(quán)值與弱學(xué)習(xí)器權(quán)值方面對Adaboost 進行進一步優(yōu)化以滿足計算速率要求。同時為了適應(yīng)實際工業(yè)中多維數(shù)據(jù)的情況,本文提出的算法在未來改進后應(yīng)盡可能實現(xiàn)同時對多個因變量進行分析的功能,規(guī)避分類討論的局限性,由此滿足實際工業(yè)中的各種需求。