王美林,劉金剛
(廣東工業(yè)大學信息工程學院,廣州510006)
近年來,隨著中國制造業(yè)的轉型升級[1],國內(nèi)眾多制造型企業(yè)開始沿著制造業(yè)信息化、智能方向發(fā)展,將現(xiàn)代信息技術與傳統(tǒng)制造業(yè)向融合,提高生產(chǎn)效率,從而降低生產(chǎn)成本。在工業(yè)生產(chǎn)過程中,確保設備維持正常的運轉狀態(tài)是至關重要的。因此,如何準確判定設備是否處于正常運轉狀態(tài)成為了眾多企業(yè)管理者關心的問題。
現(xiàn)有的PVC壓延設備體型龐大、結構復雜、作業(yè)流程長,單純依靠設備操作人員實時診斷[2]設備生產(chǎn)狀態(tài)是非常困難的。隨著物聯(lián)網(wǎng)技術[3]的發(fā)展,PVC壓延設備的信息化改造已初步完成,通過各種類型的傳感器[4]實時采集PVC壓延設備生產(chǎn)時的設備信息并傳輸?shù)椒掌髦?。因此,可以通過大數(shù)據(jù)技術對設備歷史信息進行分析[5],建立PVC壓延設備運行狀態(tài)診斷模型,完成對設備實時監(jiān)控。
PVC壓延設備運行狀態(tài)診斷模型屬于分類模型,常用的構建算法有邏輯回歸[6](Logistic Regression)、決策樹(Decision Trees)和支持向量機[7](Support Vec?tor Machine,SVM)。由于邏輯回歸算法容易欠擬合,精度不高,而SVM算法針對擁有大量訓練樣本的數(shù)據(jù)集時運算效率不高。相比較而言,決策樹算法決策規(guī)則直觀且運算效率高,雖然會有過擬合現(xiàn)象,但可以通過集成學習的方式克服。因此,本文通過使用CART算法對歷史數(shù)據(jù)進行分析建立初步設備運轉狀態(tài)診斷模型。引入提升(Boosting)方法,創(chuàng)建多個CART樹并進行加性組合,通過構建集體決策模型完成PVC設備運行狀態(tài)的實時診斷,最后通過的實例測試證明該方法具有較強的實用性。
常見的決策樹算法包括ID3、C4.5、CART等,其中C4.5算法是對ID3算法的優(yōu)化[8],解決了ID3算法在分支過程中總偏向于取值較多的屬性,通過計算信息增益比率(gain ratio)來選擇分割點,該算法可以用來做多分類決策樹。CART算法采用二元分割法,即每次把數(shù)據(jù)分割成兩份,分別進入左子樹、右子樹最終形成分類二叉樹。CART算法通過計算基尼系數(shù)增益來確定分割點,在針對大規(guī)模樣本時,CART算法相較于C4.5算法,不用進行大量的排序運算和對數(shù)運算,運算效率會更高。因此,本文使用的決策樹算法為CART算法。
CART樹具體構建方法如下:
(1)對于一個樣本數(shù)據(jù)集S,分類屬性有m個類,記第i個類別的概率為pi,pi的計算方法為屬于該類別的樣本數(shù)除以數(shù)據(jù)集總樣本數(shù)。則樣本S的概率分布基尼指數(shù)定義為:
(2)數(shù)據(jù)集S中非分類屬性K的基尼系數(shù)GiniK(S)計算公式為:
S1、S2表示集合S被特征屬性K的最佳分割點分割后的兩部分,|S1|表示S1中樣本的個數(shù)。這里的重點在于如何找到最佳分割點對集合S進行劃分。有如下3種情況:①當特征屬性K只有兩種取值類型,則不需要討論分割點,直接利用上述公式計算即可。②當特征屬性K有多種取值類型,則需要對多個取值類型進行二分類劃分,得到多種二分類劃分方式。利用公式(2)分別計算每個的二分類劃分方式的基尼系數(shù),選取基尼系數(shù)最小的二分類劃分方式作為最佳分割點。③當個特征屬性K為數(shù)值屬性時,需要先對數(shù)據(jù)先進行排序,按照排列順序依次用相鄰兩個數(shù)的均值作為分隔點將樣本劃分為兩個部分,計算分割后對應的基尼系數(shù),同樣取基尼系數(shù)值最小的作為最佳分割點。
(3)對于一個屬性K,它的基尼系數(shù)增益計算方法是用樣本的概率分布基尼指數(shù)減去屬性K的基尼系數(shù),表達式為:
依次選取基尼系數(shù)增益最大的屬性作為分類節(jié)點對數(shù)據(jù)集劃分為兩個子數(shù)據(jù)集,再在子數(shù)據(jù)集中對剩余的屬性遞歸調(diào)用第二個步驟,當子數(shù)據(jù)集中的樣本全部屬于同一類時停止遞歸調(diào)用。
(4)使用CART算法建立分類二叉樹用于設備運轉狀態(tài)的診斷,不可避免的便是“過擬合”現(xiàn)象,因此還需要進行剪枝處理。剪枝的基本策略有“預剪枝”和“后剪枝”[9],其區(qū)別在于“預剪枝”是在決策過程中當進行結點劃分時進行的,當新結點的劃分并不能提高決策樹的性能提升,則停止劃分,并把當前結點標記為葉子結點?!昂蠹糁Α眲t是先生產(chǎn)一棵完整的決策樹,再從下往上考察每個非葉子結點,將該結點的子樹標記為葉子結點,若能提升決策樹的泛化性能,則去掉子樹,將該子樹替換成葉子結點。相比之下“后剪枝”的欠擬合風險小,泛化性能優(yōu)于“預剪枝”。常用的“后剪枝”方法有EBP(基于錯誤的剪枝法)、REP(錯誤率降低剪枝法)、PEP(悲觀錯誤剪枝法),CCP(代價復雜度剪枝法)。單棵CART樹在后剪枝之后可以緩解過擬合現(xiàn)象,提高分類精度,但分類精度仍然不高。因此本文引入了提升(Boosting)方法,在此也就不再討論“后剪枝”的具體做法。
對某個數(shù)據(jù)集的進行分類器的訓練的過程中,構造多個精度較低的弱分類器比構造一個高分類精度的強分類器要容易的多。因此,通過使用CART算法構建完一棵CART樹之后,改變訓練樣本的權重,即增加被分類錯誤的樣本比重,降低被分類正確的樣本比重,構成新的訓練集,再次訓練新的CART樹,就此便可得到一系列的弱分類二叉樹{T1,T2,T3,…,Ti,…},將一系列分類二叉樹進行加性組合便可以得出一個強分類二叉樹。具體流程如圖1所示,其中Wij表示第i次構建弱分類器時,訓練集的第j個樣本權重。ei表示第i個弱分類器的誤差率。ɑi為分類器加性組合時的系數(shù)。
圖1 提升(Boosting)方法
誤差率ei的計算公式為:
其中,Ti(j)表示數(shù)據(jù)集S的第j個樣本經(jīng)弱分類器Ti后得到的值,yj表示該樣本的真實值,I為指示函數(shù),當Ti(j)=yj成立時I(Ti(j)=yj)=0,反之,當Ti(j)=yj不成立時I(Ti(j)=yj)=1。
系數(shù)ɑi的計算方式為:
權重計算公式為:
當i=0時,即數(shù)據(jù)集S每個樣本j的初始化權值為為樣本集S的樣本個數(shù)。Zi為規(guī)范因子,計算公式為:
將(5)式代入(6)式與(7)式進行化簡可得:
基于CART樹的強分類器構建方法如下:
(1)對訓練數(shù)據(jù)集S使用CART算法構建第一棵CART樹T1,在構建過程中與原來方法不同之處在于:在使用公式(2)計算基尼系數(shù)時需要先使用公式(1)計算基尼指數(shù)Gini(S1)、Gini(S2),公式(1)中的第i個類別的概率pi計算方法不再是用屬于該類別的樣本數(shù)除以數(shù)據(jù)集總樣本數(shù),而是求屬于該類別的各個樣本對應的權重值之和。
(2)利用公式(4)計算第一棵CART樹的誤差率e1,利用公式(5)計算T1的系數(shù)ɑ1,利用公式(8)、(9)計算出第一次迭代后的權值W2j,替換樣本S的權值。
(3)對替換權值后的樣本S繼續(xù)使用CART算法構建之后CART樹,重復(1)、(2)兩個步驟便可得到一系列的弱分類二叉樹{T1,T2,T3,…,Ti,…}。
(4)將這一系列的弱分類器{T1,T2,T3,…,Ti,…}加性組合便可以得到一個強分類器:Fi=ɑ1T1+ɑ2T2+ɑ3T3+…ɑiTi,當強分類器對訓練集樣本的誤分類次數(shù)達到閾值或訓練集樣本被完全正確分類時,停止構建新的弱分類器。
(5)最終得到的強分類器函數(shù)表達式為:
(6)sign為符號函數(shù),表達式為:
本文所使用的PVC壓延數(shù)據(jù)來自廣州佛山某新材料股份有限公司現(xiàn)有的PVC壓延線設備監(jiān)測控制系統(tǒng),該系統(tǒng)通過各類底層傳感器采集生產(chǎn)信息,使用串口聯(lián)網(wǎng)服務器等設備將各類傳感器數(shù)據(jù),上傳服務器。PVC壓延生產(chǎn)線示意圖如圖2所示。
圖2 PVC壓延生產(chǎn)線
現(xiàn)有PVC壓延線的歷史數(shù)據(jù)均按照采集的時間先后保存在日志文件中,需要通過編程對日志文件進行解析。解析后得到的原始數(shù)據(jù)集中存在重復、缺失、錯誤現(xiàn)象,采取如下措施:①如果相鄰的幾組數(shù)據(jù)完全一致則合并為一組;②如果數(shù)據(jù)缺失,用鄰近數(shù)據(jù)均值補全;③如果存在錯誤數(shù)據(jù),錯誤數(shù)據(jù)是指數(shù)據(jù)格式或數(shù)據(jù)值遠遠超出取值范圍的數(shù)據(jù),對該類數(shù)據(jù)將直接剔除。為了使訓練集數(shù)據(jù)更具有代表性,從2019-2020年的PVC生產(chǎn)線歷史數(shù)據(jù)中按不同的月份和日期和時間段抽取5500組PVC壓延設備正常生產(chǎn)時的設備歷史數(shù)據(jù),從兩年期間設備每次發(fā)生故障時采集到的數(shù)據(jù)中等概率抽取4500組設備故障數(shù)據(jù)組成數(shù)據(jù)集。將設備正常生產(chǎn)時數(shù)據(jù)和設備故障時采集到的數(shù)據(jù)進行隨機混合,以其中的7000組數(shù)據(jù)作為訓練集,剩下的3000組數(shù)據(jù)作為測試集,進行模型的訓練與測試。表1為數(shù)據(jù)集的部分數(shù)據(jù)情況,運行狀態(tài)為1代表的是設備正常運行時所采集到的數(shù)據(jù),運行狀態(tài)為-1代表的是設備故障時所采集到的數(shù)據(jù)。
表1 數(shù)據(jù)集中部分數(shù)據(jù)展示
在表1中可以看到,數(shù)據(jù)集由設備的{電流,溫度,速度}以及PVC壓延產(chǎn)品的厚度四個屬性組成,均為數(shù)值屬性,因此在構建CART樹時符合公式(2)下方的第(iii)種情況,即對每個屬性確定最佳分割點時,需要先對該屬性下的數(shù)據(jù)進行排序,按照排列順序依次用相鄰兩個數(shù)的均值作為分隔點將樣本劃分為兩個部分,第一次構建CART樹時,各個樣本的權重均為1/10000。按照基于CART樹的強分類器構建方法構建強分類器Fi。由于強分類器Fi=ɑ1T1+ɑ2T2+ɑ3T3+…ɑiTi可寫成Fi=Fi-1+ɑiTi,為了防止過擬合,在強分類器構建的過程中加入正則化項v(0 在強分類器Fi構建過程中,為了防止擬合現(xiàn)象,需要不停地用測試集對更新的強學習器進行準確度(Accuracy)[10],精確率的表達式為: 其中,TN表示樣本實際值為-1,判決值為-1的樣本數(shù)目。FP表示樣本實際值為-1,判決值為1的樣本數(shù)目。FN表示樣本實際值為1,判決值為-1的樣本數(shù)目。TP表示樣本實際值為1,判決值為1的樣本數(shù)目。TN+FN+FP+TP=測試集樣本總個數(shù)。 影響強分類器Fi分類精度的因素有兩個:弱分類器數(shù)目和正則化項。圖3表示的是在v=1的條件下,強分類器Fi分類精度隨弱分類器數(shù)目變化而變化的情況,圖中最小的錯誤率為0.1216,對應的弱分類器數(shù)目為第176。弱分類器迭代176次,v=1的詳細測試記錄如表2所示。 表2 v=1、迭代176次測試記錄 圖3 強分類器錯誤率與弱分類器數(shù)目關系 從圖3可以看出,當弱分類器在v=1的條件下,迭代176次之后出現(xiàn)了過擬合現(xiàn)象,導致強分類器分類精度降低。 由于正則化項v的取值也會影響強分類器Fi分類精度,但在實際測試中,除非v的取值太小,導致迭代1000次還達不到最大值,否則,正則化項v的取值變化對最終分類精度的影響是比較小的,對v采用步進為0.1的搜索方法測試v每次變化時,強分類器Fi分類精度的變化,具體變化情況如圖4所示。 圖4 精確度與學習率的關系曲線 從圖4中可以看出,強分類器分類精確度受正則化項v變化的影響不大,取值范圍均在82.5至88.5之間,從v=0.1這個點也可以看出,由于正則化項v取值過小,在迭代1000次弱分類器時仍然處于欠擬合狀態(tài)。當v=0.8時,強分類器分類精確度取值最大,為88.37%,對應迭代次數(shù)為221次,此時具體測試情況如表3所示。此時,強分類器的AUC曲線如圖5所示,取值為0.90。 表3 v=0.8、迭代221次的測試記錄 圖5 強分類器ROC曲線圖 工業(yè)大數(shù)據(jù)在未來的制造業(yè)發(fā)展過程中將發(fā)揮越來越重要的作用,成為提升生產(chǎn)效率、完成產(chǎn)業(yè)升級的重要手段。本文通過使用基于CART算法的提升(Boosting)方法對PVC壓延設備生產(chǎn)歷史數(shù)據(jù)進行分析,構建設備生產(chǎn)狀態(tài)診斷模型,用于設備生產(chǎn)狀態(tài)的實時診斷。實驗測試表明,該診斷模型的分類精度可達88.37%,AUC值為0.90,判決速度為0.15 ms/條,具有較高的準確率和實用性,也對其他類似的制造型工業(yè)生產(chǎn)設備運行狀態(tài)的判決提供了一種可靠的解決方案。2.4 模型測試
3 結語