車 玲,黃勇華,姜林林,車恩羽
(1. 南通職業(yè)大學(xué) 電子信息工程學(xué)院, 江蘇 南通 226007; 2. 西南大學(xué) 計算機與信息科學(xué)學(xué)院, 重慶 400715)
智能電表是一種利用數(shù)字技術(shù)、網(wǎng)絡(luò)技術(shù)實現(xiàn)多種費率雙向計量、多種數(shù)據(jù)雙向通信、用戶端控制、防竊電等智能化功能的新型數(shù)字電度表[1]。智能電表是智能電網(wǎng)(尤其是智能配電網(wǎng))數(shù)據(jù)采集的主要設(shè)備之一,對于提高電力系統(tǒng)的運行效率、優(yōu)化電力資源配置、實現(xiàn)用電側(cè)管理等具有重要意義。由于智能電表的元器件構(gòu)成復(fù)雜且類型多樣,運行過程中難免產(chǎn)生損壞和各種故障[2],如外觀故障、時鐘單元故障、計量性能故障等。這些故障會影響電表的計量準確性、通信可靠性、使用安全性等,給電力系統(tǒng)帶來安全風險和經(jīng)濟損失。因此,及時發(fā)現(xiàn)并處理智能電表故障,延長其使用壽命,是保證智能電網(wǎng)正常運行的一項重要任務(wù)。本文擬針對智能電表存在數(shù)據(jù)采集量大、故障數(shù)據(jù)種類繁多等問題,構(gòu)建智能電表故障診斷及壽命預(yù)測模型,以期實現(xiàn)智能電表的故障預(yù)測和及時處理,確保智能電表的安全可靠運行。
目前,對于智能電表的故障診斷和壽命預(yù)測,主要采用基于規(guī)則或機理的方法[3]。這些方法需要依賴專家知識或者物理模型,往往缺乏通用性和適應(yīng)性,無法有效處理復(fù)雜的非線性關(guān)系和多因素耦合問題。而且,這些方法往往只能在故障發(fā)生后進行診斷,無法提前預(yù)測故障發(fā)生的可能性和時間。為克服上述方法的局限性,提出一種基于隨機森林(Random Forest,RF)算法的智能電表故障診斷及壽命預(yù)測模型。隨機森林(RF)是一種集成學(xué)習方法,可通過構(gòu)建多個決策樹并進行投票或取平均值來提高預(yù)測性能[4]。
隨機森林(RF)算法是集成算法的一個子集,利用隨機方法構(gòu)建具有多棵決策樹的森林,并根據(jù)決策樹的投票選擇決定最終分類結(jié)果。隨機森林算法采用有放回的采樣,即每棵樹從訓(xùn)練集中選取固定數(shù)量的樣本,選取后再放回到原始訓(xùn)練集中。圖1 為隨機森林算法建立的決策樹框架結(jié)構(gòu)。
圖1 隨機森林算法框架結(jié)構(gòu)
隨機森林(RF)算法的構(gòu)建步驟如下:
1)從原始訓(xùn)練樣本集隨機抽取n 個相互獨立的訓(xùn)練樣本,作為每棵決策樹的根節(jié)點樣本。
2)使用生成的n 個測試樣本,構(gòu)建n 棵決策樹,并從M 個特征屬性中隨機抽取K 個特征屬性,從中選擇一個最合適的特征屬性作為分裂節(jié)點。構(gòu)建的決策樹不進行剪枝,保證其完整生長。
3)建立隨機森林后,利用測試樣本進入每一棵決策樹,進行類型輸出和回歸輸出,并以投票方式輸出最終類別。
隨機森林(RF)算法具有以下優(yōu)點:
1)可處理高維度、非線性、非平衡數(shù)據(jù);
2)可同時進行分類和回歸分析;
3)可評估各特征的重要性;
4)可抵抗噪聲和過擬合。
根據(jù)大數(shù)據(jù)分析理論,對某智能電表的海量累積數(shù)據(jù)進行挖掘分析,并從中提取與故障和壽命相關(guān)的特征變量,提出一種基于隨機森林(RF)算法的智能電表故障及壽命預(yù)測模型。首先,收集和整理電表的特征數(shù)據(jù),如用電功率、用電質(zhì)量、用電計費等特征,以及電表的故障標簽,如正常、異常、損壞等類別;其次,對數(shù)據(jù)進行預(yù)處理,如處理缺失值、異常值、噪音等問題,以及進行特征選擇、特征編碼、特征歸一化等操作,使數(shù)據(jù)符合隨機森林算法的輸入要求;再次,將數(shù)據(jù)集中85 %的數(shù)據(jù)作為訓(xùn)練樣本,訓(xùn)練隨機森林分類器和回歸器;最后利用數(shù)據(jù)集中15 %的數(shù)據(jù)作為測試數(shù)據(jù),評估分類器和回歸器性能。預(yù)測流程如圖2 所示。
圖2 智能電表故障及壽命預(yù)測流程
對某地級市供電公司提供的真實數(shù)據(jù)進行實驗驗證,并與支持向量機回歸、線性回歸等幾種常用回歸模型的預(yù)測結(jié)果進行橫向比較,驗證模型預(yù)測的準確度和信用度。
使用某地級市供電公司提供的真實數(shù)據(jù)進行模型構(gòu)建與驗證,所研究的智能電表用戶包括工業(yè)和大型商業(yè)用戶,約20 萬。每個用戶對應(yīng)一個唯一編號,有相應(yīng)的計費信息和轉(zhuǎn)賬信息,還有一個或多個智能電表編號,并有相應(yīng)的實時功率數(shù)據(jù)和質(zhì)量字節(jié)數(shù)據(jù)。
實時功率數(shù)據(jù)是指每15 分鐘記錄一次用戶用電功率(kW),每天共96 條記錄。計費數(shù)據(jù)是指每月記錄一次用戶用電量值(kW·h),每年共12條記錄。轉(zhuǎn)賬信息是指每次用戶繳納電費時記錄其使用的銀行賬戶信息。質(zhì)量字節(jié)數(shù)據(jù)是指每15分鐘記錄一次用戶用電質(zhì)量信息(8 位二進制數(shù)),每天共96 條記錄。每個二進制位代表一個警報類型。表1 顯示用戶用電質(zhì)量信息及其含義。
表1 用戶用電質(zhì)量信息含義
選取2017 年1 月至2019 年12 月共36 個月內(nèi)發(fā)生過至少一次故障檢修事件的用戶作為研究對象。如圖3 所示,根據(jù)檢修事件記錄,智能電表故障類型中時鐘單元故障、計量性能故障和外觀故障占比較大。因此,將發(fā)生過這三類故障之一的用戶標記為異常用戶。
圖3 智能電表故障類型及占比
為保證數(shù)據(jù)完整性和有效性,在進行模型構(gòu)建前,對原始數(shù)據(jù)進行預(yù)處理。
1)刪除缺失值超過10 %或異常值超過5 %的用戶數(shù)據(jù);
2)刪除用電功率為0 或質(zhì)量字節(jié)值全為0的無效記錄;
3)對于連續(xù)變量(如用電功率),采用均值填充法補全缺失值;
4)對于離散變量(如質(zhì)量字節(jié)),采用眾數(shù)填充法補全缺失值;
5)對于異常值(如用電功率值超過正常范圍),采用中位數(shù)替換法處理;
6)對于分類變量(如銀行賬戶信息),采用獨熱編碼法轉(zhuǎn)換為數(shù)值變量;
7)對于數(shù)值變量(如用電功率),采用標準化法轉(zhuǎn)換為標準正態(tài)分布。
預(yù)處理后的數(shù)據(jù),可進行有效的特征提取,減少無效數(shù)據(jù)特征占比,提高數(shù)據(jù)應(yīng)用的準確度。
建立智能電表的故障預(yù)測及壽命預(yù)測模型,需要從原始數(shù)據(jù)中提取出與故障和壽命相關(guān)的特征變量,包括用電功率、用電質(zhì)量、用電計費、用戶編號、智能電表編號、轉(zhuǎn)賬信息等特征。為減少特征維度,提高模型效率,采用隨機森林(RF)算法對所有特征進行重要性評估。其主要思想是,觀察各特征在隨機森林樹中所做貢獻,取平均值,再比較各特征的貢獻度。
根據(jù)隨機森林算法,依據(jù)下列原則判斷特征的重要性。
1)特征與目標變量的相關(guān)性越高,特征的重要性越高。例如,如果目標是預(yù)測電表的壽命,那么用電量、用電功率等特征比用電質(zhì)量更重要。
2)特征在隨機森林中每棵樹上所做貢獻越大,特征的重要性越高。
3)特征的取值范圍和變化程度越大,特征的重要性越高。例如,如果一個特征的取值范圍很小,或者取值分布很不均勻,那么這個特征可能比其他特征更易被忽略或更易受噪聲影響。
依據(jù)以上原則和特征重要性,從用電功率、用電質(zhì)量、用電計費等三方面進行數(shù)據(jù)特征提取,共提取特征值k=14 個,具體如下:
1)用電功率特征:用電功率反映了用戶的用電行為和負荷變化,與電表的損耗和老化有關(guān)。從用電功率數(shù)據(jù)中提取平均功率、最大功率、功率標準差等特征,如表2 所示。
表2 提取的用電功率特征
2)用電質(zhì)量特征:用電質(zhì)量反映了用戶的用電環(huán)境和電網(wǎng)狀態(tài),與電表的穩(wěn)定性和可靠性有關(guān)。從質(zhì)量字節(jié)數(shù)據(jù)中提取質(zhì)量字節(jié)頻率、字節(jié)比例等特征,如表3 所示。
表3 提取的用電質(zhì)量特征
3)用電計費特征:用電計費反映了用戶的用電規(guī)模和消費水平,與電表的使用強度和壽命有關(guān)。從計費數(shù)據(jù)中提取平均用電量、最大用電量等特征,如表4 所示。
表4 提取的用電計費特征
采用同一訓(xùn)練集和測試集,將RF 算法與其他常見分類算法,包括決策樹(decision tree,DT)、邏輯回歸(logistic regression,LR)、樸素貝葉斯(naive Bayes,NB)、K 近鄰(K-nearest neighbor,KNN)及支持向量機(support vector machine,SVM)等算法進行比較。
交叉驗證法是模型進行訓(xùn)練和驗證較為有效的方法之一。利用交叉驗證法,將數(shù)據(jù)集劃分為5個子集,包括4 個訓(xùn)練集和1 個測試集。然后,依次對訓(xùn)練集和測試集進行5 次輪換訓(xùn)練和測試。最后,將5 次測試結(jié)果進行平均,得到最終評估指標。
采用的評估指標分為故障預(yù)測指標和壽命預(yù)測指標。故障預(yù)測指標包括召回率(recall)、準確率(accuracy)、F1(F1-score)、精確率(precision);壽命預(yù)測指標包括均方誤差(mean squared error,MSE)、均方根誤差(root mean squared error,RMSE)及平均絕對誤差(mean absolute error,MAE)。
各算法在故障預(yù)測任務(wù)中的評估指標比較如表5 所示。
表5 RF 算法與其他分類算法故障預(yù)測結(jié)果比較
從表5 可以看出,RF 算法對準確率、精確率、召回率等的預(yù)測準確率達90 %以上,F(xiàn)1 達0.92,均高于其他分類算法,表明RF 算法可以有效識別異常用戶,具有較高準確率,且在故障預(yù)測方面表現(xiàn)最優(yōu)。
將RF 算法與其他常見回歸算法,包括支持向量回歸(support vector regression,SVR)、線性回歸(linear regression,LR)、嶺回歸(ridge regression,RR)、LASSO 回歸(least absolute shrinkage and selection operator,LASSO) 和決策樹回歸(decision tree regression,DTR)等算法進行比較,各算法在壽命預(yù)測任務(wù)中評估指標比較結(jié)果如表6 所示。
表6 RF 算法與其他分類算法壽命預(yù)測結(jié)果比較
從表6 可以看出,RF 算法在壽命預(yù)測任務(wù)中表現(xiàn)最優(yōu),其MSE(均方誤差)、RMSE(均方根誤差)和MAE(平均絕對誤差)均為最低。表明RF算法可有效估計智能電表的剩余壽命,且具有較高精度。
利用RF 算法分別建立了智能電表的故障診斷及壽命預(yù)測模型,通過對大量的智能電表數(shù)據(jù)進行分析和處理,提取了用電功率特征、用電質(zhì)量特征和用電計費特征,并利用RF 算法評估特征的重要性,再進行特征選擇,最終得到優(yōu)化的模型輸入特征向量。利用交叉驗證法進行模型訓(xùn)練和驗證,并與其他常見的分類回歸算法進行比較。結(jié)果表明,RF 算法在故障預(yù)測和壽命預(yù)測方面均表現(xiàn)出較高的準確性和穩(wěn)定性。研究成果可為智能電表的運行監(jiān)測和維護管理提供有效的技術(shù)支持。