關(guān)鍵雄
(1.西南交通大學(xué)電氣工程學(xué)院,四川 成都 611756;2.新加坡淡馬錫理工學(xué)院清潔能源中心,新加坡 529757;3.新加坡國(guó)立大學(xué)計(jì)算機(jī)學(xué)院,新加坡 117417)
在整個(gè)電網(wǎng)體系當(dāng)中,用戶群體是關(guān)鍵一環(huán)。智能電表的普及能夠越來(lái)越容易地獲得每個(gè)家庭的用電量數(shù)據(jù)。通過(guò)對(duì)電表數(shù)據(jù)的監(jiān)測(cè),有關(guān)部門可以實(shí)現(xiàn)對(duì)用電高峰的調(diào)度,還可以進(jìn)行對(duì)用電器的故障檢測(cè)[1]。在大數(shù)據(jù)的時(shí)代背景下,監(jiān)測(cè)家庭用戶的電力負(fù)荷,并將電力數(shù)據(jù)與生活中一些看似不相關(guān)的信息綜合起來(lái),便能得到很多意想不到卻又很具有價(jià)值的信息[2]。這些信息將會(huì)帶給諸如電力公司、經(jīng)銷商等多個(gè)行業(yè)人群有利的信息,從而幫助人們的生活變得更加便捷。
當(dāng)前的研究工作已經(jīng)提出總的家庭用電量數(shù)據(jù)能夠被用來(lái)評(píng)估一些家庭的靜態(tài)特性,比如房屋面積、居住人口等[3]。這些特性信息不僅能夠用于目標(biāo)能源反饋,而且可以幫助調(diào)整家庭中恒溫器的溫度設(shè)置,從而提高能源效率和用戶的舒適度,另外還能用于目標(biāo)能源查詢[4]。Nipun Batra等人[4]使用無(wú)監(jiān)督的能量分解方法預(yù)測(cè)6個(gè)靜態(tài)房屋屬性,分別為房屋的年齡、房屋面積、家庭收入、樓層數(shù)、房間數(shù)、居住人口。從總的用電量數(shù)據(jù)中分解出暖通空調(diào)的功率信號(hào),比起簡(jiǎn)單地使用總的用電量數(shù)據(jù),能夠使評(píng)估房屋靜態(tài)特性的準(zhǔn)確率提高10%。
為了提高非侵入式負(fù)荷監(jiān)測(cè)的準(zhǔn)確率,還可以通過(guò)數(shù)據(jù)融合的方法來(lái)進(jìn)行,即除了電力數(shù)據(jù)之外,添加一些情境性信息,例如家庭中用電器的物理位置等。Akshay等人[5]利用通過(guò)無(wú)線位置傳感器獲得的用戶實(shí)時(shí)位置信息和用電器的用電量數(shù)據(jù),來(lái)提高現(xiàn)有的非侵入式負(fù)荷監(jiān)測(cè)方法的準(zhǔn)確率。
下面提出將總的用電量信息和靜態(tài)的房屋面積信息綜合起來(lái),用來(lái)推斷一個(gè)家庭的收入情況,幫助相關(guān)企業(yè)部門和經(jīng)銷商對(duì)消費(fèi)群體進(jìn)行準(zhǔn)確的定位和把控,使商家更有針對(duì)性地為用戶提供需要的服務(wù)和產(chǎn)品,實(shí)現(xiàn)對(duì)于商業(yè)發(fā)展的促進(jìn),讓人們能夠享受大數(shù)據(jù)時(shí)代帶給生活的便利。此外,國(guó)家和政府可以通過(guò)這個(gè)技術(shù),對(duì)一個(gè)小區(qū)甚至一個(gè)地區(qū)進(jìn)行粗略但成本很低的統(tǒng)計(jì),從而幫助政府更好地了解居民的收入,進(jìn)而采取一系列管理和政策上的調(diào)整。
由于簡(jiǎn)單地使用從智能電表讀取的用電量信息對(duì)家庭收入進(jìn)行估計(jì)的準(zhǔn)確率不高,除了對(duì)總的用電量進(jìn)行能量分解來(lái)提高準(zhǔn)確率,也可以采用增加附加信息的數(shù)據(jù)融合方法,下面采用的便是后者的研究思路。由于房屋面積信息作為房屋的一個(gè)最為明顯的靜態(tài)特性是非常容易獲得的,因此將總的用電量信息和靜態(tài)的房屋面積信息綜合起來(lái)推斷家庭收入情況。經(jīng)過(guò)研究發(fā)現(xiàn),增加了房屋面積這一信息之后,對(duì)家庭收入情況估計(jì)的準(zhǔn)確率有了很大的提高。
主要使用公開(kāi)可用的數(shù)據(jù)集Dataport中的數(shù)據(jù)來(lái)進(jìn)行對(duì)家庭收入的估計(jì)。Dataport數(shù)據(jù)集是由Pecan Street公司創(chuàng)建的,包含從2012—2014年700多個(gè)家庭每秒鐘的總用電量數(shù)據(jù),同時(shí)也包含了一部分家庭的基本信息調(diào)查數(shù)據(jù)[6]。從Dataport數(shù)據(jù)集中提取出元數(shù)據(jù)表、3年的家庭用電量數(shù)據(jù)表和對(duì)應(yīng)3年的家庭情況調(diào)查表,然后從這3組數(shù)據(jù)表中提取整合出對(duì)應(yīng)樣本家庭該年的總用電量情況、房屋面積以及收入情況3部分信息,最終得到可用的樣本家庭數(shù)據(jù)371個(gè)。為了方便評(píng)估每個(gè)家庭收入,將家庭收入情況劃分為兩個(gè)類別,分別為年收入低于10萬(wàn)美元和年收入等于或者高于10萬(wàn)美元[7]。
從收集到的家庭總用電量信息中,提取出該年中家庭總用電量的平均值(mean use)、中位數(shù)(median use)、最大值(max use)、極差(range use)、標(biāo)準(zhǔn)差(std use)以及該年中每小時(shí)的家庭總用電量超過(guò)2 kW的時(shí)數(shù)(count more 2)、超過(guò)4 kW的時(shí)數(shù)(count more 4)、超過(guò)6 kW的時(shí)數(shù)(count more 6)、超過(guò)8 kW的時(shí)數(shù)(count more 8)、超過(guò)10 kW的時(shí)數(shù)(count more 10)、超過(guò)12 kW的時(shí)數(shù)(count more 12)、超過(guò)16 kW的時(shí)數(shù)(count more 16)、超過(guò)18 kW的時(shí)數(shù)(count more 18),總共13個(gè)電力特征[8-9]。另外,將房屋面積(total square footage)作為新增加的特征,和這些電力特征一起構(gòu)成14維的特征數(shù)據(jù)集。
圖1和圖2分別隨機(jī)選取了兩組不同的二維特征,通過(guò)散點(diǎn)圖的形式展示了數(shù)據(jù)集中各個(gè)樣本家庭的部分特征分布情況以及這些樣本家庭的年收入所屬類別。在圖1中,橫、縱坐標(biāo)分別選取的特征是房屋面積和該年中家庭總用電量的平均值,圓圈代表該樣本家庭的年收入低于10萬(wàn)美元,五角星代表該樣本家庭的年收入等于或者高于10萬(wàn)美元。在圖2中,橫、縱坐標(biāo)分別選取的特征是該年中家庭總用電量的標(biāo)準(zhǔn)差和最大值,三角形代表該樣本家庭的年收入低于10萬(wàn)美元,正方形代表該樣本家庭的年收入等于或者高于10萬(wàn)美元。從兩圖中的數(shù)據(jù)點(diǎn)分布來(lái)看,數(shù)據(jù)并非線性可分的,因此無(wú)法簡(jiǎn)單地利用線性超平面將兩個(gè)類別區(qū)分開(kāi)。
圖1 房屋面積與平均用電量二維特征數(shù)據(jù)分布散點(diǎn)
圖2 用電量標(biāo)準(zhǔn)差與最大用電量二維特征數(shù)據(jù)分布散點(diǎn)
對(duì)家庭收入的估計(jì)屬于機(jī)器學(xué)習(xí)的分類問(wèn)題。最常見(jiàn)的幾種機(jī)器學(xué)習(xí)分類算法有邏輯斯蒂回歸(logistic regression)、支持向量機(jī)(support vector machine, SVM)、決策樹(shù)(decision tree)、隨機(jī)森林(random forests)、K-近鄰(K-nearest neighbor classifier, KNN)等[10]。
其中,K-近鄰算法又稱為一種懶惰學(xué)習(xí)算法,它通過(guò)測(cè)量不同特征值之間的距離來(lái)對(duì)目標(biāo)對(duì)象進(jìn)行分類[11]。KNN算法步驟如下:
1)確定k的大小和距離度量;
2)對(duì)于測(cè)試集中的一個(gè)樣本,找到訓(xùn)練集中和它最近的k個(gè)樣本。
KNN是基于內(nèi)存的方法,其優(yōu)點(diǎn)是一旦訓(xùn)練集增加了新數(shù)據(jù),模型能立刻改變。但是分類時(shí)的最壞計(jì)算復(fù)雜度隨著訓(xùn)練集增大而增加,除非特征維度非常低。此外,需要一直保存著訓(xùn)練集,不像參數(shù)模型訓(xùn)練好模型后,可以丟棄訓(xùn)練集。
SVM的主要思想就是找到空間中存在的一個(gè)能夠?qū)⑺袛?shù)據(jù)樣本區(qū)分開(kāi)的超平面,并且使得得到的樣本數(shù)據(jù)到這個(gè)超平面的距離最短。SVM能解決線性和非線性問(wèn)題,因此可以分為線性和非線性兩大類[12]。
線性SVM(linear SVM)在解決現(xiàn)實(shí)的分類問(wèn)題時(shí),通常與線性邏輯回歸的效果近似,對(duì)于線性可分的類別數(shù)據(jù)性能良好。
核SVM(kernel SVM)是指在 SVM 中引入核方法,使SVM 變?yōu)榉蔷€性分類器,從而解決線性不可分?jǐn)?shù)據(jù)。常用的核函數(shù)一般稱為高斯核,通常簡(jiǎn)寫為
k(x(i),x(j))=e(-γ‖x(i)-x(j)‖2)
式中:γ為一個(gè)要優(yōu)化的自由參數(shù),可以被理解為高斯球面的階段參數(shù),若增大γ的值,會(huì)產(chǎn)生更加柔軟的決策界;k為兩個(gè)樣本間的相似形函數(shù);x(i)、x(j)為兩個(gè)樣本。高斯核中e的指數(shù)范圍小于等于0,因此高斯核值域范圍為(0,1],特別地,當(dāng)兩個(gè)樣本完全一樣時(shí),值為1;兩個(gè)樣本完全不同時(shí),值為0[10]。
決策樹(shù)的生成是一個(gè)遞歸過(guò)程,訓(xùn)練決策樹(shù)模型時(shí),從根節(jié)點(diǎn)出發(fā),使用信息增益最大的特征對(duì)數(shù)據(jù)進(jìn)行分割,然后迭代此過(guò)程[13]。決策樹(shù)會(huì)將特征空間分割為矩形,因此其決策界很復(fù)雜。熵和基尼系數(shù)是決策樹(shù)常用的兩個(gè)度量,而且兩者的結(jié)果相似,選擇任何一個(gè)都是可以的。決策樹(shù)直觀,便于理解,具有很好的模型可解釋性,對(duì)于小規(guī)模數(shù)據(jù)集很有效;但類別較多時(shí),錯(cuò)誤增加較快,可規(guī)模性不強(qiáng)。很多棵決策樹(shù)集成,就叫做隨機(jī)森林。
從前面可以得知,用于所研究的特征數(shù)據(jù)集并非簡(jiǎn)單的線性可分?jǐn)?shù)據(jù),因此線性邏輯回歸和線性SVM 兩種算法適用性不強(qiáng)。而這里的數(shù)據(jù)特征維度并不低,運(yùn)用KNN算法分類時(shí)的最壞計(jì)算復(fù)雜度和預(yù)測(cè)時(shí)的計(jì)算成本相對(duì)較高。相對(duì)來(lái)說(shuō),從各種分類算法本身的優(yōu)缺點(diǎn)出發(fā),擬采用決策樹(shù)和核SVM兩種算法來(lái)對(duì)樣本家庭的年收入情況進(jìn)行分類估計(jì)。同時(shí),將線性SVM和KNN作為基準(zhǔn)算法,與決策樹(shù)和核SVM的分類效果進(jìn)行對(duì)比,從而驗(yàn)證算法選擇的合理性。
Python的scikit-learn是一個(gè)專門的機(jī)器學(xué)習(xí)算法庫(kù),它提供了執(zhí)行機(jī)器學(xué)習(xí)算法的模塊化方案。以上這幾種分類算法的模型都可以從scikit-learn中直接調(diào)用,簡(jiǎn)潔和高效。
2.2.1 僅通過(guò)家庭總用電量數(shù)據(jù)估計(jì)家庭年收入
步驟1:只選取13個(gè)維度的電力特征組成數(shù)據(jù)樣本X,將樣本家庭的年收入類別作為要預(yù)測(cè)的目標(biāo)y。
步驟2:為了評(píng)估訓(xùn)練好的模型對(duì)新數(shù)據(jù)的預(yù)測(cè)能力,先將數(shù)據(jù)集(X,y)隨機(jī)分為兩部分: 訓(xùn)練集占80%,測(cè)試集占20%。
步驟3:對(duì)訓(xùn)練集中每一維度的特征計(jì)算出樣本平均值和標(biāo)準(zhǔn)差,進(jìn)而對(duì)數(shù)據(jù)集進(jìn)行標(biāo)準(zhǔn)化,使每一維度特征的重要性等同。
步驟4:調(diào)用KNN、線性SVM、決策樹(shù)以及核SVM4種不同的分類器訓(xùn)練模型。針對(duì)每一種分類器,分別設(shè)置合適的模型參數(shù)和隨機(jī)參數(shù)。
步驟5:分別計(jì)算每個(gè)模型在測(cè)試集上的分類準(zhǔn)確率,以此來(lái)對(duì)比和評(píng)價(jià)以上4種模型的性能。
步驟6:通過(guò)對(duì)模型進(jìn)行多次的參數(shù)調(diào)整,得到最佳的模型狀態(tài),提高模型預(yù)測(cè)新數(shù)據(jù)的準(zhǔn)確率。
2.2.2 增加房屋面積特征來(lái)估計(jì)家庭年收入
步驟1:選取電力特征和房屋面積特征共14個(gè)維度的特征,組成數(shù)據(jù)樣本X,將樣本家庭的年收入類別作為要預(yù)測(cè)的目標(biāo)y。
步驟2:采用同樣的方法對(duì)測(cè)試集的樣本家庭年收入進(jìn)行預(yù)測(cè)。
步驟3:與2.2.1節(jié)對(duì)比4種算法模型得到的分類準(zhǔn)確率。
2.2.3 獲取最優(yōu)特征估計(jì)家庭年收入
考慮到2.2.2節(jié)中14個(gè)維度的特征可能存在由于維度過(guò)大而出現(xiàn)維度詛咒的問(wèn)題,于是通過(guò)隨機(jī)森林對(duì)特征重要性進(jìn)行了評(píng)估,如圖3所示。橫坐標(biāo)表示14個(gè)特征,縱坐標(biāo)對(duì)應(yīng)每個(gè)特征的重要性。從圖3中可以看出,total square footage是最能區(qū)分類別的特征,std use和mean use次之。即重要性排名前三的特征是房屋面積、用電量標(biāo)準(zhǔn)差和用電量平均值。房屋面積和用電量往往正向相關(guān),面積越大,用的電可能越多,這也從另一個(gè)角度說(shuō)明了算法的有效性和合理性。
圖3 特征重要性排序
此外,scikit-learn中的隨機(jī)森林實(shí)現(xiàn),還可以基于用戶給定的閾值進(jìn)行特征選擇。設(shè)置閾值為0.09,最終便選擇出7個(gè)維度的特征作為最優(yōu)特征,即房屋面積、該年中家庭總用電量的標(biāo)準(zhǔn)差、平均值、中位數(shù)、最大值、極差和該年中每小時(shí)的家庭總用電量超過(guò)4 kW的時(shí)數(shù)。
得到最優(yōu)特征之后,采用同樣的方法對(duì)測(cè)試集的樣本家庭年收入進(jìn)行預(yù)測(cè),與2.2.2節(jié)中不進(jìn)行特征選擇得到的分類準(zhǔn)確率進(jìn)行對(duì)比,驗(yàn)證維度詛咒的問(wèn)題是否存在。
在圖4中,黑色代表只使用家庭總用電量數(shù)據(jù)來(lái)估計(jì)家庭年收入的分類準(zhǔn)確率,白色代表增加房屋面積特征后的分類準(zhǔn)確率。從圖4中可以看出,只使用總用電量數(shù)據(jù),4種算法的分類準(zhǔn)確率都很低,其中KNN的準(zhǔn)確率相對(duì)來(lái)說(shuō)是最高的,核SVM次之。在增加了房屋面積特征后,4種算法的分類準(zhǔn)確率普遍有了很大幅度的提高。其中,使用核SVM對(duì)家庭年收入的分類準(zhǔn)確率提高了15%,分類效果明顯。其次是決策樹(shù)算法,使分類準(zhǔn)確率提高了13%。而線性SVM的分類準(zhǔn)確率雖然也提高了,卻始終是4種分類算法中準(zhǔn)確率最低的。可見(jiàn),增加房屋面積的信息,確實(shí)能夠提高對(duì)家庭收入估計(jì)的準(zhǔn)確率。此外,圖4也驗(yàn)證了2.1節(jié)中所述的從分類算法本身的優(yōu)缺點(diǎn)出發(fā)來(lái)選擇算法的合理性,即線性SVM的確不適用于所提出的數(shù)據(jù)分析。
圖4 增加房屋面積特征前后的分類準(zhǔn)確率對(duì)比
在圖5中,白色代表特征選擇之前使用14個(gè)維度的特征估計(jì)家庭年收入的分類準(zhǔn)確率,灰色代表特征選擇之后使用7個(gè)最優(yōu)特征估計(jì)家庭年收入的分類準(zhǔn)確率。從圖5中可以看出,經(jīng)過(guò)特征選擇,4種分類算法的準(zhǔn)確率都有所提高,但是提高的幅度并不大,只有1%~2%。此外,核SVM依然是4種分類算法中估計(jì)家庭年收入準(zhǔn)確率最高的,可以達(dá)到0.81,決策樹(shù)算法次之,線性SVM的準(zhǔn)確率最低。而KNN算法的準(zhǔn)確率時(shí)高時(shí)低,可能與所采用的數(shù)據(jù)樣本容量較小以及樣本類別不平衡等因素有關(guān)。
圖5 最優(yōu)特征選擇前后的分類準(zhǔn)確率對(duì)比
經(jīng)過(guò)前面的研究得出以下結(jié)論:只使用總用電量信息對(duì)家庭收入估計(jì)的準(zhǔn)確率相對(duì)較低;加入房屋面積信息之后,即使使用最基本的分類算法,也能大幅度提高對(duì)家庭收入估計(jì)的準(zhǔn)確率。另外,在提出的4種基本的機(jī)器學(xué)習(xí)分類算法中,核SVM對(duì)于非線性可分?jǐn)?shù)據(jù)的分類效果最好,決策樹(shù)次之。
房屋面積信息作為房屋的一個(gè)最為明顯的靜態(tài)特性,不會(huì)因?yàn)槭艿酵饨缬绊懚l(fā)生改變,具有穩(wěn)定性和易捕獲性的優(yōu)點(diǎn)。用電量信息作為當(dāng)今家庭中非常重要的信息之一,具有實(shí)時(shí)性的特點(diǎn)。綜合這兩種信息來(lái)推斷家庭收入,無(wú)疑為今后的研究工作開(kāi)拓了思路。所選用的是總用電量的信息,今后還可以嘗試使用分解后各個(gè)用電器的用電量信息進(jìn)行數(shù)據(jù)融合。將家庭收入劃分為兩個(gè)類別,今后可以嘗試對(duì)家庭收入的類別作更精細(xì)的劃分。同時(shí),選用的算法仍需要不斷的優(yōu)化和完善。另外,所選用的數(shù)據(jù)樣本規(guī)模偏小,普適意義還有待進(jìn)一步提升樣本規(guī)模,也是一個(gè)日后有待解決的問(wèn)題[14]。
致謝
西南交通大學(xué)電氣工程學(xué)院的鄭珺老師和張雪霞老師在論文的結(jié)構(gòu)、撰寫和算法應(yīng)用方面提出了指導(dǎo)性建議,謹(jǐn)此深表感謝。