李銘凱,李 蕊,史鵬博,李雪城,程詩堯,丁 寧
(國網北京市電力公司電力科學研究院,北京 100162)
隨著供電企業(yè)智能電能表的大規(guī)模安裝,以及基于IR46標準的新型電能表的規(guī)?;茝V應用[1],表計檢定和供應量不斷增加。目前,國家電網公司各省級計量中心為提高檢定效率和規(guī)范性,大范圍引入智能檢定與倉儲設備。同時,為實現(xiàn)電能表的及時分揀、充分利用、規(guī)范處置,供電企業(yè)均已開展電能表拆回分揀檢測。其中,具備條件的企業(yè)已開展智能分揀與倉儲系統(tǒng)的自動化分揀檢測[2-3]。當前,電能表檢測僅以基本的合格和不合格作為判定標準,對分揀合格的電能表缺乏進一步評判。因此,實施電能表計量性能評價及預測,對拆回分揀合格的電能表重新投運及在線監(jiān)控具有重要意義。
電能表數(shù)量龐大,難以將其逐個拆開以測量不同器件和參數(shù)對其計量性能的影響。因此,本文利用電能表的檢測數(shù)據(jù)對其進行研究分析[4]。
目前,利用檢測數(shù)據(jù)對電能表進行評估已有一些相關研究[5-6]。文獻[7]將層次分析法(analytic hierarchy process,AHP)引入電能表計量性能評價決策過程,提出了一種基于AHP的全面分析電能表計量性能的理論方法,以更好地判斷電能表計量性能情況。文獻[8]~文獻[10]探究利用聚類方法對電能表進行評價,以實現(xiàn)電能表選型。但上述文獻研究只利用首次檢定數(shù)據(jù),未計及不同時間維度對電能表的影響;同時,主要利用誤差原始值維度,未考慮不同特征維度對評價結果的影響。
基于以上問題,本文提出了一種基于K-means聚類算法對電能表進行計量性能評價,并利用電能表基本信息特征對其評價類別進行預測的方法。該研究主要創(chuàng)新工作為:①考慮不同時間維度對電能表計量性能評價的影響,由于表計數(shù)量龐大,不同表計首次檢定和拆回檢測時間差異大,需綜合考慮計及多時間尺度的影響;②考慮多特征維度對計量性能評價的影響,構建均值、方差、平均偏移量、最大偏移量誤差等多特征維度,對表計進行分析;③提出利用K-means聚類算法對電能表計量性能進行評價,進而以Stacking模型對其進行預測,并采用合成少數(shù)類過采樣技術(synthetic minority oversampling technique,SMOTE)提升模型預測準確率。預測結果驗證了模型的有效性。
電能表作為電能計量器具,其基本誤差反映其計量性能。本文針對電能表拆回檢測及其首次檢定的基本誤差情況,對其計量性能進行評價。
利用電能表基本誤差數(shù)據(jù)對電能表進行計量性能評價的原則是計量性能與誤差特征值成反比。其本質上是針對誤差特征數(shù)據(jù)分布情況進行評價。
本文利用拆回檢測和首次檢定不同時間維度的誤差數(shù)據(jù)對電能計量性能進行分類評價。誤差數(shù)據(jù)在特征空間的分布情況代表其計量性能的差異。但對誤差數(shù)據(jù)進行分析存在以下兩點問題。
①電能表誤差數(shù)據(jù)為數(shù)值型數(shù)據(jù),具備連續(xù)性特點,分布較為密集。如果人為劃分計量性能評價分界線主觀性強,難以合理進行。
②檢定數(shù)據(jù)中只有電能表合格與不合格之分,沒有針對誤差數(shù)據(jù)作進一步細分,所以表計沒有計量性能評價分類標簽數(shù)據(jù)。
針對以上兩個問題,需對比常用的分類評價算法。分類算法對比如表1所示。
表1 分類算法對比
由表1可知,監(jiān)督學習各算法需要標簽數(shù)據(jù)進行分類評價,不適用于電能表數(shù)據(jù)集。無監(jiān)督學習算法中,聚類和降維算法既可以處理連續(xù)數(shù)值型數(shù)據(jù),又不需要標簽數(shù)據(jù)。但是降維算法一般用作壓縮數(shù)據(jù)。而聚類算法可根據(jù)數(shù)據(jù)分布自動分類,因此適用于電能表數(shù)據(jù)集分類評價。本文采用經典的K-means聚類算法對電能表進行計量性能評價。
1.2.1 K-means算法步驟
K-means算法步驟如下。
①從數(shù)據(jù)中選擇k個對象作為初始聚類中心。
②計算每個聚類對象到聚類中心k的距離。
③針對每個類別,重新計算聚類中心。
④重復步驟②和步驟③,直至聚類中心位置不再發(fā)生變化。
1.2.2 K-means算法流程
K-means具體計算流程如下。
輸入為樣本集A={x1,x2,...,xm}、聚類的簇樹k、最大迭代次數(shù)N。輸出為簇劃分C={C1,C2,...Ck}。
(1)從數(shù)據(jù)集A中隨機選擇k個樣本作為初始的k個質心向量:μ={μ1,μ2,...,μk}。
(2)對于樣本集A={x1,x2,...,xm},計算如下。
①將簇劃分C初始化為Ct=φ,t=1,2,...,k。
④如果所有的k個質心向量都沒有發(fā)生變化,則轉到步驟(3)。
(3)輸出簇劃分C={C1,C2,...,Ck}。
簇個數(shù)k的選擇對K-means算法非常重要,而輪廓系數(shù)法可用于選擇最優(yōu)k值。該方法可評估聚類效果。輪廓系數(shù)計算如式(1)所示。
(1)
式中:S為輪廓系數(shù);ai為樣本點i與同一簇中所有其他點的平均距離,即簇內相似度;bi為樣本點i與下一個最近簇中所有點的平均距離,即簇間相似度;D為樣本點的個數(shù)。
K-means追求的是對于每個簇而言,其簇內差異小而簇外差異大。輪廓系數(shù)S正是描述簇內外差異的關鍵指標。由式(1)可知,S的取值范圍為(-1,1)。當S越接近1,聚類效果越好;越接近-1,聚類效果越差。
特征構建利用電能表不同時間維度的誤差數(shù)據(jù)進行。由于每只電能表誤差數(shù)據(jù)正負并存,而零誤差點為理想誤差點,直接利用原始誤差數(shù)據(jù)分析數(shù)據(jù)點分散時波動性強,難以直觀表征其計量性能分布情況。因此,為了對每只電能表進行計量性能評價,需要根據(jù)基本誤差數(shù)據(jù)構建特征量。
根據(jù)誤差測試數(shù)據(jù),可直接以均值與方差表征每只電能表誤差分布情況。同時,為了進一步分析誤差分布情況,并與理想的零誤差點相關聯(lián),本文定義平均偏移量和最大偏移量兩個變量。
平均偏移量即所有誤差測試點距零點的平均距離。
(2)
式中:P為平均偏移量;xi為誤差值;M為樣本點的個數(shù)。
最大偏移量即所有誤差測試點距零點的最大距離。
Z=max{|xi|,i=1,2,...,M}
(3)
式中:Z為最大偏移量。
本文構建了均值、方差、平均偏移量、最大偏移量四個特征量。這四個特征分別代表了電能表四個不同維度的分布情況。因此,本文利用K-means算法分別對這幾個特征維度進行計量性能評價,并選出最合適的評價維度。同時,每只電能表有首次檢定和拆回檢測兩個時間維度的特征數(shù)據(jù),記為[x1,x2]。
本文數(shù)據(jù)集為省級計量中心調度平臺系統(tǒng)的20 549只電能表的首次檢定和拆回檢測的檢測數(shù)據(jù),檢定數(shù)據(jù)來源于基本誤差、起動試驗等測試項目。基本誤差測試點如表2所示。
表2 誤差測試點
針對構建的特征數(shù)據(jù)集,首先計算輪廓系數(shù)以確定最佳分類數(shù)k。均值、方差、平均偏移量、最大偏移量四個維度的輪廓系數(shù)隨k值變化曲線如圖1所示。
由圖1可知,均值、方差、平均偏移量和最大偏移量四個維度輪廓系數(shù)最大時k均為2。根據(jù)輪廓系數(shù)性質可知,將本文利用的電能表誤差特征數(shù)據(jù)分為兩類效果更好。同時,k=2時平均偏移量維度的輪廓系數(shù)最接近于1,表明以平均偏移量維度進行聚類評價效果最好。經分析,這種結果主要與誤差數(shù)據(jù)分布情況和四個維度特征計算方式相關。誤差越接近零點,代表電能表計量性能越好。均值計算存在正負相抵現(xiàn)象,即使均值為0也可能每個測試點誤差與零點距離較大。方差則為計算與表計誤差均值的離散程度而非誤差零點。最大偏移量是絕對值計算,不存在均值和方差的問題。但若測試點誤差分布極不平衡,最大偏移量也無法代表表計整體的計量性能。平均偏移量計算同樣不存在均值和方差的問題,并兼顧所有測試點的誤差分布情況,因此更適合評價電能表的計量性能。
因此,本文最終選取平均偏移量維度,采用K-means算法將構建的電能表誤差特征數(shù)據(jù)分為兩類。聚類結果如表3所示。
表3 聚類結果
對于聚類而言,每個類別中心點代表該類別的整體性質和分布。分類后的類別1中心點數(shù)值為類別2的倍數(shù)級,而誤差特征值越小則計量性能越好。因此,類別2電能表優(yōu)于類別1。
同時,該結果表明聚類評價后類別1和類別2的數(shù)據(jù)個數(shù)差別較大,聚類后的數(shù)據(jù)集類別不平衡。
本文數(shù)據(jù)集中,除了誤差數(shù)據(jù)還包括電能表基本信息,如生產廠家、到貨批次、運行單位、運行供電所、運行時間等。這些基本信息代表不同電能表的差異。
計量性能預測方法如圖2所示。
本文以運行天數(shù)、到貨批次和運行供電所為例進行分析。運行天數(shù)代表時間因素,運行越久則電能表元器件越老化,越影響計量性能。到貨批次代表生產因素。表計同一到貨批次為廠家連續(xù)時間內生產,設備生產情況相同,因而能代表生產因素對表計計量性能的影響。運行供電所代表地理位置因素。不同地理位置由于溫濕度等環(huán)境因素不同,對表計計量性能的影響也不同。
考慮到上述因素與計量性能相關,同時前文已經利用K-means聚類算法對計量性能進行分類評價,因此本文提出利用電能表基本信息特征對其評價類別進行預測。
機器學習中可用于分類和預測的算法較多,比如支持向量機 (support vector machine,SVM)、決策樹算法 (decision tree classifier,DTC)、K近鄰(K-nearest neighbors,KNN)等。同時,為了提升模型效果,集成學習也在相關任務中廣泛應用。本文提出利用Stacking集成學習模型進行預測。
預測具體步驟如下。
①以電能表基本信息構建特征數(shù)據(jù)集,以K-means聚類評價的結果構建標簽集。
②針對數(shù)據(jù)集類別不平衡進行處理。
③將處理后的數(shù)據(jù)集輸入Stacking模型進行訓練及預測。
Stacking模型框架整體分為兩層。首先,將原始數(shù)據(jù)集以交叉驗證方式劃分成若干子數(shù)據(jù)集,輸入第一層的各基學習器中。每個基學習器輸出各自的預測結果。然后,將第一層的輸出作為第二層元學習器的輸入值,對元學習器進行訓練,再由元學習器輸出最終預測結果。Stacking 模型通過結合多個模型的優(yōu)點,提升整體預測效果。 Stacking模型框架如圖3所示。
①假設第一層共有n個基學習器,則對于每個基學習器進行步驟②和步驟③的訓練。
②將數(shù)據(jù)集劃分為訓練集U和測試集V,并將訓練集分為f份。每次選出訓練集中的(f-1)份進行訓練,剩余 1 份進行測試。預測后,輸出結果ui(i=1,2,...,f),并以該學習器對測試集進行訓練,輸出預測結果vi(i=1,2,...,f)。
③將f個ui縱向拼接成為新的訓練集U′ ,f個vi相加求平均成為新的測試集T′。
考慮到機器學習不同模型的差異,綜合利用不同模型的優(yōu)勢,本文選取了單模型算法SVM、KNN和集成學習模型梯度提升決策樹(gradient boosting decision tree,GBDT)、極端梯度提升(extreme gradient boosting,XGBoost)作為Stacking的基學習器。
SVM分類算法是在特征空間中尋找間隔最大化的分離超平面的線性分類器,通過引入核函數(shù)實現(xiàn)非線性分類。SVM可以解決小樣本情況下的機器學習問題和高維問題,但它對大規(guī)模訓練樣本難以實施、對缺失數(shù)據(jù)敏感、對參數(shù)和核函數(shù)的選擇敏感。
KNN分類算法在分類決策上只依據(jù)最鄰近的一個或者幾個樣本類別來決定待分類樣本所屬的類別。KNN簡單、易于理解、無參數(shù)估計、不需要進行訓練,但當樣本分布不均勻時容易判別錯誤,對高維數(shù)據(jù)效果不佳。
集成學習是將多個弱分類器構成一個強分類器,一般能夠提升分類器的性能。其中之一的GBDT以損失函數(shù)的負梯度作為當前決策樹的殘差近似值,去擬合新的決策樹,是一種串行訓練方式。GBDT適用于分類和回歸問題,可靈活處理各種類型的數(shù)據(jù),對異常值的魯棒性非常強。但GBDT算法中弱學習器之間存在依賴關系,難以并行訓練數(shù)據(jù)。同時,在每一次迭代時,都需要遍歷整個訓練數(shù)據(jù)多次。由于內存限制,GBDT算法不適合處理大規(guī)模數(shù)據(jù)。
XGBoost是GBDT算法的高效工程實現(xiàn)。相比GBDT,XGBoost加入正則項來控制模型的復雜度,在特征選擇上利用列抽樣方式,有利于防止過擬合。XGBoost對損失函數(shù)進行二階泰勒展開,可同時使用一階和二階導數(shù),并支持多種類型的基分類器。它在樹分裂過程中的特征選擇可并行訓練,提升了運行效率。
考慮到集成學習方法效果較好和XGBoost的工程優(yōu)勢,本文選取XGBoost作為第二層訓練的元學習器。
K-means聚類算法對電能表進行分類評價后,兩個類別的比例為5.5∶1。學習器對類別數(shù)量差別較大的數(shù)據(jù)集容易造成學習偏置問題,即將所有樣本預測為多數(shù)的類別。
針對此問題,本文采用過采樣方式將少數(shù)類別數(shù)據(jù)進行擴充成多數(shù)類別的數(shù)量。由于采取簡單復制樣本的策略來增加少數(shù)類樣本,容易產生模型過擬合的問題,因此本文采用SMOTE算法合成少數(shù)類的樣本。算法具體步驟如下。
①假設少數(shù)樣本集為B。對于少數(shù)類中每一個樣本b,以歐氏距離為標準計算它到少數(shù)類樣本集中所有樣本的距離,得到其l近鄰。
②根據(jù)樣本不平衡比例設置一個采樣比例以確定采樣倍率P。對于每一個少數(shù)類樣本b,從其l近鄰中隨機選擇若干個樣本,假設選擇的近鄰為e。
③對于每一個隨機選出的近鄰e,按式(4)構建新的樣本。
bnew=b+rand(0,1)×(b-e)
(4)
式中:bnew為新樣本;b和e分別為樣本和其近鄰;rand為隨機函數(shù)。
電能表基本信息統(tǒng)計如表4所示。
表4 電能表基本信息統(tǒng)計表
由表4可知,所有電能表基本電流、基本電壓、準確度等級均一致,無法體現(xiàn)差異,因此對計量性能預測并無作用,需將其刪除。其余基本信息有差異,同時均為離散值,可將其作為電能表的特征進行類別編碼,如運行年數(shù)含6個值分別編碼為0、1、2、3、4、5。將基本信息特征進行類別特征編碼后,可將其作為特征集,并將計量性能評價類別作為標簽集,對數(shù)據(jù)集進行訓練及預測。
將本文原數(shù)據(jù)集劃分為訓練集和測試集,利用Stacking模型訓練,并與各基學習器單獨訓練對比。不同模型預測準確率如表5所示。
由表5可知,本文提出的Stacking模型準確率最高,達到85.8%,表明本文提出的Stacking模型有效。
對原數(shù)據(jù)集用SMOTE過采樣后,進行訓練及預測。過采樣后的不同模型預測準確率如表6所示。
表6 過采樣后的不同模型預測準確率
由表6可知,經過SMOTE采樣后,雖然KNN算法的準確率略降低,但SVM、GBDT、XGBoost和Stacking模型的準確率均有不同程度的提高,平均提升2.75%。這表明本文利用SMOTE算法處理類別不平衡數(shù)據(jù)是有效的。而且本文提出的Stacking模型準確率最高達到88.5%,進一步證明Stacking模型的有效性。同時,較高的準確率也證明了本文提出的利用電能表基本信息特征對電能表計量性能預測方法的有效性。
本文提出了一種電能表計量性能評價及預測方法。首先,計及時間因素和不同誤差特征維度對電能表計量性能評價的影響,利用電能表拆回檢測及其首檢數(shù)據(jù),提出利用K-means聚類算法對電能表計量性能進行評價。均值、方差、平均偏移量、最大偏移量四個維度的研究分析結果表明,平均偏移量效果最好,更適合對電能表進行計量性能評價??筛鶕?jù)評價結果對計量性能相對較差的電能表進行更加全面的檢測,對拆回分揀后重新投運的電能表進行不同級別的監(jiān)控,同時可進一步挖掘不同生產廠家計量性能評價結果分布,為選擇廠家提供技術參考。然后,本文在計量性能評價的基礎上,進一步提出一種利用電能表基本信息特征預測其計量性能評價類別的方法。采用集成學習Stacking模型進行預測,以SVM、KNN、GBDT和XGBoost相異模型為Stacking模型基分類器,并利用SMOTE處理數(shù)據(jù)集類別不平衡問題。預測結果證明了Stacking模型和SMOTE的有效性。同時,較高的預測準確率驗證了本文所提方法的有效性。所提預測方法可用于分析拆回分揀后重新投運和在運的電能表。在不考慮突發(fā)情況等不可控因素的前提下,該方法可不獲取在運電能表運行數(shù)據(jù)而利用其基本信息對其計量性能作出較為準確的預測。預測結果可作為電能表離線計量性能判斷依據(jù),對在運電能表進行選擇性監(jiān)控。