張麗華,張偉民,劉 春,賈美娟,楊 瑞,鄒雨軒
(1 大慶師范學院 計算機科學與信息技術(shù)學院,黑龍江 大慶 163712;2 大慶油田有限責任公司試油試采分公司,黑龍江 大慶 163712)
隨著電力行業(yè)負荷管理調(diào)整政策出臺,以及信息化水平的不斷提高,重點行業(yè)(如冶金、石油開采等)因電量數(shù)據(jù)殘缺與分類范疇不明等問題,得到了極大的改善。從而為開展電力需求等各項指標相關(guān)聯(lián)問題的研究工作提供了重要的數(shù)據(jù)基礎(chǔ),使該類研究工作的開展成為可能。負荷的大小與特征,對于電網(wǎng)規(guī)劃及電網(wǎng)運行管理,都是極為重要的因素。所以,對負荷的變化和特點,事先估計是電力系統(tǒng)規(guī)劃與運行研究的重要內(nèi)容。
本文采用數(shù)據(jù)挖掘技術(shù),對某地區(qū)主要行業(yè)各類用電負荷的特性及電力負荷特性曲線、指標等因素進行分析,有利于全面掌握該地區(qū)的用電結(jié)構(gòu)及用電特征。其研究結(jié)果可應(yīng)用于電力營銷的用戶分類、電費預(yù)警等相關(guān)工作中。通過進一步研究,負荷特性指標數(shù)據(jù)還可挖掘得到統(tǒng)計指標間潛在的內(nèi)在規(guī)律,給電力系統(tǒng)負荷預(yù)測、電網(wǎng)規(guī)劃和安全穩(wěn)定運行提供相應(yīng)的參考依據(jù)。
數(shù)據(jù)挖掘,是指基于數(shù)據(jù)庫原理、云技術(shù)、機器學習、人工智能、現(xiàn)代統(tǒng)計經(jīng)濟學等跨學科的綜合技術(shù)。伴隨著所涉及學科的增多,其實用價值及應(yīng)用可在很多領(lǐng)域加以展現(xiàn)。所相關(guān)聯(lián)涉及到的算法也多種多樣,諸如神經(jīng)網(wǎng)絡(luò)、決策樹、基于統(tǒng)計學習理論的支持向量機、分類回歸樹和關(guān)聯(lián)分析等。數(shù)據(jù)挖掘的內(nèi)容主要包括分類、關(guān)聯(lián)分析、聚類和異常檢測等。數(shù)據(jù)挖掘技術(shù)[1]是綜合了傳統(tǒng)數(shù)據(jù)分析法與新型復(fù)雜算法的新方法,該方法能在大型數(shù)據(jù)存儲庫之中,自動的發(fā)現(xiàn)有用信息。數(shù)據(jù)挖掘作為數(shù)據(jù)庫知識發(fā)現(xiàn)(KDD)不可缺少的一部分,在整個數(shù)據(jù)庫知識發(fā)現(xiàn)過程中發(fā)揮著重要作用[2]。
“大數(shù)據(jù)”時代的數(shù)據(jù)挖掘,是從大量數(shù)據(jù)的定義中發(fā)現(xiàn)有意義的模式或知識。數(shù)據(jù)挖掘離不開數(shù)據(jù)庫技術(shù)的發(fā)展和成熟,具體地說,對數(shù)據(jù)庫中的原始數(shù)據(jù)進行一系列的計算和分析,得到有用的信息。該過程通常包括數(shù)據(jù)預(yù)處理、數(shù)據(jù)挖掘、后處理3 個方面。其中,數(shù)據(jù)預(yù)處理是指將原始數(shù)據(jù)轉(zhuǎn)換成一種適合分析的形式,包括多數(shù)據(jù)源的數(shù)據(jù)融合、數(shù)據(jù)清理、尺寸標注等。后處理是指對模型預(yù)測的結(jié)果進行進一步的處理和推導。
本文主要分析電力負荷(主要為負荷曲線)的相關(guān)特性,對不同用電特性的用戶加以區(qū)分。目前利用配用電數(shù)據(jù)進行異常用戶檢測、需求側(cè)管理與能效管理、用電客戶精細分類等都需要對負荷曲線進行聚類分析。因此,有必要通過對負荷曲線的聚類對其特性進行分類研究。
聚類分析是對描述對象的信息和相似性進行分析和分組。常用的聚類方法包括K 均值、凝聚層次聚類和DBSCAN 聚類等方法。其作為數(shù)據(jù)挖掘中數(shù)據(jù)篩選的重要方法,在電力行業(yè)中也開始廣泛的應(yīng)用。
聚類分析是對描述對象的信息進行分析,按照數(shù)據(jù)對象的相似性進行分組。常用的聚類方法包括K 均值、凝聚層次聚類和DBSCAN 聚類等方法。其作為數(shù)據(jù)挖掘中數(shù)據(jù)篩選的重要方法,在電力行業(yè)中也開始廣泛的應(yīng)用。周暉、王毅等人利用灰色聚類方法以及K-Means 聚類算法等,不僅對各行業(yè)用電量[3],也對客戶欠費特征數(shù)據(jù)等進行分類[4],為電網(wǎng)公司提供負荷管理和電價制定的依據(jù)。
為了更高效的提供電力服務(wù),對電力負荷的預(yù)測則需要更加精準。傳統(tǒng)BI 已不能滿足現(xiàn)今的需求,而大數(shù)據(jù)分析能更好進行預(yù)測分析,這也是電力大數(shù)據(jù)應(yīng)用與傳統(tǒng)數(shù)據(jù)倉庫和BI 技術(shù)的關(guān)鍵區(qū)別之一[5]。隨著電力系統(tǒng)信息化程度不斷提高,如何合理地利用這些數(shù)據(jù)并從中提取有價值的信息,是目前電力系統(tǒng)面臨的一個重要問題。電力大數(shù)據(jù)是能源變革中電力工業(yè)技術(shù)革新的必然途徑,而不是簡單的技術(shù)范疇;其不僅僅是技術(shù)進步,更是涉及整個電力系統(tǒng)在大數(shù)據(jù)時代下發(fā)展理念、管理體制和技術(shù)路線等方面的重大變革,是下一代智能化電力系統(tǒng)在大數(shù)據(jù)時代下價值形態(tài)的躍升。
“配用電側(cè)”是電力系統(tǒng)數(shù)據(jù)源的主要指標,特別是隨著智能電網(wǎng)技術(shù)的快速發(fā)展,各種先進的檢測裝置和計量設(shè)備在配電網(wǎng)中得到了廣泛應(yīng)用[6]。電網(wǎng)公司的多種不同業(yè)務(wù)系統(tǒng)集成,對數(shù)據(jù)集成系統(tǒng)的多源海量數(shù)據(jù)進行有效的數(shù)據(jù)挖掘是智能電網(wǎng)發(fā)展的必然趨勢。
目前,在新的智能化技術(shù)形勢下,負荷數(shù)據(jù)量急劇加大,數(shù)據(jù)缺失也更加頻繁,本次研究將針對這些問題,采用數(shù)據(jù)準備、數(shù)據(jù)預(yù)處理與數(shù)據(jù)挖掘技術(shù)解決相應(yīng)問題,為電網(wǎng)企業(yè)不斷發(fā)展提供支持。
本研究的技術(shù)路線如圖1 所示,首先研究電力負荷預(yù)測在當下的現(xiàn)狀,主要分析電力負荷(主要為負荷曲線)的相關(guān)特性,并對不同用電特性的用戶加以區(qū)分;然后研究數(shù)據(jù)處理平臺的搭建結(jié)構(gòu)以及設(shè)計新的網(wǎng)絡(luò)層次結(jié)構(gòu),并對所需要分析處理的數(shù)據(jù)做相應(yīng)計算;最后運用k-means 聚類算法,確定“最佳聚類數(shù)”搭建模型,并將其應(yīng)用于某重點行業(yè)(如采油、冶煉加工等)負荷特性預(yù)測分析。
該硬件架構(gòu)如圖2 所示,共計使用3 臺服務(wù)器,每臺服務(wù)器為8*8G 內(nèi)存,2*4T 硬盤,2*E5 處理器,并通過8 口300M TP-link 進行網(wǎng)路連接,以保證數(shù)據(jù)傳輸過程的效率與穩(wěn)定性。軟件環(huán)境主要采用的Hadoop 為基于CentOs 6.7 的2.6 版,通過Yarn[7]分布式計算。
數(shù)據(jù)主要來源于采集系統(tǒng)和調(diào)度系統(tǒng)。主要表關(guān)系如圖3 所示。其中對內(nèi)部數(shù)據(jù)的采集主要包括:
(1)客戶基礎(chǔ)信息數(shù)據(jù)(C_CONS)。用戶數(shù)據(jù)來源此表,其中包含用戶編號、用戶標識、用戶中文名稱、地區(qū)信息、合同容量信息、行業(yè)分類等。此表主鍵為用戶標識,并通過用戶編號與外表進行關(guān)聯(lián)。
(2)日負荷基礎(chǔ)數(shù)據(jù)(E_MP_POWER_CURVE)。本文所使用的日96 點負荷數(shù)據(jù)來源于此表。表中包含計量點編號、采集數(shù)據(jù)類型、96 點實際負荷、電壓電流比率等信息。此表主鍵為計量點編號,并通過主鍵與外表關(guān)聯(lián)。
圖2 硬件架構(gòu)圖Fig.2 Hardware architecture diagram
(3)日電量數(shù)據(jù)(E_MP_DAY_READ)。日電量表底示數(shù)來源此表。表中包含計量點編號、采集數(shù)據(jù)類型、日電量表底示數(shù)、電壓電流比率等信息。此表主鍵為計量點編號,并通過主鍵與外表關(guān)聯(lián)。
(4)計量點基礎(chǔ)信息(E_DATA_MP,C_MP,C_METER_MP_RELA)。計量點信息表包含計量點的ID、倍率、表屬性等信息。
各表間關(guān)系如圖3 所示。
本數(shù)據(jù)取自采集系統(tǒng),采用以O(shè)racle 10g 作為數(shù)據(jù)庫主要版本,導出的數(shù)據(jù)泵文件,通過數(shù)據(jù)泵進行導入導出,其數(shù)據(jù)格式為Dump。鑒于Hadoop 作為數(shù)據(jù)處理主平臺,為了便于HDFS[8]文件系統(tǒng)進行分布式處理,需要進行相應(yīng)數(shù)據(jù)中轉(zhuǎn),將數(shù)據(jù)導入Oracle 后生成Oracle 數(shù)據(jù),通過Sqoop 將數(shù)據(jù)導入Hadoop,最終將其導入Hive[9],具體實現(xiàn)過程如下:
圖3 表關(guān)系圖Fig.3 Table diagram
(1)將Oracle 數(shù)據(jù)由exp/imp 導出至外部存儲(存儲格式為Dump)?;A(chǔ)數(shù)據(jù)以月做數(shù)據(jù)基礎(chǔ)表進行導出;檔案數(shù)據(jù)以整體導出,五地市數(shù)據(jù)存儲于一張表內(nèi)。
(2)根據(jù)數(shù)據(jù)字典創(chuàng)建數(shù)據(jù)表,并在服務(wù)器內(nèi)分配表空間與物理存儲空間。由于單個表文件無法存儲超規(guī)模數(shù)據(jù)量,且固定表的處理效率遠高于自增表,因此共創(chuàng)建100 個數(shù)據(jù)文件。為避免由于表空間不足導致存儲失敗,每個數(shù)據(jù)文件均分配30G的固定存儲空間。建表后創(chuàng)建索引和分區(qū),以便加快后續(xù)查詢速度。
(3)通過數(shù)據(jù)泵將數(shù)據(jù)文件導入Oracle,并通過Sqoop 將數(shù)據(jù)導入HDFS。由于數(shù)據(jù)量大,在數(shù)據(jù)導入Hive 前先將Oracle 中的表增加時間字段以便于分區(qū),利用Linux 的Shell 命令將時間字段加入表中后,將表導入Hive 中,進而在Hive 中對表進行分區(qū)操作,便于數(shù)據(jù)查詢及分析。
3.5.1 數(shù)據(jù)選取
根據(jù)日測量點功率曲線表給出的字段來選取數(shù)據(jù),篩選得到正向有功的數(shù)據(jù);
根據(jù)行業(yè)代碼,選?。ㄈ绮捎?、冶煉加工等)行業(yè)數(shù)據(jù)進行重點分析,經(jīng)篩選得到完整記錄數(shù)據(jù)。
3.5.2 數(shù)據(jù)填補和清洗
“大數(shù)據(jù)”的數(shù)據(jù)量在累積中,面臨數(shù)據(jù)類型繁雜且量級參差不齊,模型無法將其直接使用等問題。因此,需要對數(shù)據(jù)異構(gòu)海量信息進行歸一化處理、存儲與相應(yīng)轉(zhuǎn)換。此外,還需對負荷數(shù)據(jù)值中缺損部分給予及時填充和清洗修正。針對不同數(shù)據(jù)綜合采用以下幾種處理方式:
(1)首末端缺失數(shù)據(jù)處理。若用戶當日的末端數(shù)據(jù)(如某點數(shù)據(jù))缺失,則以該用戶次日首端數(shù)據(jù)進行填補;反之,當用戶首端數(shù)據(jù)缺失,則以該用戶前日末端數(shù)據(jù)進行填補。
(2)單個數(shù)據(jù)空缺處理。在已知當日單個缺失數(shù)據(jù)前后負荷點數(shù)據(jù)時,可借助列插值法,即該點數(shù)據(jù)前后均值來填補數(shù)據(jù)。
(3)連續(xù)多個數(shù)據(jù)缺失處理。利用行插值法,需要考慮到缺失數(shù)據(jù)個數(shù)的奇偶性。若尋找的數(shù)據(jù)在中間有連續(xù)多個數(shù)據(jù)缺失時,需尋找缺失數(shù)據(jù)1/2 中心點數(shù)據(jù)。再由此方法,依次找尋1/4 和3/4點處的數(shù)據(jù)。重復(fù)該操作,即可補全所缺失數(shù)據(jù)。
(4)刪除空缺值多的記錄。經(jīng)由數(shù)據(jù)填補之后,仍有記錄存在大量空缺,則進行刪除處理。表中有用字段對應(yīng)數(shù)據(jù)缺失值過多時,填補等方法將不能起到相應(yīng)作用,且無法保證填補數(shù)據(jù)的有效性,將其刪除以減小計算誤差。
(5)刪除表中的無效記錄。首先刪除表中含有負值記錄,其次刪除表中數(shù)據(jù)全為0 的記錄,最后刪除表中出現(xiàn)極大值的記錄。
3.5.3 數(shù)據(jù)歸一化
根據(jù)聚類方法的要求,采用數(shù)據(jù)歸一化方法對日負荷數(shù)據(jù)進行處理,將數(shù)據(jù)限制在0~1 范圍內(nèi)。數(shù)據(jù)歸一處理主要解決數(shù)據(jù)的可比性,常用的有“最大最小值化”、“0 均值標準化”和“極大值標準化”等。經(jīng)過歸一化處理,方便進行研究分析。本研究采用數(shù)據(jù)歸一化方式的極大值標準化。極大值標準化可由式(1)表示:
式中,為標準化后的數(shù)據(jù),xij為聚類元素所對應(yīng)的原始數(shù)據(jù)。經(jīng)式(1)處理后,最大值為1,其余各值均小于1。
采用年最大負荷作為極大值,會導致對異常數(shù)據(jù)的極度敏感,可以通過前期對數(shù)據(jù)異常值的清洗消除影響。因此,采用其作為歸一化極大值指標。
4.1.1 k-means 聚類算法
采用k-means 方法對用戶的日負荷曲線進行聚類,能獲取反映行業(yè)特性典型的日負荷曲線。kmeans 可以處理數(shù)據(jù)量較大的情況,是基于劃分的計算方法,時間復(fù)雜度較低,在給定k 值后,可以較快的完成收斂;其次,該算法較為簡單,不需要復(fù)雜的邏輯和方法;此外,對足夠大的數(shù)據(jù)量進行聚類,可以保持結(jié)果準確一致,與初始隨機選擇的聚類中心無關(guān)。
4.1.2 基于評價指標的最佳聚類數(shù)確定
聚類有效性研究是通過建立有效性指標,評價聚類質(zhì)量并確定最佳聚類數(shù)的過程。本文選擇運算復(fù)雜度較低的SSE 和CC 這二類完全相反的指標,作為選取最佳聚類數(shù)的考核指標。
(1)數(shù)據(jù)計算和抽取生成周負荷曲線。計算每日最大負荷,選取連續(xù)7 天日最大負荷生成周負荷曲線。
(2)取不同聚類數(shù)k(初始值取2,逐次增加1),采用k-means 聚類方法對周負荷曲線進行聚類。
(3)聚類結(jié)果采用R 語言計算SSE 和CC 指標,根據(jù)指標趨勢圖獲取最佳聚類數(shù)k。
本研究利用k-means 聚類方法,對特殊行業(yè)負荷特性進行分析,及對行業(yè)用戶某點日負荷數(shù)據(jù)進行預(yù)處理。綜合處理步驟如下:
(1)篩選某點日負荷數(shù)據(jù),并進行數(shù)據(jù)填補與清洗。
(2)按日期對該行業(yè)或其子行業(yè)的所有用戶日負荷加和,計算該行業(yè)或其子行業(yè)每日綜合日負荷曲線,進行初步挖掘分析。
(3)關(guān)聯(lián)每個用戶檔案,以便于獲取其年最大負荷,并采用極大值標準化方法,對數(shù)據(jù)作歸一化處理。
(4)通過SSE 和CC 指標,計算該行業(yè)最佳聚類k,隨機選取初始聚類中心,對預(yù)處理后數(shù)據(jù)進行kmeans 聚類。
(5)隨機更換初始聚類中心,進行k-means 聚類。
(6)對不同初始聚類中心的聚類結(jié)果進行評價,選取最優(yōu)聚類結(jié)果。
(7)根據(jù)最優(yōu)聚類結(jié)果,對該行業(yè)用戶日負荷特性進行分類,分析其生產(chǎn)特性并給出典型用戶。
將負荷特性分析結(jié)果用于標簽體系庫建設(shè)的應(yīng)用;將聚類結(jié)果進行整理并以標簽庫形式展現(xiàn)。如,冶煉加工行業(yè)標簽庫界面如圖4 所示。
圖4 標簽庫界面Fig.4 Tag library interface
本文提出的基于大數(shù)據(jù)的用戶負荷特性分析系統(tǒng)的總體架構(gòu),以相對較為穩(wěn)定的日96 點電力負荷數(shù)據(jù)建立分類模型,獲得針對某個重點行業(yè),如采油、冶煉加工等典型場景用電負荷特性。通過實驗仿真SSE 和CC 等指標變化圖,實現(xiàn)對該行業(yè)用電特征分析;再抽取該行業(yè)用戶用電特征,建立用戶用電行為標簽庫,有利于網(wǎng)絡(luò)收斂與穩(wěn)定,提高負荷數(shù)據(jù)聚類化。