999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Spark框架的電力大數據清洗模型*

2017-12-21 05:32:06王沖鄒瀟
電測與儀表 2017年14期
關鍵詞:檢測

王沖,鄒瀟

(1.國網內蒙古東部電力有限公司信息通信分公司,呼和浩特010020;2.蘭州大學 數學與統計學院,蘭州730000)

0 引 言

電力大數據具有數量大、維度高,數據模式繁多等特征,在電力大數據的采集過程中,其不可避免的存在異常數據,對電力大數據清洗有很強的必要性[1]。國內外對電力大數據清洗研究主要有聚類和關聯分析[2]、條件函數依賴[3]、馬爾科夫模型[4]、DS證據理論[5]。大部分數據清洗技術都需要依賴數據模型本身構建異常數據識別規則,對檢測到的異常數據做刪除或均值填充處理,其缺點就是:破壞了數據的連續性、完整性、準確性。

針對以上電力大數據清洗難點,本文提出一種基于Spark框架的電力大數據清洗模型。相比一些電力大數據清洗模型,本文數據清洗模型減少人為干預,不需要根據數據關系模式設定識別規則,異常識別算法依賴于歷史數據中的正常樣本數據,且對異常數據修正是建立在其同一時間序列數據分析的基礎上,最終能夠實現對歷史或實時數據中的異常數據清洗。

1 基于Spark框架的電力大數據清洗模型

電力大數據清洗是對檢測到的電力大數據中異常數據進行修正的過程,利用Spark框架構建電力大數據清洗模型時分為以下幾個階段:數據準備、正常簇樣本獲取、異常數據識別、異常數據修正、修正數據存儲。數據準備即將存儲在傳統關系型數據庫中的數據轉存在適合于大數據處理的非關系型數據庫中,然后加載到Spark的彈性分布式數據集(RDD)中;通過抽取一定數量的電力大數據樣本,應用層次聚類算法將其中的異常點抽取,獲取可用于實現邊界樣本異常識別算法的正常樣本簇;異常數據識別是建立在邊界樣本的基礎上,通過邊界樣本異常識別算法完成對電力大數據中的異常數據檢測;異常數據修正完成對檢測到的電力大數據中的異常數據的修復。清洗步驟如下:

(1)數據準備:將數據存儲在分布式文件系統HDFS中;

(2)從分布式文件系統上讀取數據并執行cache操作生成RDDs,將數據讀入到內存;

(3)利用改進的并行 CURE聚類算法獲取正常簇;

(4)從正常簇中選取邊界樣本數據;

(5)設計基于邊界樣本的異常數據識別算法,并對測試樣本識別異常數據;

(6)標記異常數據所在檢測樣本中的位置;

(7)對異常數據應用指數加權移動平均數進行修正;

(8)形成修正數據集并保存。

基于spark框架的電力大數據清洗模型框架如圖1所示。

圖1 基于spark框架的電力大數據清洗模型Fig.1 Data cleaning model for power big data based on Spark framework

本文接下來針對電力大數據清洗模型中的幾個核心步驟進行分析。首先詳細描述了改進CURE聚類算法獲取正常簇;其次介紹了邊界樣本的選擇過程,并對邊界樣本的異常數據識別算法進行了詳細分析;最后闡述了指數加權移動平均數對異常數據進行修正。本文在最后給出了實驗驗證及分析,并對本文工作進行總結并指出進一步的研究方向。

2 正常簇樣本獲取算法

在對電力大數據進行異常識別時,由于電力大數據在采集過程中采集設備具有數據校驗功能,因此采集的數據大多為正常數據,異常數據較少,同時電力大數據的種類繁多導致不能直接構建單一規則或設定閾值進行異常識別[9]。直接對采集上來的電力大數據進行異常識別計算量大且識別效率低。因此可以從電力大數據歷史數據樣本中獲取正常樣本簇,在正常簇的邊界樣本集的基礎上對歷史或實時電力大數據進行異常識別,這種異常識別不依賴數據屬性閾值及屬性數學模式規則,同時可提高檢測的效率。

CURE聚類算法在對測試樣本進行聚類時通過消除離群點降低對聚類結果的影響,可通過CURE聚類算法對測試樣本進行聚類獲取正常樣本的聚類簇。CURE聚類算法分別在兩個階段對離群點進行刪除:第一階段是在聚類增長非常緩慢的類作為離群點刪除;第二階段是在聚類結束時將對象數據明顯少的類作為離群點刪除。但是通過CURE聚類算法對離群點進行刪除時存在以下兩個問題:

(1)很難對聚類過程中增長緩慢的類做界定,對這里離群點何時刪除,如何界定增長緩慢[7];

(2)對離群點刪除后因局部數據的分布特征存在掩蓋現象[8]。

針對CURE聚類算法剔除異常點時存在的問題,本文使用離群程度用于判定離群點,可有效解決增長緩慢的離群類難界定及局部離群點被淹沒的現象。相關定義如下:

定義1:對每個劃分的數據塊進行聚類,得到的數據簇表示為pi(mpi,wi),其中pi表示塊中第i個簇,表示為第i個簇的中心點,mpi表示每個中心點的權重值,wi是每個簇中數據的個數。因此每個劃分的數據塊可以使用若干個代表,pi稱為代表點。

定義2:設代表點的集合為P,每個代表點pi的中心點到簇外任意一點的偏差距離表示為離群程:

用歐氏距離表示一個點的偏離程度,當某點離簇中心點越遠,則離群程度值越大。

定義3:設離群程度集為D,定義離群程度判定值為:

定義4:設離群參數為,離群程度最小值為:

定義5:對于離群程度集D中任意,若,則所對應的代表點為離群點,其所在的簇中的數據即為離群數據。

算法基本思想是:首先從數據集中抽取一個隨機樣本,且樣本的選擇應該具有代表性;其次,將樣本劃分為若干個相同大小的數據集;對劃分完成首次聚類,得到m/q各簇,然后計算簇中每個點的離群程度判定值(AD)及離群參數(δ);刪除不滿足的離群點;然后對m/q個簇進行第二次聚類,同時刪除簇中樣本點明顯少的類,最后將所有剩余的數據點指定到最近的簇,完成聚類,得到正常簇樣本。

3 基于邊界樣本的異常數據識別算法

本文提出了基于邊界樣本的異常數據識別算法,首先通過獲取正常簇的邊界樣本集;然后根據異常數據識別算法檢測異常數據;最后標記異常數據并記錄所在位置。異常數據識別是對電力大數據中歷史或實時流數據中的異常數據檢測的過程,是建立在正常簇的邊界樣本的基礎上。每個正常簇的邊界樣本必須具有以下特點:(1)距離質心最遠;(2)分散在正常樣本的四周;(3)能夠代表正常樣本的形狀。

對于正常簇樣本如何保證其選擇的邊界樣本點能夠分散在正常簇樣本的四周,符合邊界樣本分布特點,下面給出其相關數學證明。

證明1:在一個三角形中,位于底邊中垂線上的頂點使得到其底邊兩點距離之和最短,且周長最短。圖2給出了三角形頂點在中垂線上和不在中垂線上的情況。

圖2 三角形頂點分布Fig.2 Triangle vertex distribution

在三角形TAB中,高為b,底邊|AB|=2a,頂點坐標為T(x,b),現在需要證明位于中垂線上的頂點T使得|TA|+|TB|值最小。根據公式可得:

公式兩邊求導數可得:

通過對公式求極值,當x=0時,可以得到distance(|TA|+|TB|)取得極小值,。

證明2:橢圓上一點M使得到橢圓上其他兩點C和B距離之和最大。

圖3給出了橢圓形數據節點的分布示意。

圖3 橢圓型數據點分布Fig.3 Elliptic data point distribution

長軸長為2m,短軸長為2n,|BC|=2a,設MN為距離BC最遠點所在的直線,|MN|=b,假設M`為距離邊BC兩個短點距離之和最大的點,根據證明可以得出。

通過式(7)可以看出M`不會出現在B、C半徑為周圍。因此如果選擇B、C作為代表點,M`也可以作為代表點,使得M`、B、C作為代表點足夠分散。

在對邊界樣本點進行選擇時,應保持邊界樣本點的特點,下面給出邊界樣本的選擇過程:

步驟1:計算簇的中心點,m為簇的點個數;

步驟2:第一個邊界樣本點為離中心點最遠的點,第二個邊界樣本點為離第一樣本點最遠的點,i為最大點距離下標,j第二個樣本點下標;

步驟3:接下來選擇的邊界樣本為離前兩個樣本點距離之和最大的點,直到選取的樣本點能夠代表聚類簇,則選擇停止。

正常簇的邊界樣本選擇過程如圖4所示。

式(4)~式(6)經過加減處理后可得:

圖4 正常樣本簇的邊界樣本選擇過程Fig.4 Selection process of border cluster sample of normal sample

設正常簇樣本的邊界樣本集為B={b1,b2,…,bn},正常簇樣本的邊界樣本集的獲取已在上文提及,正常簇樣本的識別半徑為rs。待測試樣本為T={t1,t2,…,tm},該測試樣本可為信息機房監測數據歷史樣本或信息機房實時監測數據。S為識別出的非異常監測信息,N為識別出的異常監測信息。

以邊界樣本集作為平面檢測器,異常信息識別規則表示為:

式中l1為待識別樣本點到邊界樣本的距離序列最小值;l2為待識別樣本到邊界樣本距離最遠點距離值;dm為待識別樣本到質心距離;r為正常簇樣本的識別半徑。

邊界樣本點分散在聚類簇的四周,能夠表示聚類簇的形狀。利用正常簇的邊界樣本來識別待檢測樣本,可以減少異常識別算法的計算量。針對異常信息識別規則,基于邊界樣本的異常識別算法的具體實現步驟如下:

算法輸入:待識別樣本T={ti,i∈[1,m],m為待識別樣本總數},邊界樣本集B={bj,j∈[1,n],n為邊界樣本總數},正常簇樣本ki的質心m;

算法輸出:異常數據信息Q;

步驟1:計算待識別樣本點ti到邊界樣本點bj的距離,構成距離序列dist,dist={d1,d2,…,dn};

步驟2:計算正常簇樣本的識別半徑rs;

步驟3:查找距離序列dist中最小值l1=min(di);

步驟4:在邊界樣本里查找與待識別樣本點ti距離最遠點bk,計算ti到bk距離l2=distance(ti,bk);

步驟5:如果l1>=l2,則待識別樣本點ti為異常數據;若l1<l2,則執行步驟6;

步驟6:計算ti到正常簇樣本ki的質心m的距離,dim=distance(ti,m);

步驟7:如果dim>rs,則待識別樣本點ti為異常數據;若dim<=rs,則待識別樣本點ti為正常數據;

步驟8:標記異常數據所在樣本中的位置,并將信息進行反饋;

步驟9:重復執行步驟1~步驟8,直到所有待識別樣本都識別完畢;

步驟10:輸出所有異常信息,并做下一步處理。

通過邊界樣本異常識別算法,在進行異常識別時,不必設置異常識別的閾值,同時可以避免因使用數據模式帶來的復雜性,可以提高異常識別的效率。

4 基于時間序列分析異常數據修正

電力大數據是在一定時間周期內采集的數據的積累,電力大數據因其種類多,隨時間變化一般呈現三種規律:周期變化型數據、幅值變化較小型數據、緩慢增加型數據[10]。

對異常數據進行修正時要根據異常數據所在數據區間數據特點及異常數據表現形式,對不同類型的異常數據進行分析修正。對緩慢增加或衰減型電力大數據中的異常數據進行修正時,選取的參考數據序列為異常數據所在序列的[n,m]區間;對周期性變化型電力大數據中的異常數據進行修正時,選取的數據序列為包含異常數據在內的n個周期內的異常數據所在的時刻t的數據序列。

在對異常數據進行修正時,一般采用的方法是使用該異常數據所在序列的平均數進行代替。這時修正的值為,式中xi是對給定的一個權值。但是,某一序列值對后面序列值的影響作用是衰減的,而不是一直是。因此對異常數據進行修正采用指數加權移動平均數:

5 實驗及結果分析

本文采用“Spark On Yarn”集群模式構建電力大數據清洗模型實驗環境,實驗采用6臺服務器組成數據清洗集群節點,其中一個節點為Master,其余五個節點分別為 Slave1-Slave5,每個節點的配置見表2。每個服務器節點采用Ubuntu-12.04.1操作系統,使用 Hadoop-2.6.0,Spark-1.3.1,Scala-2.10.5,JDK-1.7.0_79搭建節點的軟件環境。實驗平臺在Scala的Intellij Idea開發環境上進行開發實現,以hadoop的hdfs實現數據結果的存儲。

以某風電場風力發電監測數據作為數據清洗研究對象。該風力發電監測數據大小為5 GB,分別從5臺風力發電機采集,采集間隔為1 s,記錄了從2012年2月1日到2012年2月29日風力發電監測數據。

集群配置具體如下:

服務器類型:刀片型。服務器數量:6。

內存:6×128 GB。CPU核數:6×16。

網卡速率:1 Gbit/s。硬盤容量:6×1 T。

處理器類型:Intel Xeon 2.00 GHz。

本文將從異常識別的準確性、異常修正的效率對電力大數據清洗模型進行驗證分析。

實驗1:針對正常樣本獲取過程中離群點刪除算法,本文測試了幾種離群點檢測算法的檢測率和誤檢率,測試結果見表1。與Apriori算法相比,本文算法在檢測率相似的情況下,誤檢率較低。

表1 離群點檢測算法比較Tab.1 Comparison of outlier detection algorithms

實驗2:為了驗證電力大數據異常識別算法的檢測異常數據正確性,實驗保持集群節點數固定,不斷調整測試數據樣本大小,檢測算法的準確率,結果如表2所示。模型檢測到了大部分的異常數據。

表2 電力大數據異常識別算法的準確率測試Tab.2 Accuracy test of power big data anomaly identification algorithm

實驗3:為了驗證電力大數據清洗模型的高效性,測試了傳統單機數據清洗與基于Spark框架的電力大數據清洗模型不同數量的清洗所需要的時間。集群節點數固定,不斷調整待清洗數據樣本大小,測試數據清洗時間,測試結果見表3。

表3 單機及并行數據清洗清洗時間比較Tab.3 Cleaning time comparison of single with parallel data cleaning

實驗4:固定測試數據樣本大小,從中隨機抽取15 000條數據作為實驗測試樣本,正常簇樣本個數為5,每個正常樣本簇的邊界樣本個數分別為25,35,45,55,65,在待識別樣本數目固定的情況下,對上述測試樣本采用基于邊界樣本的異常信息識別方法進行異常信息識別,檢測正常樣本簇的邊界樣本個數對檢測結果的影響,結果如表4所示。

表4 基于邊界樣本的異常信息識別方法實驗結果Tab.4 Experimental results of information identifying based on abnormal samples boundaries

6 結束語

本文分析了電力大數據清洗過程中的若干難點,并針對電力大數據的特點及清洗難點提出了基于Spark框架的電力大數據清洗模型。該清洗模型具有以下特點:

(1)異常數據識別無須外源數據;

(2)異常數據識別及修正準確性高;

(3)利用并行Spark大數據處理框架,具有高效性。但是,本文在選取正常簇的邊界樣本時仍然存在問題,即何時達到最優邊界樣本數;其次,對異常數據的修正是建立在同一時間序列的樣本上,若該時間序列出現異常對異常數據修正的準確性仍會有影響。針對以上解決問題需要在以后的工作中進一步探討優化并完善電力大數據清洗模型。

猜你喜歡
檢測
QC 檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
“有理數的乘除法”檢測題
“有理數”檢測題
“角”檢測題
“幾何圖形”檢測題
主站蜘蛛池模板: 性色一区| 国产精品自在自线免费观看| 欧美日韩综合网| 狠狠色婷婷丁香综合久久韩国| 国产不卡网| 欧美亚洲国产精品第一页| 亚洲国产91人成在线| аv天堂最新中文在线| 国产精品偷伦在线观看| 青青网在线国产| AV无码一区二区三区四区| 美女潮喷出白浆在线观看视频| 亚洲A∨无码精品午夜在线观看| 国产成人在线小视频| 天堂成人在线| 亚洲欧美成人影院| 精品精品国产高清A毛片| 91精品情国产情侣高潮对白蜜| 青青草原国产精品啪啪视频| 亚洲色精品国产一区二区三区| 欧美一区中文字幕| 国产91小视频| 久操线在视频在线观看| 国产高清精品在线91| 亚洲成在人线av品善网好看| 欧美区国产区| 日本手机在线视频| 中国黄色一级视频| 多人乱p欧美在线观看| 九色在线观看视频| 亚洲国产精品不卡在线| 精品综合久久久久久97超人| 国产成人精品一区二区秒拍1o| 国产在线视频自拍| 精品一区二区三区水蜜桃| 国产伦片中文免费观看| 国产在线视频导航| 亚洲国产91人成在线| 日韩欧美中文字幕在线精品| 亚洲精品视频免费看| 亚洲欧美日韩精品专区| 58av国产精品| 亚洲αv毛片| 自偷自拍三级全三级视频| 色综合成人| 欧美精品不卡| 免费A级毛片无码免费视频| 国产成人久视频免费| 亚洲欧美日韩高清综合678| 欧美国产菊爆免费观看 | 免费看黄片一区二区三区| 伊人蕉久影院| 国产成人精品男人的天堂| 久久永久视频| 人妻91无码色偷偷色噜噜噜| 欧美成a人片在线观看| 亚洲第一成年人网站| 人人澡人人爽欧美一区| 亚洲成aⅴ人片在线影院八| 色网站免费在线观看| 五月婷婷激情四射| 无码中文AⅤ在线观看| 亚洲伊人电影| 2019年国产精品自拍不卡| 亚洲熟妇AV日韩熟妇在线| 精品99在线观看| 中字无码av在线电影| 91视频国产高清| 欧美成人精品高清在线下载| 五月激情婷婷综合| 99久久人妻精品免费二区| 无码高潮喷水在线观看| 在线观看国产精美视频| 精品自拍视频在线观看| 久操线在视频在线观看| 国产免费观看av大片的网站| 老司机久久精品视频| 欧美人与性动交a欧美精品| 亚洲综合极品香蕉久久网| 国产激情影院| 1769国产精品免费视频| av在线人妻熟妇|