李磊,賀易,周正,陳璞,詹鵬,杜旭光
(1.國網湖北省電力有限公司 信息通信公司,湖北,武漢 430077;2.北京國網信通埃森哲信息技術有限公司,北京 100031)
隨著智能電網的快速發展,以大數據技術為基礎的電力系統已成為電力行業發展的關鍵,其運行產生的海量異構數據已成為數據分析和挖掘的關鍵[1-2]。其中,電力用戶的核心大數據由于實時性高、數據敏感度強等特點[3],迫切需要對其進行安全隱私保護。數據匿名化[4]通過對數據敏感部分特別處理,達到隱私保護的目的,現已成為大數據隱私保護的重要方式。目前常用的匿名化手段包括加密、模糊泛化、消去等,其中分組匿名化是最常用的數據匿名化技術[5-6]。
常用的分組匿名化有k-匿名化和l-多元化匿名化框架。這些匿名化算法均使用在小規模數據。針對這一問題,卞超軼等[7]基于分布式內存計算引擎Spark實現大數據匿名化,處理效率和匿名化隱蔽性得到極大提升,但存在數據丟失現象。為進一步提升電力用戶核心大數據匿名化的隱蔽性,本文在此基礎上,利用核熵成分分析的降維作用[8],提出一種新的分組數據匿名化算法,并通過具體事例分析,對其進行研究。
本文采用算法以分組匿名化為基礎。分組匿名化核心思想是構造匿名記錄組,使得在同一記錄組內,多條數據難以區分。采用的核熵成分分析方法通過核函數學習方法和信息熵結合,特征分解核矩陣,選擇對信息熵貢獻最大的特征向量的投影方法投影。
基于核熵成分分析方法的電力用戶核心大數據匿名化是通過核熵成分分析方法將用于識別個體身份的準標識符映射到高維空間,具體映射方法為設電力用戶核心大數據的準標識符為[x1,x2,…,xM]T,其中,M代表準標識符的個數。經非線性映射φ:xi→φ(xi),將數據映射到高維特征空間,即:
Φ(x)=[φ(x1),…,φ(xM)]
(1)
首先,選擇對二次Renyi熵貢獻值較大的l個特征值與特征向量,通過式(2)獲得新的高維空間準標識符數據,
(2)
其中,Dl為特征值,El為特征向量。
然后,在高維空間,將所涉及的準標識符數據的屬性全部模糊化,確保全部數據條目完全統一。接著依次選擇屬于準標識符的屬性提升公開信息循環,不斷劃分數據,保證k-匿名化需求,直至迭代不能滿足k-匿名化需求停止。準標識符屬性有2種,即數值屬性和類別屬性。其中,數值屬性是通過選擇中位數二分數據,類別屬性則依據具體類別數劃分。
本文選擇Hadoop平臺對電力用戶核心大數據進行匿名化管理。Hadoop是基于一種分布式系統基礎架構設計的數據管理平臺。在Hadoop集群中,其中一個主控節點管理著集群的運行,并協調從結點來實現數據計算功能。Hadoop系統初始核心組件主要為MapReduce并行框架和HDFS分布式文件系統,經過發展,目前已經集成了HBase分布式數據管理系統、Sqoop關系數據交換工具以及各類數據處理工具,成為一個大型數據處理生態群[13-15],如圖1所示。

圖1 Hadoop生態系統
本文數值屬性劃分采用中位數的方式進行,為避免快速排序在確定中位數的時間復雜度,本文通過統計每種取值出現的次數定位中位數的方式。實現方法為采用一個隊列機理,然后繼續劃分子數據集,接著依照順序從隊列中取出迭代進行。
為驗證基于核熵成分分析的電力用戶核心大數據匿名化算法的有效性,通過具體事例進行分析。
本事例選擇某省2018年9~10月的部分電力用戶核心數據作為實驗樣本,涉及年齡、郵編、婚姻狀態、性別和用電量。其中,核心數據的敏感信息為用電量,非敏感信息為年齡、郵編、婚姻狀態、性別。其中,非敏感信息泄露會導致電力用戶核心數據用電量泄露。事例中,2個為數值屬性,其余3個為類別屬性。在實驗過程中,數據集通過文本文件形式放在HDFS中。系統采用常用的數據集Adult進行。具體如表1所示。

表1 某省部分電力用戶核心數據
通過核熵成分分析方式,將數值信息映射到高維空間,然后進行處理。處理方式如圖2所示,以郵編、年齡作為數值屬性數據集,采用核熵成分分析方法,達到2-匿名化要求。其中,(a)為數據分布情況,“☆”為數據條目,模糊化后用“*”表示。依照郵編屬性進行數據劃分,左側初始的“*”變化為“≤30K”,右側為“>30K”。然后再對數據子集選擇年齡屬性再次進行劃分,得到左下方數據初始“*”為“≤50”,左上方側為“>50”。對其右側數據子集依據年齡屬性再次進行劃分,如圖(b)。其中,右下方年齡屬性變化為“≤54”,右上方數據年齡屬性變化為“>54”。此時不能再進行任何劃分,獲得年齡屬性“>50”,郵編屬性為“≤30K”。
(1) 隱蔽性分析
為了驗證電力用戶核心大數據的隱蔽性,本文通過隱私泄露進行分析,具體結果如圖3所示。對比數據為基于Spark的電力用戶核心大數據匿名化所得的結果。
對比圖3可知,相對于基于Spark的電力用戶大數據匿名化系統,基于核熵成分分析的電力用戶核心數據隱蔽性更佳,隱私泄露比例更少。這主要是由于核熵成分分析將信息量較大的主元數據映射到高維空間,在高維空間進行主元分析,可以有效規避對所有信息進行隱蔽產生的數據丟失現象,提高核心大數據的隱蔽性。
(2) 處理效率分析
為了分析電力用戶核心大數據匿名化系統進行處理的效率,體現大數據處理優勢,對原有的數據集進行復制3 000倍,并對復制數目的數值隨機修改。本文采用本算法系統和基于Spark的系統進行相同處理,并記錄其用時,每次數據集重復進行10次,具體結果如圖4所示。

(a)

圖3 隱蔽性對比分析
根據圖4可知,采用基于核熵成分分析的電力用戶核心大數據匿名化算法具有更高的處理效率。
針對電力用戶核心大數據,本文引入了基于核熵成分分析的匿名化算法進行處理,結果顯示:

圖4 處理效率對比圖
(1) 將信息量較大的主元數據映射到高維空間,在高維空間進行主元分析的降維方法,可以很好地應用在電力用戶核心大數據匿名化研究中;
(2) 基于核熵成分分析的電力用戶核心大數據匿名化,具有更高的隱蔽性和更快的數據處理效率。