蔡子偉,徐正全,王曉艷
武漢大學 測繪遙感信息工程國家重點實驗室,武漢430079
智能電表作為推動電網(wǎng)的信息化、智能化、自動化建設的重要設備,與人們的日常生活息息相關。智能電表數(shù)據(jù)為電力資源的計量計費、電力資源的區(qū)域性分配以及第三方的數(shù)據(jù)挖掘分析等應用提供強有力的數(shù)據(jù)支撐。但細粒度的電力消費數(shù)據(jù)也導致了用戶隱私信息暴露在攻擊者面前。攻擊者通過挖掘電力波形變化,可以得到用戶家庭不同負載的使用情況,從而在一定程度上獲取用戶的行為模式和作息習慣、家庭經濟與收入狀況以及個人偏好和生活習慣等信息,存在嚴重的隱私泄露風險[1-2]。因此,智能電表隱私保護本質上是對用電模式的保護,而不是傳統(tǒng)意義上對于單點數(shù)值的保護。
數(shù)據(jù)擾動方法在半可信或不可信的環(huán)境下,通過對原始數(shù)據(jù)添加擾動來提高機密性,能夠在一定程度上調和隱私安全性和數(shù)據(jù)可用性的矛盾,是智能電表隱私保護的主流方法之一。向原始數(shù)據(jù)中添加加性或乘性隨機噪聲來實現(xiàn)安全性和可用性的權衡是一種典型的方法[1-4]。例如Vukovic 等[3]向數(shù)據(jù)中添加隨機噪聲,模糊單點數(shù)據(jù)的同時,又保證聚合數(shù)據(jù)的精確性。充電電池技術也廣泛應用于智能電表隱私保護領域[1-2,5-6],Backes等[5]利用充電電池產生額外的充放電擾動來隱藏消費事件或單個電器的負載特征,提高了模式隱私的安全性。此外,2006 年Dwork[7]提出了一種可證明的隱私度量方法,這種差分隱私技術也成為數(shù)據(jù)隱私保護的常用手段[8-9]。ács等[8]提出了一種基于差分隱私與同態(tài)加密技術的電力數(shù)據(jù)聚合算法,可以實現(xiàn)在密文域的數(shù)據(jù)聚合。當前基于數(shù)據(jù)擾動的智能隱私保護方法能在一定程度上保障用戶隱私的安全性,但仍然存在一些問題:一方面,現(xiàn)有的算法沒有考慮到智能電表隱私泄露的特殊性,對模式的保護力度不足;另一方面,當前隱私保護算法專注于數(shù)據(jù)的安全性而忽略了智能電表數(shù)據(jù)本身在不同應用領域的可用性保障。
針對上述存在的問題,提出了一種基于時間擾動的智能電表隱私保護方法。本文給出了智能電表數(shù)據(jù)的時延模型,并對其進行了理論分析,通過錯開電表的數(shù)據(jù)采集和發(fā)布時間模糊消費事件,破壞電器的負載特性。該方法的優(yōu)勢主要體現(xiàn)在三個方面:基于時間擾動的隱私保護方案利用了智能電表數(shù)據(jù)隱私特性,從模式保護的角度出發(fā)提高智能電表數(shù)據(jù)的隱私安全性;本文算法在保護智能電表隱私的同時,也保證了處理后的消費數(shù)據(jù)在計量計費和數(shù)據(jù)聚合挖掘上的可用性;采用了ECO數(shù)據(jù)集[10],利用真實的智能電表消費數(shù)據(jù)證明方案的可行性,同時利用非侵入式負載監(jiān)測算法作為攻擊手段驗證算法的安全性。
數(shù)據(jù)擾動是目前智能電表隱私保護最常用的一種方法,常用的數(shù)據(jù)擾動主要包括隨機擾動、充電電池、差分隱私等。通過擾動原始數(shù)據(jù)實現(xiàn)有效的數(shù)值破壞來達到隱私保護的目的。
隨機擾動是指通過給用戶實時電量添加隨機噪聲,使得用戶的實時電量數(shù)據(jù)不暴露給外界。隨機擾動方法通過直接添加隨機噪聲n 對每個記錄數(shù)據(jù)進行模糊化處理,從而實現(xiàn)對整體消費曲線的擾動,其基本表達式為:
隨機擾動方法的計算開銷小,但隱私保護強度較差,同時隨機加入的噪聲會影響到電力公司的正確計費以及電力數(shù)據(jù)挖掘實用性。
充電電池[11]的基本思想就是利用一個獨立的儲能設備向電力消費數(shù)據(jù)中添加額外的充放電操作來隱藏電力事件或者電器的負載特征,其本質就是通過對部分消費數(shù)據(jù)的時間搬移,在保證計費周期內用戶總耗能不變的同時,實現(xiàn)對智能電表電力波形的破壞,從而起到保護用戶隱私的目的。若用c 表示充電電池總容量,用b 表示當前時刻的電池電量,則充電電池的基本模型為:
充電電池主要有兩個功能:接收來自電力公司的電能并進行存儲;為智能電器提供電能。如圖1 所示,智能電器可以單獨或同時接收來自電力公司和充電電池的電能。來自電力公司的電能經過充電電池中轉,使得智能電器的原始電力消費數(shù)據(jù)分解到不同的時間點上,導致智能電表獲取的電力消費數(shù)據(jù)不能直接反映真實的用電信息,模糊了用戶電力消費波形,從而保證了用戶隱私的機密性。相比于隨機擾動方法,充電電池方法的優(yōu)點是計算開銷小,隱私保護強度相對較好,缺點是成本高。
圖1 充電電池工作原理
差分隱私保護[12]基本思想是單個記錄在數(shù)據(jù)集中或者不在數(shù)據(jù)集中,對計算結果的影響微乎其微。所以,一個記錄因其加入到數(shù)據(jù)集中所產生的隱私泄露風險被控制在極小的、可接受的范圍內,攻擊者無法通過觀察計算結果而獲取準確的個體信息,ε-差分隱私[13]的形式化定義如下:
假設存在隨機算法M ,對于任意兩個鄰近數(shù)據(jù)集D 和D′,以及M 所有可能輸出構成的任意子集O,若算法滿足:
則稱算法M 滿足ε-差分隱私保護,其中Pr[?]和ε 分別表示概率密度函數(shù)和隱私保護預算。
差分隱私定義了極其嚴格的攻擊模型,并對隱私泄露風險進行了嚴謹?shù)臄?shù)學證明和定量化表示,是目前隱私保護領域的主流算法。它能夠提供有效的單一數(shù)值保護,同時保證數(shù)據(jù)集統(tǒng)計規(guī)律的準確性。但由于智能電表數(shù)據(jù)隱私的獨特性,其用戶隱私不是某個數(shù)值或單條記錄,而是隱含在整個數(shù)據(jù)序列的變化規(guī)律中。因此單一的差分隱私往往無法對智能電表數(shù)據(jù)提供有效的模式保護,目前主要通過差分隱私結合同態(tài)加密的方案來實現(xiàn)隱私安全性的優(yōu)化。引入同態(tài)加密雖然能提供較好的隱私保護強度,但也極大地增加了計算復雜度,使得計算開銷很大,此外加密也降低了智能電表數(shù)據(jù)的可用性。
智能電表細粒度的電器消費記錄給用戶帶來了巨大的隱私泄露風險,但同時也為電力資源供給與調度提供了強有力的數(shù)據(jù)支撐。因此,智能電表隱私保護一方面需要破壞細粒度的原始數(shù)據(jù)波形,實現(xiàn)用戶用電模式的模糊化;另一方面要求保證電力公司對用戶電力計費準確性和電力數(shù)據(jù)聚合挖掘對電網(wǎng)運營維護的有效性。
在整個智能電網(wǎng)中存在數(shù)量繁多的智能電表,為用戶端到電力公司的數(shù)據(jù)采集和傳輸提供支持。假設智能電表的用戶集合為,智能電表每隔一段時間進行一次數(shù)據(jù)采集,將用戶智能電表采集的消費數(shù)據(jù)序列記作X ,用x 表示序列元素,x 可以是電壓、電流以及功率等(下文提及的x 以功率為主),則單個用戶智能電表數(shù)據(jù)序列可以表示為:
其中,Xi和x(i,t)分別表示用戶i 消費的電力數(shù)據(jù)序列及其智能電表在t 時刻點記錄的電力消費數(shù)據(jù)。同理可以得到經過時延處理后發(fā)布的數(shù)據(jù)序列為:
智能電表數(shù)據(jù)的可用性主要體現(xiàn)在電力計費和電網(wǎng)數(shù)據(jù)挖掘兩個方面,若用r 和T 分別表示電力資源的價格和一個計費周期,用L 表示電力數(shù)據(jù)挖掘得到的關聯(lián)規(guī)則,例如電力消耗的區(qū)域性分布規(guī)律等,則智能電表數(shù)據(jù)可用性的通用模型為:
其中,B(i)表示用戶i 在一個計費周期內的電力消費金額,DM()表示數(shù)據(jù)挖掘算法。
假設攻擊者竊取到了智能電表采集的細粒度消費數(shù)據(jù),同時利用某種識別算法Rec(),得到用戶i 在一段時間內的負載運行狀況Y ,其攻擊模型如下:
負載運行狀況Y 通常由多組狀態(tài)標簽y 表示,y一般描述為y=(t,obj,sta),其中t 表示負載狀態(tài)轉換發(fā)生的時刻,obj 表示識別的電器對象,sta 表示電器的運行狀態(tài),主要有啟動和關閉兩種。隨后攻擊者從一系列狀態(tài)標簽中獲取用戶負載使用模式,進一步挖掘得到用戶的某些個人隱私,從而達到竊取用戶敏感信息的目的。
結合上述模型分析,為了實現(xiàn)智能電表數(shù)據(jù)可用性與隱私安全性的折中,需要保證單個用戶在計費周期內電力消費∑t∈Tx(i,t)的準確性,多用戶電力消費數(shù)據(jù)X 聚合挖掘的有效性,同時破壞單個用戶電力消費波形的規(guī)律性。
本章針對智能電表數(shù)據(jù)的可用性模型,結合前文隨機擾動和充電電池保護方法的優(yōu)劣勢,為基于時間擾動的智能電表隱私保護算法提供有力的理論基礎和應用支撐。
在上文中,已經提到智能電表隱私保護中常用的數(shù)據(jù)擾動機制有隨機擾動和充電電池。
隨機擾動方法能夠有效地模糊單點數(shù)值,但其抗濾波的能力較差;充電電池方法能夠實現(xiàn)對電力波形的破壞,抗濾波能力強,但其波形破壞程度有限。結合這兩種方法,將數(shù)值域的隨機擾動思想轉移到時間軸上,從而得到延時擾動機制。通過加大電力消費在時間軸上的搬移力度,一方面提高擾動機制的抗濾波能力,另一方面實現(xiàn)更強有力的電力波形破壞,達到用電模式保護的目的。下面將對延時擾動機制進行詳細介紹。
對于原始序列Xi,數(shù)據(jù)的采集和發(fā)布是即時進行的,即t 時刻記錄的電表數(shù)據(jù)將在t 時刻同時發(fā)布。為了達到破壞波形,保護用戶隱私的目的,將原始序列Xi的數(shù)據(jù)記錄時刻和發(fā)布時刻錯開。延時擾動的基本原理如圖2所示,對于t 時刻采集到的數(shù)據(jù)功耗數(shù)據(jù)x(i,t),在采集時刻t 上添加一個正向時間擾動delay(t),從而確定x(i,t)的發(fā)布時刻t′,即t′=t+delay(t)。不同的采集點,在經過正向擾動后可能會得到相同的發(fā)布時刻t′,此時將同一發(fā)布時刻的所有功耗數(shù)據(jù)進行疊加,最終得到智能電表在t′時刻發(fā)布的消費數(shù)據(jù)x′(i,t′)。為了更好地表示x(i,t)與x′(i,t′)之間的映射關系,下面定義一個判別函數(shù):
即當參數(shù)a=b 時,S=1;否則,S=0。
利用上述判別公式,進一步得到x(i,t)到x′(i,t′)的映射表達式為:
圖2 延時擾動算法原理
通過對原始電表數(shù)據(jù)添加時間擾動,錯開數(shù)據(jù)采集和發(fā)布時間,能夠有效破壞負載實際運行情況,模糊用戶行為模式,從而達到保護用戶隱私的目的。
根據(jù)時間擾動算法的需求,噪聲設計需要滿足下列幾點要求:
(1)數(shù)據(jù)實時處理,延時噪聲應該為正向擾動。
(2)處理后的發(fā)布時刻與記錄時刻契合,所以時延單位為整數(shù)。
(3)為了避免由于時延產生的誤差過大,需要對延時上限加以約束。
本文選取了最常用的幾個概率分布,分別為均勻分布、正態(tài)分布和拉普拉斯分布。由于正態(tài)分布和拉布拉斯分布產生的隨機數(shù)-∞<n <+∞,為了約束延時噪聲上限,對標準分布做以下處理(如圖3):尋找特定整數(shù)值k,使得當 ||n <k 時,累計的概率大于δ,δ 為某個接近1的數(shù);當 ||n >k 時,n=n mod k。一方面在盡可能不破壞原始分布的前提下,對延時噪聲上限加以約束,另一方面使所有值的概率累計為1,保證概率的完整性。k的求解滿足下列不等式:
取δ=0.9;根據(jù)上式相應得到均勻分布k1≈1,正態(tài)分布k2≈2,拉普拉斯分布k3≈3。
圖3 拉普拉斯分布概率密度示意圖
結合上述分析,可以得到滿足本文算法需求的延時噪聲表達式如下:
其中,Dmax為延時上限,k 為最大延時系數(shù),為向上取整符號,n(t)表示滿足的特定標準分布的隨機數(shù)。
由此,可以得到滿足時間擾動算法的延時噪聲函數(shù),根據(jù)延時上限Dmax和特定標準分布的隨機數(shù)n(t)以及相應的延時系數(shù)k,就可以求得原始數(shù)據(jù)點需要加入的延時噪聲。
本文在引言中已經提到過,智能電表數(shù)據(jù)的可用性主要表現(xiàn)在電力計費、智能電網(wǎng)資源調度與管理、增值服務[1,14]三方面。結合上節(jié)的時間擾動模型,分析基于時間擾動的隱私保護方法對于智能電表數(shù)據(jù)可用性的影響。智能電表數(shù)據(jù)的可用性大致體現(xiàn)在單個用戶在時間上的累計誤差和多用戶在同一時刻的數(shù)據(jù)聚合產生的誤差。前者保證智能電表電力計費的準確性,后者保證智能電網(wǎng)整體數(shù)據(jù)聚合的準確性。
單個用戶在時間上的累計誤差是指經過算法處理后的消費數(shù)據(jù)與智能電表原始數(shù)據(jù)在一個計費周期T(一般為30 天)內產生的相對誤差,記作e(i),它的表達式如下:
多用戶在同一時刻的數(shù)據(jù)聚合產生的誤差是指針對同一區(qū)域或具有相同屬性標簽的N 個用戶群體在同一個電表記錄時刻由算法引入的相對誤差,記作e(t),它的表達式如下:
為了便于進行誤差分析我們設定一個時間窗,假設窗口時間跨度為Tw,窗口內數(shù)據(jù)序列集為Xw。根據(jù)模型的擾動機制,得到圖4的窗口數(shù)據(jù)變化。
從圖中可以看出,對于一個時間窗而言,在經過時間擾動后,窗口內的數(shù)據(jù)變化主要分兩部分,從上一窗口移入的數(shù)據(jù)序列集Xin和當前窗口移出的數(shù)據(jù)序列集Xout,由此可以得到時間窗經過擾動后產生的誤差
ew為:
同時考慮數(shù)據(jù)集Xin和Xout對于誤差ew的影響時,由于兩個數(shù)據(jù)集之間產生的數(shù)據(jù)抵消,使得對公式(12)的后續(xù)化簡分析存在困難。為了簡化誤差估算,在這里僅考慮當前窗口移除的數(shù)據(jù)序列集Xout對窗口擾動誤差造成的影響,一方面Xout是當前窗口的部分數(shù)據(jù),有利于實時分析;另一方面,這樣的分析策略可以有效估計誤差與不同變量之間的定量關系,為后續(xù)擾動噪聲的分布選擇提供依據(jù)。而且僅考慮數(shù)據(jù)集Xout得到不同變量之間的定性結果對于誤差的原始表達同樣是成立的,因為數(shù)據(jù)集Xin和Xout的數(shù)據(jù)抵消改變的是公式(12)分子值的量級大小。因此假設誤差ew僅考慮當前窗口移出的數(shù)據(jù)序列集Xout,得到簡化誤差為:
將式(9)代入上式,則:
根據(jù)上式可知僅考慮移出時間窗的數(shù)據(jù)Xout所造成的相對誤差e′w與時延期望E[delay(t)]成正比,與窗口的時間跨度Tw成反比。通過對這兩個參數(shù)進行控制,能夠實現(xiàn)對e′w的有效控制,而實際誤差ew比e′w更小;另一方面,在理論上模型僅對功耗信息進行了時間搬移,并未添加額外的擾動,因此在隨著窗口的時間跨度增大,誤差將趨于0。此外,將表1 中參數(shù)代入式(14)可以發(fā)現(xiàn)在相同最大延時的條件下,拉普拉斯分布相比其他兩種分布產生的誤差更小。
表1 三種不同分布的參數(shù)對比
為了能夠更直觀地衡量不同方法對智能電表數(shù)據(jù)波形的破壞程度,利用均方根誤差(RMSE)來表示數(shù)據(jù)處理前后的差異程度,其表達式如下:
其中,NT表示計費周期內的數(shù)據(jù)個數(shù)。
圖5表示不同算法下的均方根誤差,通過分析均方根誤差可以在一定程度上量化算法對模式的保護程度。從圖中可以看到,隨機擾動和本文方法相比充電電池方法能夠實現(xiàn)更大程度的波形破壞。隨機擾動方法的統(tǒng)計距離與最大噪聲呈線性遞增,隨著噪聲不斷增加直到徹底掩蓋原始波形,能夠實現(xiàn)最大程度的波形破壞。本文算法對波形的破壞程度受限于數(shù)據(jù)本身,在不同的延時噪聲下能夠實現(xiàn)穩(wěn)定的波形破壞效果。
圖5 不同算法的均方根誤差分析
智能電表隱私模式保護不同于常規(guī)的數(shù)值保護,因此很難給出定量的數(shù)值分析表達。為了定量分析不同數(shù)據(jù)擾動方法的安全性,引入非侵入式負載監(jiān)測算法(Non-Intrusive Load Monitoring,NILM)作為攻擊手段。NILM[15-16]是指監(jiān)測系統(tǒng)在不侵入負荷內部的條件下,利用相應結點電力負荷入口處的電壓、電流以及功率變化信息進行對負荷數(shù)據(jù)進行測量和分析,以得到負荷內部的不同用電設備的功率消耗情況及其相應的比例,從而實現(xiàn)電力負荷分解的一種實時負載監(jiān)測方法[17]。
采用Weiss等[18]的非侵入式負荷監(jiān)測方案將智能電表采集的總消費數(shù)據(jù)進行設備級分解(如圖6 所示)。在該方案中,首先確定負載曲線中功耗產生明顯變化的時間點,一旦檢測到滿足條件的邊緣,計算物理量之間的跳變差值,并將這種變化標注為一個潛在的設備切換事件。通過對不同用電設備進行標簽分類并訓練樣本集,得到不同類別設備的最佳匹配集群。在對實際用電負荷進行檢測時,利用樣本標簽進行監(jiān)督式學習,根據(jù)負載特性將潛在事件與已知的簽名數(shù)據(jù)庫進行對比,最終將邊緣映射到單個設備。
圖6 負載監(jiān)測示意圖
利用該負載監(jiān)測算法對擾動數(shù)據(jù)中用電設備模式識別的準確率,來判定本文算法的隱私保護性能。
根據(jù)本章前幾節(jié)的數(shù)學建模和理論分析,可以得到基于時間擾動的智能電表隱私保護算法的具體描述如下。
輸入:原始智能電表數(shù)據(jù)序列集X 。
輸出:時間擾動后的電表數(shù)據(jù)序列集X′。
方法:
(1)確定時間窗尺寸Tw以及最大時延Dmax,根據(jù)Tw生成相應的循環(huán)存儲器用于存儲存儲疊加時延后的數(shù)據(jù)點和其相應的發(fā)布位置,并篩選出Xout。
(2)選擇時延噪聲模式(隨機、正態(tài)或拉普拉斯分布),對每一個數(shù)據(jù)點添加相應的正向延時。
(3)對時延后的數(shù)據(jù)發(fā)布點做一次判斷,若發(fā)布點超出計費周期,則存儲到Xout,否則存入循環(huán)存儲器等待疊加發(fā)布。
(4)重復執(zhí)行步驟(3)直到沒有新的數(shù)據(jù)進入,得到時間擾動后的電表數(shù)據(jù)序列集X′,以及從當前窗口移出的數(shù)據(jù)序列集Xout。
(5)發(fā)布擾動后的電表數(shù)據(jù)序列集X′給電力公司或第三方數(shù)據(jù)使用者。
通過引入時間擾動破壞電表原始波形的結構性來實現(xiàn)隱私保護算法,能夠有效避免攻擊者針對用戶隱私的挖掘行為,同時保證電表數(shù)據(jù)在電力計費和資源調度分析等方面的可用性。與現(xiàn)有的隨機擾動和充電電池方法相比,在相同的擾動尺度下,基于時間擾動的保護方法能夠得到更有效的波形破壞效果,進而提供更強的安全性保障,下面通過實驗對此進行驗證。
為了檢測本文算法的有效性,采用真實的電力消費數(shù)據(jù)對算法進行評估,并分別用誤差分析和NILM算法對本算法在可用性和安全性兩個角度進行評估。
數(shù)據(jù)集采用開放的ECO數(shù)據(jù)集[10],該數(shù)據(jù)集提供了電源開關的綜合電力數(shù)據(jù)以及連接到具體電器的智能插座數(shù)據(jù)的組合。數(shù)據(jù)集以1 Hz 的采集粒度,收集了瑞士6個家庭8個月(2012年6月至2013年1月)的超過1億次的測量數(shù)據(jù),每個測量值包含了被測家庭測量時刻的電壓、電流以及相位信息,數(shù)據(jù)采集頻率高,時間跨度長。
應用本文隱私保護算法后,僅對移出窗口數(shù)據(jù)進行相對誤差e′w計算,實驗結果如圖7 所示。這里隨機選取了ECO數(shù)據(jù)集中某一天電表記錄數(shù)據(jù),使用了3種不同分布的延時噪聲:均勻分布、正態(tài)分布以及拉普拉斯分布,最大延時設定以200 s 為步長,范圍為0~3 600 s,選取的窗口大小為1 d,即86 400 s。從圖7可以看出,當噪聲曲線趨于穩(wěn)定后,相對誤差e′w與最大延時呈正相關,且在保證最大延時相同的情況下,拉普拉斯分布產生的誤差最小,均勻分布產生的誤差最大。根據(jù)表1的參考系數(shù),結合理論分析得到的結果與實驗基本一致。因此本文算法之后的相關實驗,采用拉普拉斯分布作為時間擾動模式。
圖7 不同噪聲延時的誤差e′w 分析
基于ECO 數(shù)據(jù)集對用戶的綜合電力數(shù)據(jù)進行擾動,檢測不同擾動方案下NILM 的識別準確率,以評估時間域擾動方案對于隱私安全保護的性能。選擇3 個主要參數(shù)評價NILM 監(jiān)測的結果并對實驗結果進行分析,分別是查準率P 、查全率R 以及F1 度量。 F1 度量是基于查準率和查全率的調和平均定義的:
本文實驗選取了Weiss算法下匹配結果最優(yōu)的4種電器類型:fridge、freezer、dishwasher、kettle,來對比本文算法與隨機擾動和充電電池算法的隱私保護強度。
根據(jù)圖8~10,對比充電電池算法和本文算法抑制電器檢測識別的效果。從圖8可以看出,相比充電電池算法,本文算法對于四種電器查準率的抑制效果在30%以上,效果最低的fridge比充電電池算法高10%,效果最高的dishwasher 比充電電池算法高60%。在查全率上,如圖9所示本文算法也優(yōu)于充電電池算法,對各項電器的平均抑制效果提高10%以上。F1 參數(shù)是評判識別算法效果的綜合指標,根據(jù)圖10的對比結果,本文算法可以讓Weiss 算法的識別效果下降50%,穩(wěn)定狀態(tài)下比充電電池算法提高10%以上。結合圖5均方根誤差分析,可以發(fā)現(xiàn)本文算法相比充電電池方法具有更有效的波形破壞效果。因此,本文算法對于不同電器在各項指標上都優(yōu)于充電電池算法,而且本文算法對于電器檢測識別的抑制效果收斂速度快,10 s左右的小時延就能得到最優(yōu)的穩(wěn)定效果。
圖8 3種算法查準率對比
圖9 3種算法查全率對比
圖10 3種算法F1參數(shù)對比
圖8 ~10的(b)為隨機噪聲擾動下電器檢測的效果,從圖中可以發(fā)現(xiàn),小功率電器(fridge、freezer)和大功率電器(dishwasher、kettle)趨于穩(wěn)定的噪聲點是不同的,前者大概在200 W 左右,后者大概在2 000 W。識別效果趨于穩(wěn)定的最大噪聲功率約為電器本身功率的2倍。對比本文算法與隨機噪聲擾動的實驗效果,可以發(fā)現(xiàn)在查準率上隨機擾動的抑制效果更好,本文算法在查全率的抑制效果更好,根據(jù)F1 參數(shù),總體上兩種擾動機制對于電器識別的抑制效果在伯仲之間。但實際上由于隨機擾動機制本身的限制,噪聲很容易被一些線性濾波器(例如維納濾波器)抵消,導致隱私保護強度下降。而本文算法由于是在時間軸上添加噪聲,導致數(shù)值上的變化很難被濾波攻擊消除,具有更強的隱私保護效果。
根據(jù)上述分析,在查準率、查全率和F1 這3個參數(shù)上,本文算法對于電器識別表現(xiàn)出良好的抑制效果。相比于隨機擾動和充電電池方法,本文算法表現(xiàn)出更高的波形破壞效率,更好的隱私安全性,并且對識別抑制趨于穩(wěn)定的速度更快。
為了定量分析本文算法對電力計費的影響,統(tǒng)計了單用戶時間累計誤差,并與隨機擾動和充電電池方法進行對比。其中實驗的時間周期為1 d,擾動尺度范圍為0~1 000,區(qū)間間隔為50。為了更直觀地對比3 種方法的誤差結果,將3 種方法不同的擾動參數(shù)進行了尺度統(tǒng)一。
圖11 表示單用戶時間累計誤差的對比結果,從圖中可以看出隨著擾動尺度的增大,對原始波形的破壞越顯著,則單用戶在計費周期上的計費誤差將逐漸增大。3種算法的相對誤差都呈上升趨勢,但在實驗尺度區(qū)間范圍內,隨機擾動方法的相對誤差最高到達1%,而充電電池方法為0.003%,時間擾動方法為0.1%。由此可見隨機擾動方法的誤差上升速率大概為時間擾動方法的10倍,同時約為充電電池方法的300倍。這種巨大的誤差差異主要是因為隨機擾動方法是直接向原始數(shù)據(jù)中添加噪聲擾動,引入額外誤差的可能性更大,而另外兩種方法在本質上都是對原始數(shù)據(jù)進行時間搬移,并未引入額外的數(shù)值噪聲。此外充電電池方法是對單點數(shù)值的部分搬移,時間擾動是對單點數(shù)值的整體搬移,因此在計費誤差上,充電電池方法有更好的效果。結合安全性實驗,可以發(fā)現(xiàn)本文算法在計費誤差上的損失,同時也帶來了更好的波形破壞效果,提供更強的隱私安全性。
圖12 表示多用戶在單一時刻的聚合誤差對比結果,這一誤差決定了電表消費數(shù)據(jù)在聚合挖掘分析中的可用性。由于本文方法存在小尺度變化導致誤差大幅上升的情況,對尺度區(qū)間進行單獨調整,分別為0~45,步長為5,以及50~1 000,步長為50。從圖12 中可以發(fā)現(xiàn),誤差大小隨著擾動尺度的增大而呈現(xiàn)上升趨勢。其中隨機擾動方法逼近線性遞增結果,而充電電池方法和本文方法的聚合誤差分別穩(wěn)定在2%和10%左右。在多用戶單一時刻的聚合誤差上,本文算法相比隨機擾動方法在較大的擾動尺度上具有更小的誤差結果,相比于充電電池方法雖然在誤差表現(xiàn)上較差,但本文算法相比于充電電池方法又有更強的安全性。
圖11 單用戶時間累計誤差
圖12 多用戶單一時刻的聚合誤差
結合上述實驗分析,本文算法能夠有效地將電器切換事件的識別效果降低50%左右,多用戶的聚合誤差穩(wěn)定在10%左右,同時在計費誤差上有著優(yōu)異的表現(xiàn)。本文算法在數(shù)據(jù)可用性和隱私安全性的綜合性能相比于其他兩種擾動方法表現(xiàn)更好,低于100 s 的時間擾動就能夠提供足夠的隱私保護強度,同時在計費誤差和聚合誤差上表現(xiàn)良好,為基于電力數(shù)據(jù)的應用和挖掘分析提供良好的可用性與安全性支持。
針對現(xiàn)有智能電表隱私保護算法存在模式保護力度不足的問題,本文提出了一種基于時間擾動的智能電表隱私保護方案,對原始消費數(shù)據(jù)進行延時重組,從而破壞電表記錄的功耗數(shù)據(jù)波形,達到模糊用戶行為模式的目的。在保護電表用戶隱私安全的同時,也在一定程度上保留智能電表數(shù)據(jù)在計量計費和數(shù)據(jù)聚合挖掘的可用性。一方面可以通過改動時延參數(shù)使得單用戶計費誤差維持在0.1%以下,多用戶數(shù)據(jù)聚合誤差穩(wěn)定在10%以內的可控范圍,保證計費和數(shù)據(jù)聚合分析的可用性;另一方面利用NILM算法對比不同方案的隱私保護效果,相比于其他兩種方案,本文算法能夠將NILM 算法對智能電表數(shù)據(jù)的識別準確率降低50%左右,波形破壞效率更高,小尺度擾動就能實現(xiàn)模式識別抑制的最優(yōu)效果,保障用戶隱私信息的安全性。
同時本文算法也存在有待改進的地方,從誤差對比實驗中可以發(fā)現(xiàn),本文算法的整體表現(xiàn)不如充電電池方法,單時刻記錄的整體搬移帶來了更有效的波形破壞效果,但也導致了時間累積誤差和多用戶聚合誤差的增大。此外,本文對基于時間擾動的智能電表隱私保護方法進行了安全性和可用性的理論和實驗分析,但缺少對算法抗干擾抗攻擊能力的考查。后續(xù)研究中,一方面需要進一步優(yōu)化延時模式和模型參數(shù),更好地協(xié)調隱私安全性和數(shù)據(jù)可用性;另一方面,需要增加抗攻擊實驗,比如濾波攻擊等,從而驗證并提高算法的魯棒性。