慶光蔚,劉肖凡
(1.南京市特種設備安全監督檢驗研究院,江蘇 南京 210019;2.東南大學 計算機科學與工程學院,江蘇 南京 211189)
電梯與人們的日常出行緊密關聯,已成為特種設備安全工作的著力重點和關鍵一環。如何在降低設備故障停梯率的同時高效應對故障,是電梯安全監管和應急處置中亟須解決的核心問題。大數據浪潮下,金融、工業、公共服務等領域已有大量成功應用案例。大數據在特種設備安全監管與應急救援中的應用場景十分豐富,如救援路徑規劃、救援站點布局優化、易發故障電梯屬性歸納等。對特種設備故障大數據進行挖掘分析,可以盡早發現設備故障隱患,排查治理甚至預測故障發生概率,進而為故障處置和監管決策提供參考。
目前,關于電梯故障原因預測的研究多集中于部件特定故障的診斷,主要基于少樣本(數百臺)設備的物聯網監測數據。王麗園建立了多種電梯運行數據分析模型,用異常分類模型實時監控電梯狀態。沈志鵬將循環神經網絡和擴張因果卷積網絡相結合,提出一種新的時間序列預測模型,預測電梯部件未來是否發生異常。朱明等建立了電梯故障率受環境溫度、濕度影響的GM(1,)預測模型。支猛等提出了一種基于BP神經網絡和遺傳算法的預測模型,對電梯門系統故障進行預測。姜宇迪等提出了基于長短期記憶網絡自編碼器和時間序列回歸模型的電梯制動器監測和故障預警方法。胡海博基于社區電梯系統歷史維保數據,利用粒子群聚類預測模型,實現了電梯小樣本數據故障預測。
自2015年起,在南京、杭州、廣州等地的示范帶動下,電梯應急處置服務平臺在全國范圍內推廣建設。在履行科學調度、快速解救的首要職能之外,平臺積累了大量設備的困人故障數據,蘊藏了豐富故障特征,具有數據分析的基礎和挖掘價值。本文基于南京市2015—2020年41 414起電梯困人故障數據,構建故障特征數據集,利用梯度提升樹算法(GBDT)建立電梯故障原因預測模型,以CART決策樹為基學習器,預測下一次故障時最可能的故障原因,并與其他集成學習方法進行對比,驗證方法的效果與優勢。
電梯故障原因數據屬性為標稱數據,其預測可認為是一個分類問題。電梯故障原因預測模型流程如圖1所示。模型包括:電梯故障初數據集數據預處理;基于預處理后數據,提取電梯故障相關特征;選取分類算法,進行訓練建立模型;評估模型性能;保存最優模型;當電梯再次出現故障時,提取相關數據特征輸入最優模型,預測故障原因。

圖1 電梯故障原因預測模型構建流程
數據預處理包括處理缺失數據、歸一化數值類特征、集中篩選初數據集中可能指向故障原因的數據項。對缺失數據,標稱屬性和數值屬性兩種不同數據屬性采取的預處理方式不同:標稱屬性,缺失數據用值“無”補全;數值屬性,如電梯速度,缺失數據用該數據屬性值的均值表示,并進行歸一化處理。
41 414起電梯困人故障初數據集包含25個應急調度數據項和10個電梯基本數據項。初步剔除接警響應時間、救援完成時間、電梯檔案號、設備注冊登記號等明顯非關聯項后,保留19個與電梯故障原因相關的數據項,形成的故障特征數據集見表1所列。

表1 故障特征數據集
梯度提升(Gradient Boosting)分類算法,是一種集成學習思想,由Friedman于1999年提出,梯度提升假設模型形式為:

式中:為模型參數;(;α)為基學習器;α為弱學習器參數;為迭代次數;β為每個基學習器權重。
模型損失函數的數學期望為:

在已有包含個樣本點的訓練數據集 {(,),..., (x,y)}上計算模型的損失函數值,并使損失函數值最小,可得最優參數為:

采用前向分步算法,每一步學習一個基學習器及其權重值,逐漸逼近式(3)的最優解。假設當前模型為F,則在第次迭代學習的基學習器f,由擬合損失函數的負梯度在當前模型F的值所得。即第次迭代學習的參數{β,α}能夠使f的方向是F損失函數下降最快的方向。對每一個數據點x都可以得到一個梯度下降方向g(x),見式(4),和一個完整的梯度下降方向,見式(5):

為使f能夠在梯度下降的方向上使用最小二乘法,分別由式(6)、式(7)得到最優α和β:

最終合并至模型中,可得:

梯度提升算法框架如下所示:
算法1:數據項框架
輸入 :訓練數據集 {(,),..., (x,y)},損失函數(,()),迭代次數。
輸出:模型()。

2.對= 1,...,:



(4)更新模型 :F() =F() +β(;)。
3:輸出模型()。
梯度提升本質為一個算法框架,放入已有分類或回歸算法后,可進行更復雜的決策分類計算。本文在梯度提升框架下,提出以梯度提升樹(Gradient Boosting Decision Tree,GBDT)構造電梯故障預測模型。GBDT引入決策樹作為梯度提升框架中的基模型(即基學習器),算法中所有決策樹的運算結論累加即為最終結果。這種不斷迭代的決策樹算法,比單一決策樹具有可區分多種不同特征和特征組合的天然優勢,魯棒性好,易并行化,是可擬合復雜非線性函數的有力工具。
CART決策樹(Classification and Regression Trees,CART)同時支持連續值和缺失值的處理,適用于不同屬性的電梯故障數據。本文利用回歸CART決策樹作為梯度提升算法的弱分類器,基于平方誤差最小化準則實現特征選擇,生成二叉樹,表現形式為:


若輸入數據屬于葉節點R,則返回1,否則返回0。在梯度提升算法框架中,用式(9)替換使式(4)更新模型步驟中的(;α),可得 :


令r=βb,式(10)可改寫為:

經式(12)優化,可得r最優值:

決策樹每個葉節點包含的樣本數據不重疊,則r可用式(13)優化:

由此將CART決策樹作為梯度提升框架中的基學習器,可迭代完成分類預測算法模型構建。
41 414條電梯故障工單初始數據包含6類歷史困人故障原因,分別是安全保護裝置、門系統、曳引系統、控制系統、電氣系統和外部原因(停電、機房溫度過高等)。故障預測模型以初始數據訓練預測模型,針對故障電梯求解6類原因的分類問題。
實驗使用XGBoost工具10折交叉驗證的方式訓練模型,迭代中設置early stopping的方式防止過擬合。在 Ubuntu 14.04LTS 操作系統的Intel(R) i7-370 3.40 GHz CPU,4 GB內存的PC機上運行算法,測得模型訓練迭代至最優預測模型耗時6.17 s,通過最優模型預測一個新樣本耗時0.011 s,可知模型能夠滿足在應急狀況下的實時快速預測要求。GBDT算法迭代100次,每次迭代后交叉驗證結果如圖2所示,迭代至70次時訓練結果達到最優,模型準確率為42.04%。

圖2 迭代后交叉驗證結果
采用精確率(precision)、準確率(accuracy)、召回率(recall)和F1值等常用評價指標評估算法模型的可靠性與準確性。以機器學習中3種經典分類算法CART決策樹算法、支持向量機(SVM)算法和隨機森林(Random forests)算法為對比算法,分別構建分類器,各算法的評價指標見表2所列。以CART決策樹為弱分類器的GBDT算法所構建的電梯故障原因預測模型,精確率、準確率、召回率、F1值指標均好于其他分類算法。

表2 各算法評估結果對比
模型訓練中交叉驗證后,GBDT算法模型首位原因預測準確率約為42%。而現實場景中,模型預測的結果可在應急調度時提前告知救援人員最有可能的幾個原因(從首位原因開始按可能性大小排列),引導現場排障。因此,預測模型可設置為,如果預測出最有可能的個原因(Top-)包含實際的故障原因時,則表示預測準確。根據2013—2018年南京市故障數據,預測2019年7月電梯故障原因,以同時間626條實際故障原因為預測準確率基準,驗證模型準確性。
圖3所示為=1~6時的預測準確率。其中,=1時準確率為42.04%,說明僅給出1項最有可能原因時準確率不足50%;隨著增大,準確率會不斷增高,在=3時準確率最高達81%,即預測可給出最有可能的3類故障原因,此時基本可鎖定真實故障原因。在當前初始數據量并不十分充分的訓練條件下,使用GBDT算法可明確排除一半以上的故障原因,證實了方法的有效性。

圖3 GBDT算法預測準確率
(1)清洗電梯應急處置場景下的原始故障缺失數據,預處理可分為數值屬性和標稱屬性,所有數值類屬性數據需進行歸一化處理。
(2)CART算法生成的決策樹模型是二叉樹,運算效率較多叉樹高,作為需要不斷迭代多棵樹的GBDT算法的基學習器,二者結合可保證精度并兼顧效率,適合處理目標變量(電梯故障原因)為標稱屬性的離散型分類問題。
(3)GBDT集成學習算法對電梯故障原因預測有效可行,模型評估效果好于其他常見機器學習分類算法。其通過迭代獲得殘差來不斷逼近真實預測值的特點,能夠獲得滿意預測結果(尤其在推薦Top-個預測結果時),可為應急處置時快速鎖定故障部位提供參考。
(4)4萬左右的故障初始數據數量尚不能認為是真正意義的大數據量級。有效提升首位故障原因的預測準確率,仍需在更廣地域范圍和更大時間跨度內進一步匯集數據,富集數據池,并添加構建更合理的故障特征。