趙萬旗 孫皓月
摘要:該文以某小區(qū)居民的智能電表用電功耗數(shù)據(jù)為研究對象,結(jié)合K-means聚類算法對其進行聚類,分析居民的用電行為規(guī)律。首先對居民原始用電功耗數(shù)據(jù)進行特征歸一化處理,然后采用肘方法確定初始聚類數(shù),最后,利用聚類算法對該小區(qū)居民的用電負荷特征曲線進行聚類,分析其用電行為。實驗結(jié)果表明,K-means算法在對居民用電負荷曲線聚類時具有較高的準確度,電網(wǎng)企業(yè)能夠據(jù)此分析居民用電行為,提供用電個性化服務。
關鍵詞:K-means算法;用電行為分析;智能用電
中圖分類號:TP18? ? ? 文獻標識碼:A
文章編號:1009-3044(2022)07-0026-03
1 概述
隨著智能電表的普及,儀器中產(chǎn)生和傳輸?shù)臄?shù)據(jù)正以指數(shù)增長,在當今智能互聯(lián)網(wǎng)背景下,使用人工智能技術(shù)挖掘這些海量數(shù)據(jù),分析其中隱藏的用戶用電行為,有利于電網(wǎng)企業(yè)根據(jù)分析結(jié)果精確地為不同用戶提供對應的供電服務,避免以往一刀切式管理,追求精細化用電管理,改善供電質(zhì)量,使電網(wǎng)企業(yè)和用戶利益達到最大化[1-3]。
本文使用的數(shù)據(jù)集來自Pecan Street Energy Database,其中包括500多戶擁有智能電表的用戶能耗數(shù)據(jù)。實驗使用2015年7月收集的216戶居民用電能耗數(shù)據(jù),搭建聚類模型進行分析。在對能耗數(shù)據(jù)進行聚類之前,首先采用肘方法得到符合實際需求的K值,然后根據(jù)能耗負荷曲線的特點分析不同居民的用電行為,提供高質(zhì)量服務以滿足用戶用電的個性化需求[4]。
2 K-means聚類算法
K-Means算法的工作原理是:給定一個常數(shù)K,常數(shù)K代表數(shù)據(jù)最終聚類的類別數(shù),第一步隨機選定初始點為質(zhì)心;第二步計算數(shù)據(jù)集中其他樣本點到質(zhì)心的距離,選擇距離此樣本點最近的質(zhì)心,將該樣本加入之前所選質(zhì)心所在的類別中;第三步再次計算修正后新類的質(zhì)心,即簇中心;重復二、三步的過程,直到達到規(guī)定的迭代次數(shù)或者質(zhì)心基本不改變。
在K-means算法中,首先要做的是確定常數(shù)K,目前主流的確定聚類數(shù)K的方法有肘方法和輪廓系數(shù)法。本文將使用肘方法確定常數(shù)K。肘方法的核心指標是SSE(sum of the squared errors),即誤差平方和。其計算公式為:
其中,[Ci]是第[i]個簇,[p]是[Ci]中的樣本點,[mi]是[Ci]的質(zhì)心,SSE是所有樣本的聚類誤差。肘方法的核心思想是:取連續(xù)要聚類的目標簇數(shù),即K值,在取不同K值時,應用對應的K均值聚類算法。當算法收斂時,計算SSE,其值越小表示聚類效果越好。值得注意的是,在剛開始的時候,隨著K值的增大,誤差平方和減小的效果顯著,但是當K值到達一定值,誤差平方和變化緩慢,則認為拐點就是要尋找的目標點,也就是最終要的聚類簇數(shù)[5]。
3 居民用電行為分析架構(gòu)
為了能夠準確地分析居民用電行為,需要對原始的帶有噪聲的負載數(shù)據(jù)進行預處理,得到較優(yōu)的能耗負載數(shù)據(jù),然后使用相應的算法對其處理,得出最終結(jié)果。首先讀取原始功耗數(shù)據(jù),對其進行清洗、類型轉(zhuǎn)換以及歸一化操作。然后對處理后的負載數(shù)據(jù)分別運用不同簇數(shù)的K-means聚類算法,計算出最佳的聚類簇數(shù)K。接著使用最佳的簇數(shù),再對負載數(shù)據(jù)進行K-means聚類,得出每一種分類的負載數(shù)據(jù)標簽。最后根據(jù)不同類別下的負荷特征曲線,分析居民用電行為[6-8]。
4 實驗與分析
4.1 數(shù)據(jù)集介紹
本文實驗數(shù)據(jù)采用的是某小區(qū)居民家中智能電表的能耗數(shù)據(jù),其中記錄了從2015年7月1日到2015年8月1日一個月的能耗數(shù)據(jù),共有220戶。智能電表每隔15分鐘采集一條記錄,由房屋ID、時間、功耗(單位為KW)三個字段組成,共有? 646981條記錄。在現(xiàn)實生活中,由于外來其他信號、信息等的干擾,會使數(shù)據(jù)信息無法穩(wěn)定、高效地傳輸,存在數(shù)據(jù)缺失、異常值等情況[9]。在本案例中,共有10695個缺失值,在做聚類之前,必須進行數(shù)據(jù)清洗,以提高計算效率及實驗結(jié)果的準確度。
4.2 數(shù)據(jù)處理
由于用電能耗數(shù)據(jù)特征范圍差異較大,需要對特征進行歸一化處理。歸一化常見的處理方法有最大、最小標準化、Z-score標準化、函數(shù)轉(zhuǎn)化等[10]。本文對每一條用電能耗數(shù)據(jù)向量進行單位化,使得每一條能耗數(shù)據(jù)數(shù)值都在(0,1)之間。
為了獲得用戶不同時間的用電行為,進一步對時間列進行處理。需要對時間戳進行特征構(gòu)建,挖掘影響能耗負荷中的時間因素。例如,工作日和周末居民的能耗負荷可能存在較明顯的差異,某些小區(qū)可能在某月的固定幾天運行大型電器設備,那么能耗負荷也會相應地增加,這些都是數(shù)據(jù)挖掘過程中所獲得的有價值的信息[11]。具體地,在房屋ID、時間、功耗(單位:KW)三列的基礎上又添加了type_day(星期)和day_of_month(每月的第幾天)兩個字段。
4.3 實驗結(jié)果和分析
依據(jù)獲得的數(shù)據(jù),隨機選取4個用戶繪制其當日的用電負荷曲線,如圖1所示??梢钥闯觯?015年7月15日當天,4戶居民的用電負荷規(guī)律曲線是不盡相同的,下面就使用K-means聚類算法對不同用戶的用電負荷進行聚類。
<H:\飛翔打包文件\電腦2022年第七期打包文件1\3.02xs202207\Image\image11.png>
圖 1? ?原始數(shù)據(jù)可視化
上文已經(jīng)介紹,使用K-means聚類算法的第一步就是確定聚類簇數(shù)K。下面將使用肘方法對聚類的簇數(shù)進行評估,使用聚類數(shù)范圍在1到7之間,建模后觀察結(jié)果確定分類數(shù)目。其具體的步驟是使用一個空列表,依次創(chuàng)建K=1到7的模型,并分別保存每次模型的SSE結(jié)果,使用可視化工具將列表顯示,結(jié)合曲線的特征和實際業(yè)務需求,確定最終的聚類簇數(shù),如圖2所示。隨著聚類簇數(shù)的增大,SSE逐漸減小,在聚類簇數(shù)小于4時,SSE減小的幅度較快,當聚類簇數(shù)大于4時,SSE減小的幅度較為緩慢,最終取K為4。
確定K=4之后,構(gòu)建一個聚類簇數(shù)為4的模型。實驗基于Scikit-Learn機器學習庫中的K-means算法。經(jīng)過聚類后的分類如圖3所示,圖中橫坐標表示時間,縱坐標表示歸一化幅度。
<H:\飛翔打包文件\電腦2022年第七期打包文件1\3.02xs202207\Image\image12.png>
圖 2? ?聚類簇數(shù)與SSE關系曲線
<H:\飛翔打包文件\電腦2022年第七期打包文件1\3.02xs202207\Image\image13.jpeg>
圖 3? ?聚類后居民用電負荷曲線
根據(jù)圖3的聚類結(jié)果可以看出,第1類居民相較于其他3類居民,在0時到10時用電功耗明顯偏高,但是從10時到17時左右用電功耗逐漸減少,從17時開始一直到24時功耗又開始增加。
第2類居民在0時到10時用電功耗逐漸減小,從10時到15時其用電功耗低于第1類居民和第3類居民,在此時間段用電功耗基本上與第4類居民的用電功耗相一致,從15時開始,其用電功耗急劇增加,到了20時基本處于用電最高峰,持續(xù)到22時開始減少。
第3類居民和第4類居民的用電功耗在0時到8時處于4類居民中用電功耗最低點,之后第3類居民的用電功耗逐漸上升,到18時左右達到用電最高峰,此階段用電功耗僅次于第4類居民,18時后開始功耗減少,相比相同時段的第4類居民其功耗下降幅度較為緩和。
第4類居民從0時到15時的用電功耗處于相對較低的水平,從15時之后,用電功耗顯著增加,到18時達到4類居民中的用電最高峰,18時之后用電功耗急劇下降,持續(xù)到24時達到4類居民的用電最低點。
根據(jù)以上4類居民的用電功耗曲線規(guī)律,結(jié)合實際用電場景,得出其在不同情境下的用電消費習慣,電網(wǎng)企業(yè)可以推出差異性服務以滿足不同類型的居民,實現(xiàn)對用電服務的精細化管理。
5 結(jié)束語
當下物聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能迅速發(fā)展的背景下,智能電器產(chǎn)生的數(shù)據(jù)量已經(jīng)非常龐大。電網(wǎng)企業(yè)如果通過這些海量數(shù)據(jù),使用特定的技術(shù)手段挖掘其背后隱藏的經(jīng)濟價值,具有較大的研究意義。本文通過對某一小區(qū)居民用電能耗數(shù)據(jù)進行聚類分析,利用肘方法確定最優(yōu)聚類數(shù)K,分析不同類型居民的用電行為,并提供優(yōu)質(zhì)高效的供電服務。結(jié)果表明本文所研究的內(nèi)容具有一定的實用性。
參考文獻:
[1] 王亞東,高巖,金鋒.智能電表數(shù)據(jù)分析及應用綜述研究[J].信息技術(shù),2015,39(2):64-68.
[2] 王軍.試論智能電表對電力需求側(cè)管理的作用[J].中國設備工程,2019(14):202-203.
[3] 張彥濤.智能用電發(fā)展現(xiàn)狀與趨勢分析[J].通信電源技術(shù),2018,35(8):182-184.
[4] 王建仁,馬鑫,段剛龍.改進的K-means聚類k值選擇算法[J].計算機工程與應用,2019,55(8):27-33.
[5] 趙莉,候興哲,胡君,等.基于改進k-means算法的海量智能用電數(shù)據(jù)分析[J].電網(wǎng)技術(shù),2014,38(10):2715-2720.
[6] 胡陽春.基于改進k均值聚類算法的電力負荷模式識別方法研究[D].成都:電子科技大學,2018.
[7] 王星.基于K-means聚類算法的荊州市居民用電行為分析[J].通訊世界,2019,26(8):276-277.
[8] 蔣勇斌,趙煒,曹晶晶,等.基于k-means聚類算法的用戶復雜用電特征挖掘方法研究[J].電子設計工程,2020,28(18):11-15.
[9] 朱瑾.探討智能電表數(shù)據(jù)突變產(chǎn)生的原因及預防措施[J].科學家,2016,4(12):73-74.
[10] 趙嫚,李英娜,楊莉.基于PCA和模糊聚類的用電行為分析[J].數(shù)據(jù)通信,2020(2):36-40.
[11] 王炳鑫,侯巖,方紅旺,等.面向“削峰填谷”的電力客戶用電行為分析[J].電信科學,2017,33(5):164-170.
【通聯(lián)編輯:唐一東】
收稿日期:2021-11-15
基金項目:河北省高等教育教學改革研究與實踐項目:新興技術(shù)范式下的計算機專業(yè)課程教育教學方法創(chuàng)新研究與實踐(2020GJJG243);2020年度河北省一流本科課程(計算機網(wǎng)絡);2021年度河北省研究生課程思政示范課程建設項目:云計算與高級網(wǎng)絡技術(shù)(YKCSZ2021162);河北建筑工程學院研究生教育教學改革研究項目:新興技術(shù)范式下的研究生課程教學方法創(chuàng)新與實踐(2020YJSJG08);河北建筑工程學院教育教學研究與改革項目:基于OBE理念的SPOC教學模式在計算機專業(yè)課程中的探究與實踐(2020JY203);河北建筑工程學院教育教學改革研究與實踐項目:基于校企深度融合的計算機專業(yè)全過程實踐教學體系研究(2020JY114);基于新興網(wǎng)絡技術(shù)的智慧場館電氣設備能耗管控系統(tǒng)應用研究(項目編號:XY202146)
作者簡介:趙萬旗(1995—),男,陜西興平人,碩士,研究方向為計算機網(wǎng)絡及信息安全;通訊作者:孫皓月(1980—),男,河北張家口人,碩士生導師,研究方向為計算機網(wǎng)絡及信息安全。