侯秀林 李世林 張憲清 姜惠峰
1.中國鐵道科學研究院集團有限公司標準計量研究所,北京 100081;2.中鐵檢驗認證中心有限公司,北京 100081
通過分析鐵路產品多年檢測產生的大量數據,可得到產品的特征指標,為創新檢驗檢測方法、提高檢驗檢測效率提供技術支撐。傳統的影響因素識別方法存在依賴經驗、多因素分析能力弱、僅能讀取數值型特征等問題,導致關鍵影響因素錯漏。基于數據挖掘和機器學習理論,探索更加智能高效的方法來分析檢驗檢測數據,獲得產品的關鍵影響特征,有助于改進后續同類產品的檢驗工作并指導產品的后續生產。
鐵路隧道防水板是一種熱塑性塑料[1],加工流程復雜,涉及不同材質的不同特性,相關的檢測指標高達26項。TB/T 3360.1—2014《鐵路隧道防水材料 第1部分 防水板》[2]實行后,防水板檢測不合格率驟增,嚴重影響了檢測效能。本文基于防水板檢測數據,提出隨機森林(Random Forest,RF)算法與前向序列選擇(Sequential Forward Selection,SFS)算法相結合的RF?SFS算法并運用于防水板檢測關鍵特征選擇,獲得影響防水板檢測合格率的關鍵因素,為智能化鐵路產品檢驗檢測標準編制提供理論支撐和技術手段。
特征選擇方法是近年來機器學習、模式識別和統計學等領域的重要方法,是獲得模型最好性能特征集的方法[3-6]。該方法分為3類。
過濾器法通過檢驗特征與目標變量之間的關聯性與信息內容進行特征選擇,包含皮爾森相關系數法、互信息法等,屬于傳統的數據處理方法,特征選擇的過程與后續建模無關。其優點是易于計算,避免過擬合。缺點是:僅能給出特征相對結果向量的關鍵性,不能判定特征是有效特征還是冗余特征;依賴特征與結果向量之間的關系,忽略變量之間的關系,易導致關鍵特征錯漏;僅能處理數值型特征,不能直接用于處理離散型特征。
包裹式法為自定義學習器選擇最有利于其性能的特征子集,進行迭代優化,包含SFS算法與后向序列選擇(Sequential Backward Selection,SBS)算法。SFS算法是指從空集開始搜索,每次選擇一個特征加入到這個特征子集中,通過迭代選出使得學習器預測能力達到最優值的特征子集。包裹式法可以彌補過濾器法的缺點,但容易陷入局部最優解,并且由于在特征選擇過程中需多次訓練學習器,計算開銷較大。
嵌入式法在學習器訓練過程中自動進行特征選擇,通過將特征選擇納入訓練過程而減少對不同子集進行重新分類的計算時間,包含RF算法。RF算法是一種基于決策樹算法的自助聚合算法[7],已被證明具有很高的準確性,對異常值和噪聲具有穩定性,且能有效規避過擬合[8],可直接處理數值型和離散型數據。RF算法在建模時可為每個特征賦予關鍵性度量,得出特征關鍵性評分序列。由于RF算法具有隨機選擇樣本和隨機選擇特征的特點,建模時使用多個基學習器進行預測,最后投票選出最優模型[9]。該方法可以檢測到特征之間的相互作用對模型的影響,其缺點是無法判定特征有效性。
選取2007年—2020年的防水板檢測數據作為樣本數據集,共計1 405份檢測報告,每份檢測報告包含30項特征。30項特征中包含26個檢測指標與4個外部影響因素,它們共同作用于檢測結果。其中,VA含量、人工候化、拉伸強度、斷裂伸長率、撕裂強度、刺破強度等為數值型特征;不透水性、生產年份、樣品來源等為離散型特征。此外,將檢測結果作為目標特征,分為合格和不合格兩類。
由于檢測委托項目不同,需檢測的特征項也不盡相同,部分報告存在特征缺失的問題,需對數據集進行篩選。剔除50%以上特征缺失的數據后,有效樣本數量為1 224份。缺失率前二十的特征缺失模式如圖1所示??芍?,缺失率的排序基本按照檢測項目呈現聚集性排列。例如,同時缺失刺破強度和VA含量的報告有234份。

圖1 缺失率前二十的特征缺失模式
簡單地去除所有包含缺失值的樣本數據將導致有效數據不足,所以在使用RF算法建模時對缺失數據進行補空處理,數值型特征的空值用中位數補齊,離散型特征的空值用眾數補齊,形成有效數據集。
在總樣本集中隨機抽取90%的數據作為訓練數據集D={(x1,y1),(x2,y2),…,(xn,yn)},剩余10%作為測試數據集。其中,x=(x1,x2,…,xn)為樣本特征向量,y=(y1,y2,…,yn)為檢測結果。
RF算法模型如圖2所示。

圖2 RF模型結構
1)從訓練數據集中有放回地取樣,即自助采樣法,得到T個含m個特征的基學習器,其中T={1,…,t},m為基學習器使用的特征個數,M為總特征數目。

2)輸入特征數目m,對于每個節點,隨機選擇m個特征,再從這個子集中選擇一個最優特征進行劃分。
3)生成分類樹ht,得到對樣本x的預測H(x)作為分類結果:

其中∏(·)為指示函數。
4)投票選擇最優檢測結果分類[10]。
評估模型的預測能力有多種指標,常用準確率和受試者工作特征(Receiver Operating Characteristic,ROC)曲線。由于樣本數據集中的不合格率僅為14%,屬于不平衡數據集,準確率無法正確地表現模型效果。ROC曲線是反映真陽性率(True Positive Rate)和假陽性率(False Positive Rate)連續變量的綜合指標[11],對不平衡數據具有穩健性。因此,選取ROC曲線評估預測模型的準確性。
ROC曲線用構圖法揭示靈敏性和特異性的相互關系,通過將連續變量設定出多個不同的閾值,從而計算出一系列真陽性率和假陽性率,再以真陽性率為縱坐標、假陽性率為橫坐標繪制曲線,曲線下面積越大,預測準確性越高。AUC(Area Under the Curve)是ROC曲線下的面積。當AUC值為0.5時,學習器與隨機猜測模型一致,模型無預測價值;當AUC值為1時,模型為完美學習器。通常情況下AUC值在0.5~1.0。
由于RF算法不會產生過擬合現象,隨著基學習器增加,RF算法通常會收斂到更低的泛化誤差,再增加基學習器的數目,效果基本不會提升[12],只會使算法效率降低??紤]運算效率,選擇模型參數T=500;防水板數據有30個特征,根據式(1)取整選擇m=5。采用十折交叉驗證法得到的均值繪制的ROC曲線見圖3??芍?,防水板檢測數據RF模型的AUC值為99.46%,表明該模型具有非常強的分類預測能力。

圖3 防水板檢測數據RF模型的ROC曲線
RF算法關鍵特征評分是計算隨機改變某一特征后RF模型預測誤差增大的程度[13]。對于樣本T={1,…,t}和訓練數據集D,評分如下。
1)在自助取樣法中,每個基學習器只使用了初始訓練集中約2/3的樣本,剩余約1/3的樣本為包外樣本,確定包外樣本集Dt,oob。
2)使用決策樹ht預測Dt,oob的分類,令Hoob(x)表示對樣本x的包外預測。

對預測正確類的次數加總并計算包外誤差εoob。

3)對于特征M={1,…,m},在Dt,oob中重新隨機排列特征xm的值,其余特征的值不變。
4)使用ht通過排列的xm值來預測Dt,oob的分類,將預測Dt,oob樣本的正確分類次數加總并計算排列后的包外誤差
5)在T棵樹上計算包外樣本和排列后包外樣本的誤差差異,取其平均值即為特征m的關鍵性評分--Pm。

使用樣本數據計算30個特征的關鍵性評分,取十折交叉驗證得出的平均分,按分數從高到低進行排序,如圖4所示??芍P鍵性評分最高的特征為VA含量,達43.74,其次為縱向撕裂強度、人工候化橫向斷裂拉伸強度保持率。關鍵性評分最低的3個特征為縱向低溫彎折性、不透水性、橫向低溫彎折性。

圖4 特征關鍵性評分排序
給定總特征集F={f1,f2,…,fn},f為特征總數,可將每個特征看做一個候選子集,對f個候選特征子集進行建模,評價其預測能力,假定{f2}最優,將其作為第一輪的選定子集;然后,在上一輪的選定集中加入一個特征,構成包含兩個特征的候選子集,假定在這f-1個候選特征子集中{f2,f4}最優,且優于{f2},于是將{f2,f4}作為本輪的選定集。令i∈(0,f]且為整數,假定運行到第i輪時,最優的候選特征子集不如第i-1輪的選定集,則停止生成候選子集,并將上一輪選定的包含i-1個特征的集合作為特征選擇結果。
Huang等[14]研究的特征數量超過200項,使用RF的特征關鍵性評分序列以步長為10個特征進行預選擇,形成預選特征集,達到降維目的,隨后使用傳統SBS方法得出關鍵特征。該方法適用于特征數目超過100項的數據,一定程度上降低了算法的時間復雜度,但沒有解決SBS算法易陷入局部最優解、導致關鍵特征錯漏的缺點。
本文提出的RF?SFS方法流程如圖5所示。其中,防水板數據中f為30,特征關鍵性評分序列S順序參見圖4。

圖5 RF?SFS算法流程
RF?SFS算法彌補了RF算法關鍵特征評分算法無法判別特征有效性的缺點,改進了SFS算法隨機添加特征的方式。根據特征關鍵性評分序列由高到低排列,遍歷特征子集,可使SFS算法的時間復雜度[15]由O(n2)降低至O(1),并且遍歷的方式可以避免算法陷入局部最優解。
選用關鍵性評分排名前m個特征預測時的RF模型AUC曲線見圖6。可知:①僅選用VA含量一個特征時,ROC曲線的AUC值為66.07%。選用VA含量和縱向撕裂強度兩個特征時,AUC值為73.85%。當繼續加入人工候化橫向斷裂拉伸強度保持率以及年份特征時,RF模型的AUC值分別達到了96.41%和99.91%。隨著關鍵特征的加入,模型的預測能力逐步提升。②當AUC值達到99.98%后,隨著特征數量增加AUC值逐步降低,說明冗余特征的加入降低了模型的預測能力。選擇前6個特征時,AUC達到峰值99.98%,隨后AUC開始下降,表明關鍵特征集為包含序列前6個特征的K6集合。

圖6 選用關鍵性評分排名前m個特征預測RF模型AUC曲線
K6集合中的特征包括VA含量、2個人工候化相關參數、2個撕裂強度特征,說明其對檢測結果的影響較大。實際生產過程中造成不合格主要有4個原因:①產品配方體系不同造成的影響;②填料的選擇不適宜、比例不合理;③再生料添加比例過高,生產過程控制不嚴;④部分企業沒有人工候化處理的專用檢測設備,出廠時沒有進行該項的確認和驗證試驗。
大量試驗表明,這些原因導致了產品VA含量、拉伸性能、撕裂性能不合格,與RF模型預測是一致的。進一步分析得出,人工候化、撕裂強度和VA含量互為關聯,VA含量要達到標準中5%的要求,就必然要增加VA在配方體系中的比重,隨著VA含量增大,分子結構的規整性變差,材料柔性增大,撕裂強度就會降低,同時導致人工候化性能降低,因此要生產出合格產品,合理的配方體系設計尤為重要。
除上述5個特征外,年份特征排在第4位。2007年—2020年防水板檢測數量如圖7所示。2007年防水板檢測數量很少,從2008年至2015年防水板檢測數量總體呈上升趨勢,之后稍有回落,在2019年又達到檢測數量峰值。從不合格占比來看,2015年和2016年的防水板檢測不合格報告占比較高,這是由于2014年10月30日發布了防水板新版鐵標TB/T 3360.1—2014,增加VA含量不小于5%的要求。為達到該要求,國內許多生產廠家對原有配方體系甚至原材料進行變更,導致撕裂性能降低,不滿足標準要求。通過生產工藝、配方調整和不斷的試驗,從2017年開始不合格的防水板報告占比明顯下降。說明標準發生變化時,關鍵特征可能發生變化,需實時調整模型。

圖7 防水板檢測數量
為了驗證RF?SFS模型識別的關鍵特征有效性,基于RF?SFS方法獲得的關鍵性評分序列,將其按照評分遞減的方式分為5組特征子集,每組包含6個特征。以RF模型作為參考,建立防水板檢測數據集的分類與回歸樹(Classification and Regression Tree,CART)模型和支持向量機(Support Vector Machines,SVM)模型,比較RF、SVM、CART模型在不同特征子集下的AUC。
CART模型與RF模型同屬決策樹算法,可直接處理離散型與數值型特征,但因未使用自助聚合法對樣本進行隨機抽取,在特征多的情況下易出現過擬合。SVM算法與決策樹算法分屬不同種類,其優點是不容易受到噪聲、異常數據的影響,且不容易出現過擬合,缺點是尋找最優模型需要測試不同的核函數和參數組合,并且最終訓練結果是復雜的高維模型,通常無法直觀解釋。由于SVM算法無法直接處理離散型特征,建模前使用獨熱編碼對數據進行預處理。
選用不同特征子集時各模型ROC曲線見圖8??芍孩侔刑卣鞯腞OC曲線,RF模型(即RF?SFS模型)表現最好。②當選取第1組特征時,3種模型的預測能力都得到了不同程度的提升。③當選取第2組特征時,3種模型的預測能力出現了明顯下降,主要原因是第2組特征包含冗余特征,導致模型的預測能力下降。④當選擇第3組、第4組特征時,3種模型的預測能力進一步下降,SVM模型和CART模型的預測能力接近隨機猜測模型。其中,第4組特征子集的CART模型預測能力低于隨機猜測模型。⑤當選擇第5組特征子集時,3種模型的預測能力達到最低,CART模型和SVM模型的預測能力低于隨機猜測模型,RF模型的預測能力略高于隨機猜測模型。

圖8 選用不同特征子集時各模型ROC曲線
對比分析上述5組特征子集的計算結果,RF模型的預測能力始終為3種模型中最優。在選用第1組特征子集時3種模型的預測能力均達到最佳,圖4的關鍵性評分排序以及第1組特征為防水板檢測數據集的關鍵特征得以驗證。
1)基于機器學習理論對防水板檢測數據進行預處理,剔除無效樣本數據,獲得有效樣本1 224份,并對缺失數據進行補空。建立了防水板檢測數據的RF模型,使用ROC曲線對模型進行評估,AUC值為99.46%,表明模型可有效預測防水板數據。
2)使用RF模型得出防水板特征關鍵性評分序列,結合SFS模型找到關鍵特征與冗余特征的分界點,可將SFS算法的時間復雜度由O(n2)降低至O(1),并且采用遍歷的方式可以避免算法陷入局部最優解。通過RF?SFS方法獲得了6個影響防水板檢測的關鍵影響因素,包括VA含量、縱向撕裂強度、人工候化橫向斷裂拉伸強度保持率、年份、橫向撕裂強度、人工候化縱向斷裂拉伸強度保持率。在僅選用6個關鍵特征進行檢測時,模型的預測能力達到了99.98%。若將其作為標準編制的參考,可提高檢測效率。
3)對比分析了5組特征子集下RF、SVM、CART模型的預測能力,表明RF模型的預測能力始終為3種模型中最優。在選用關鍵影響因素子集時3種模型的預測能力均達到最佳,AUC值分別為99.98%、93.03%、90.02%,進一步驗證了RF?SFS識別方法的準確性。