



摘 要:文中旨在通過運用機器學習的分析方法,對冷水機組空調的運行數據進行分析。首先清洗數據并訓練模型,然后進行故障預測,進而形成一套方法,以期在獲得更多數據后不斷完善模型,從而進行更準確的預測。收集實際運行于多個現場的機組數據并對其進行處理,然后根據故障信息按一定規則完成標簽分類,在故障預測中使用了決策樹和隨機森林2種機器學習方法,并對比了結果。結果顯示,這2種方法在本領域的應用都有較高的準確性,在本次實例中隨機森林模型表現出了更好的性能。
關鍵詞:機器學習;故障預測;決策樹;隨機森林;冷水機組空調;數據標簽
中圖分類號:TP391.4 文獻標識碼:A 文章編號:2095-1302(2024)12-0-04
0 引 言
冷水機組空調在工業設備和商用建筑中被廣泛應用。由于其自身的機械復雜性和運行環境的多樣性,機組會出現各種故障,而一旦發生故障導致意外停機,容易造成難以挽回的損失,因此如果能夠對冷水機組空調的故障進行一定程度的預測,則對于提高設備的可靠性、降低維修成本和減少因停機而造成的損失具有非常重要的意義。
機器學習在大型設備運行故障的預測中有廣闊的應用前景。機器學習作為一種人工智能的工具與方法已經在故障預測領域有諸多應用。例如,基于GP模型和無監督SVM算法的冷水機組的故障檢測與診斷[1],又如基于物聯智能體減碳優化模型的暖通空調系統節能方法等。故障預測的核心在于搭建有效的模型,有效的模型的關鍵在于對真實有效的數據進行合理處理。機器學習作為人工智能的前沿領域,為故障預測提供了新的途徑,為提高故障預測的效率和準確性提供了更多可能。
1 數據采集與清洗
數據采集與清洗是進行數據分析和研究的必要步驟,直接關系到模型的準確率和有效性。為了獲得更真實有效的運行工況數據,我們從全國多個現場收集了冷水機組空調的運行數據,這些數據包括溫度、濕度、壓力等,涵蓋了多個運行時段和多種環境條件。
從運行現場直接取得的數據往往無法直接用于分析和研究,原因多種多樣,例如機組型號不同,控制器的軟件版本不同,數據存儲格式不同,同一參數的數據類型不同,數據缺失,數據亂碼等,不一而足。因此完成數據采集后,必須進行必要的預處理和清洗,對原始數據進行優化和制備,以便后續分析和研究。此處需注意要盡量保持數據原有的真實性和關聯性,不要誤引入人為的假性關聯。
缺失值和重復值的處理是預處理環節中非常重要的一部分。原始數據中往往存在缺失值和重復值,缺失值和重復值的不同屬性和不同位置可能會對結果造成不同程度的影響。因此,一方面我們需要采用合適的方式來填補缺失值,以盡量保證數據的完整性;另一方面我們不得不根據缺失值的重要程度進行數據行或數據列的取舍,以保證數據結構的合理性和有效性。重復數據會在一定程度上導致模型和結果的偏差和冗余,因此我們通過去重操作來確保數據的獨立性和準確性。
異常值的檢測和處理也非常重要。在海量的原始數據中,不免會存在一部分異常值和離群點,這種值的出現可能有多種原因,例如測量誤差、傳感器失效或異常、誤操作、非工況運行、軟件或算法異常、數據轉移過程中造成的失真等。我們需要采用適當的統計方法和算法來檢測并處理這些異常值,以免影響模型的有效性和準確性,從而確保分析結果的正確性。此處的難點往往在于異常值判定的方法和標準,常常需要引入專家庫和經驗庫。
數據規范化是預處理的關鍵。由于不同參數的量綱和數值范圍可能存在差異,直接進行比較和分析會導致偏差,而不一致的數據格式也會影響模型的準確性。因此,我們需要對數據進行規范化處理,將其轉換為統一的尺度,以消除量綱、數值范圍和數值格式的影響,確保數據的一致性和可比性。
綜上所述,數據的采集與清洗是數據研究中必不可少的環節。通過對數據進行預處理和清洗,我們能夠獲得準確可靠的數據,為后續的分析和應用奠定堅實的基礎。
2 數據標簽
為數據打標簽是機器學習數據建模過程的第一個環節。我們需要將清洗好的運行數據中有故障信息的部分打標簽,但不僅僅是對有故障的部分打標簽,因為目標是要對故障進行預測。我們將機組正常運行時段的數據行標記為0,而將出現故障前的特定時段內(例如15~30 min)的運行數據和帶有故障的運行數據標記為1。籠統來講,可以將所有故障類型全部劃分為故障源來處理。標簽劃分的作用是在機器學習建模過程中區分正常情況和異常情況。
對于冷水機組空調這個特定的應用領域,在打完標簽后會發現被標記為1的數據量遠遠小于被標記為0的數據量,這符合產品實際應用的特征,如果直接使用這樣的數據集進行模型訓練就會使模型的精度大大降低,并且收斂速度也會大幅下降,所以需要對數據進行抽樣,來使得用于訓練和測試的數據集中2種標簽的數據量相對均勻。即對所有標簽為0的數據進行隨機抽樣,使得到的數據量與標簽為1的數據量相當。
目標對象被轉化為二分類問題。根據本文所描述的數據對象的數據量和參數類型等,選擇了故障樹和隨機森林2種方法進行研究。
在模型訓練前還需要將打好標簽的數據集劃分為訓練集和測試集[2],劃分比例為7∶3。訓練集和測試集都包含正常數據和異常數據,訓練集用于訓練模型,而測試集則用于驗證模型的有效性和準確性[3]。本文只對研究對象進行了初步的故障與非故障劃分,在其他領域的實際應用中還可以根據需要將數據集進一步劃分,例如按照不同的故障類型或嚴重程度等進行劃分,使得模型的數據更加均衡,提高模型的性能和泛化能力。
對清洗后的數據進行標簽分類,并將其劃分為訓練集和測試集,這樣就完成了機器學習數據建模的準備工作,這一過程在實際執行過程中需反復進行,以便后續完成有效訓練以提高模型的性能。
3 決策樹與隨機森林
在本研究中,我們在嘗試了多種模型后,選擇使用決策樹和隨機森林來對冷水機組空調的故障進行預測,即調用一個用于機器學習的Python庫Scikit-learn,該庫提供了用于構建和分析決策樹和隨機森林模型的功能。
決策樹是一種常用的機器學習算法,它通過構建一棵具有分支和葉子節點的樹形結構來進行分類或回歸任務。決策樹包含葉節點和非葉節點,葉節點是樹的末端節點,葉節點下面不再有子節點。葉節點有決策權,是決策樹的最終結果,即分類或者回歸的輸出值;葉節點以外是非葉節點,非葉節點比葉節點多一個參數,每個非葉節點表示對某個屬性的判斷,非葉節點的分叉代表可能的屬性值輸出。從根節點出發,會到達唯一的一個葉節點[4]。
葉節點有3個參數,分別為不純度值、樣本個數和節點取值;非葉節點比葉節點多一個參數,即判定函數。各參數以圖1為例進行解釋(由上到下)。
判定函數:節點的特征值,當小于等于特征值時,分支向左,反之向右。
不純度值:節點的不純度值反映當前節點的預測能力。
樣本個數:參與此節點決策的樣本數,每個父節點的樣本數等于向下子節點樣本數之和。
節點取值:其為一個數組,數組的長度為類目個數,數值為各分類的樣本數。
非葉節點和葉節點示例如圖1所示。
決策樹是一種十分常用的分類方法,需要監督學習,即給出若干樣本,每個樣本都有一組屬性和一個分類結果,在分類結果已知的情況下,通過學習這些樣本得到一個決策樹,該決策樹能夠對新的數據樣本給出正確的分類[5]。
決策樹模型的訓練過程:通過遞歸選擇最佳的特征和劃分點來構建樹。在每個節點上,決策樹算法會根據目標特征的值選擇最佳的劃分點,使各子節點中的樣本盡可能屬于同一類別。這樣的過程在模型訓練中一直遞歸執行,直到滿足停止條件,例如達到預設的最大深度或節點中樣本個數小于某個閾值等。最終得到的決策樹模型就能夠根據輸入的特征值對樣本進行預測。
在決策樹的基礎上,我們進一步探索了用隨機森林的方法進行研究。隨機森林是一種集成學習方法,它通過構建多個決策樹并進行投票來提高預測的準確性和穩定性。數據集的劃分仍采用與決策樹相同的劃分方法。
隨機森林是由多個決策樹組成的,每個決策樹都獨立地根據部分樣本和特征進行訓練[6]。在隨機森林中,每個決策樹的構建過程與單個決策樹類似,但有一些區別。例如,在每次節點劃分時,隨機森林會從所有特征中隨機選擇一部分特征進行評估,并選取最佳的特征進行劃分。此外,隨機森林還會引入一些隨機性,如在樣本抽樣過程中采用有放回的方式,使得每個決策樹的訓練數據有所不同。最終得到的隨機森林模型能夠根據多個決策樹的預測結果進行投票或平均來得到最終的預測結果。
4 故障預測實踐
Scikit-learn是一個開源的Python庫,它提供了一系列用于數據分析的工具,決策樹的相關功能集成在tree子模塊中,DecisionTreeClassifier是一個用于分類問題的決策樹類,sklearn.ensemble庫中的RandomForestClassifier則用于實現隨機森林算法,簡單介紹一下它們的主要參數[7]。
決策樹模型的主要參數:
DecisionTreeClassifier:用于分類問題的決策樹模型。
train_test_split:將數據集劃分為訓練集和測試集。
cross_val_score:計算交叉驗證得分。
predict:預測目標變量的值。
隨機森林模型的主要參數:
n_estimators: 決策樹的數量,默認為100。
criterion: 劃分節點的標準。
max_depth: 決策樹的最大深度。
min_samples_split: 內部節點再劃分所需最小樣本數,默認為2。
min_samples_leaf: 葉節點上最小的樣本數,默認為1。
max_leaf_nodes: 最大節點數,如果超過則會出現錯誤。
min_impurity_decrease:默認為0.0。
本次研究中的用例如圖2所示。
在此次研究中,我們基于清洗好的數據集進行了2種模型的訓練和驗證。完成模型訓練后,使用測試集對模型進行評估。評估指標包括準確率、召回率、F1值等。準確率表示模型預測正確的樣本數占總樣本數的比例;召回率表示模型正確預測為正例的樣本數占實際正例樣本數的比例;F1值是綜合考慮了準確率和召回率的指標,可以綜合評估模型的性能。此外,還可以計算其他指標如精確率、ROC曲線下面積等來更全面地評估模型的性能。
在本次研究中,訓練后的決策樹模型的準確率可以達到99.96%,同時也看到,模型出現了過擬合現象,為了進一步提升決策樹模型的性能,還可以進行一些優化。例如,可以考慮引入剪枝技術來避免過擬合問題,通過刪除決策樹中不必要的節點來簡化模型并提高泛化能力。我們還可以把決策樹的結果用圖示的方式打印出來。圖3是本次研究的決策樹模型圖示結果(局部)。
隨機森林的驗證結果達到了99.97%的準確率,證明利用機器學習中的隨機森林模型也可以較準確地對機組的狀態和故障進行分類來實現預測,同樣我們也看到了很明顯的過擬合現象。數據中故障發生的邏輯條件比較清晰是獲得較高準確率的主要原因,關于得到過擬合的結果,工具的運用只是一方面原因,數據集本身的特點也非常重要,過于集中的數據特性使得模型的泛化能力較弱,因此通過多種途徑獲得更多的數據進行模型訓練也是數據分析道路上的潛在任務。
綜上所述,我們可以通過將數據集劃分為訓練集和測試集,并使用決策樹模型和隨機森林模型對冷水機組空調的故障進行預測,有效建立模型并對模型的性能進行評估。機器學習的應用有助于我們對故障預測問題的理解和分析,并為進一步優化和改進提供了參考。
5 結果與分析
2種模型的研究結果都表明,機器學習方法可以有效地對冷水機組空調的故障進行預測。通過利用歷史數據和特征信息,我們可以建立相對準確的模型來識別潛在的故障風險,并及時采取措施進行維修或更換設備,從而提高設備的可靠性,減少停機時間。對于機器學習的研究也有助于我們理解故障發生的原因,并分析影響因素,為進一步優化冷水機組空調的設計和運維提供參考。
交叉驗證是一種評估機器學習模型性能的方法,通過將數據集劃分為訓練集和測試集,多次進行訓練和測試,從而得到模型在不同數據子集上的準確率。以下是幾種常見的交叉驗證方式:留一法、k折交叉驗證、分層k折交叉驗證、重復k次k折交叉驗證、時間序列交叉驗證等[8]。本次研究采用了k折交叉驗證的方法。
我們將決策樹與隨機森林的模型運用k折交叉驗證的方法進行了準確率對比,以便在最終的應用中選擇更適合的模型,結果如圖4所示。可以看到在大部分情況下,隨機森林的準確度高于決策樹。當然,這只是結合本次研究對象有限的數據得到的結果,不具有代表性。
我們也注意到,機器學習方法在實際應用中可能面臨更多的挑戰和限制。例如,數據的質量和完整性對于模型的性能非常重要;特征的選擇和提取過程需要結合專業領域的知識和經驗;模型的泛化能力受到過擬合和欠擬合等問題的影響等。因此,在實際應用中,我們需要綜合考慮這些問題,并進行適當的調整和改進,以提高模型的穩定性和可靠性。
6 結 語
本次研究通過對全國多個地點實際運行的冷水機組空調的運行數據進行清洗分類和故障預測,對比了決策樹和隨機森林兩種機器學習算法在故障預測方面的應用。結果表明
2種模型都可以運用于冷水機組空調類型產品的故障預測,都能給出相對準確的預測結果,很多情況下隨機森林表現出的性能要優于決策樹。在此研究的基礎之上,還可以進一步擴展和探索的細分問題有很多,例如結合專家庫來判斷哪些類型的數據有進行故障預測研究的意義和價值,又如不同類型的故障在進行分類標簽時選取什么樣的時間段來進行會使分類更容易,能夠獲得較高的預測準確度,等等。
空調系統自動故障診斷已經成為保障空調機組安全穩定運行的重要手段[9],本次研究的結果對于冷水機組空調的故障預測具有探索性的意義。通過利用機器學習方法對運行數據進行分析和預測,在實際應用中可以提前發現潛在的故障,為應急停機提供了準備和緩沖時間,便于及時采取措施進行更換和維修設備,從而減少次生損失,并提高設備的可靠性,降低維修成本。隨著計算機算力、大數據、人工智能等技術的發展,通過機器學習的方式對設備故障進行在線診斷預測成為業內公認的有效方法[10]。結合機器學習的設備可以自動進行故障預測,減少了人工干預的需求,提高了預測的效率和準確性。本研究也為其他類似的故障預測問題提供了一定參考。
參考文獻
[1]張婕妤. 基于GP模型和無監督SVM算法的冷水機組的故障檢測與診斷[J].山東冶金,2021,43(4):47-52.
[2]樊旭晨. 基于足底壓力圖像的反演算法研究[D].合肥:安徽大學,2021.
[3]楊幫華,陳文華,谷雪林,等. 一種基于腦機接口與計算機視覺的輔助抓取系統及方法:CN202110985555.6 [P]. 2021-12-17.
[4]百度百科.決策樹[EB/OL]. [2022-11-29]. https://baike.baidu.com/item/%E5%8 6%B3%E7%AD%96%E6%A0%91.
[5]范豐麟,孫傳亮,朱通.一種賬戶交易風險判斷方法,裝置及電子設備:CN202010020719.7 [P]. 2020-06-09.
[6]百度百科.隨機森林[EB/OL]. [2023-09-01]. https://baike.baidu.com/item/%E9%9A%8F% E6%9C%BA%E6%A3%AE%E6%9E%97.
[7]王杰,杜志敏,鄭飛,等.基于物聯智能體減碳優化模型的暖通空調系統節能方法:CN202310780297.7 [P]. 2023-08-11.
[8]陳梅君.基于機器學習的長鏈非編碼RNA的亞細胞定位及與疾病關聯的預測[D].桂林:桂林電子科技大學,2021.
[9]宋海川,顧明偉,張弘韜,等.長短期記憶神經網絡用于空調系統故障時間序列分析[J].制冷技術,2020,40(6):24-30.
[10]張建超,王立娜,王延楓,等.基于機器學習的大型擠壓造粒機組故障診斷預測技術研究[J].制造業自動化,2021,43(12):140-142.
作者簡介:王 眾(1981—),女,碩士,工程師,研究方向為物聯網應用。