甘玉濤
(河北司法警官職業(yè)學(xué)院, 河北 石家莊 050081)
機(jī)器學(xué)習(xí)算法是大數(shù)據(jù)技術(shù)的重要部分,在工業(yè)領(lǐng)域被廣泛應(yīng)用。大數(shù)據(jù)技術(shù)發(fā)展,要求對工業(yè)能耗數(shù)據(jù)分析,便于制定相應(yīng)的節(jié)能策略。由此提出了基于大數(shù)據(jù)技術(shù)的線性回歸算法與支持向量機(jī)分類算法,分別對能耗數(shù)據(jù)中的線性和非線性數(shù)據(jù)進(jìn)行預(yù)處理。線性回歸主要用來解決回歸問題,即預(yù)測連續(xù)值的問題[1]。支持向量機(jī)按監(jiān)督學(xué)習(xí)(Supervised learning)方式對數(shù)據(jù)進(jìn)行二元分類的廣義線性分類器[2]。對處理非線性問題,能夠處理高維數(shù)據(jù),具有較強(qiáng)的泛化能力,并且適用于小樣本數(shù)據(jù)。結(jié)合K-Means算法對能耗的海量數(shù)據(jù)進(jìn)行聚類分析、預(yù)測,該算法能根據(jù)較少的已知聚類樣本的類別確定部分樣本的分類,對能耗數(shù)據(jù)的聚類和分析能夠增加精確度和速度,由此能夠獲得對工業(yè)能耗具有影響的相關(guān)因素。對海量數(shù)據(jù)進(jìn)行預(yù)處理,聚類分析,關(guān)聯(lián)分析和預(yù)測,進(jìn)而便于節(jié)能降耗措施和能耗優(yōu)化建議的提出,對于工業(yè)的能耗分析和節(jié)能策略制定具有重要意義。
在大數(shù)據(jù)條件下,機(jī)器學(xué)習(xí)算法在互聯(lián)網(wǎng)技術(shù)發(fā)展的重點(diǎn),也是支持工業(yè)能耗分析的首選。此次研究結(jié)合線性回歸算法與支持向量機(jī)算法,分別對能耗數(shù)據(jù)的線性問題和非線性問題進(jìn)行處理,算法具有較好的泛化能力、魯棒性和可解釋性,便于之后的算法分析。線性回歸算法是回歸算法中的重要算法和模型,比非線性回歸算法更容易擬合未知參數(shù),在實(shí)際生活中運(yùn)用廣泛。以數(shù)據(jù)集{yi,(xi1,xi2,…,xip)}為例,自變量和線性回歸模型中因變量以直接和可預(yù)測的方式聯(lián)系在一起,并建立相應(yīng)的模型說明這兩個變量之間的關(guān)系,相關(guān)表達(dá)見式(1):
式中:s1為誤差變量;x,y 都為向量;xiTθ 為向量的內(nèi)積;xiT為向量的轉(zhuǎn)置;p 為自變量個數(shù)。線性回歸主要應(yīng)用在預(yù)測和辨別冗余的方向,對工業(yè)能耗數(shù)據(jù)進(jìn)行處理和分析,便于之后的算法進(jìn)行進(jìn)一步分析。
分類是將不同類別的樣本根據(jù)某一個標(biāo)準(zhǔn)進(jìn)行區(qū)分和對新樣本進(jìn)行類別預(yù)測,對工業(yè)能耗數(shù)據(jù)進(jìn)行分類,是對其進(jìn)一步分析的首要操作。由Vladimir N.Vapnik 提出的支持向量機(jī)(Support Vector Machine,SVM)算法是用于分類的非概率學(xué)習(xí)算法[3]。對于支持向量機(jī)分類算法來說,能夠根據(jù)訓(xùn)練樣本的SVM模型對樣本點(diǎn)的空間進(jìn)行表示和描述,以兩個類別為例,在通過決策平面之后,分成兩個不同的區(qū)域,也就是類。為了獲得經(jīng)過決策函數(shù)的新數(shù)據(jù)的準(zhǔn)確分類結(jié)果,可以將其添加到適當(dāng)?shù)膮^(qū)域。所以說,SVM 算法對非線性數(shù)據(jù)的分類過程,是將數(shù)據(jù)進(jìn)行線性分類后,將數(shù)據(jù)原始的空間維度轉(zhuǎn)換為高維特征的空間。以一組訓(xùn)練樣本為例,SVM將其定義表達(dá)見式(2):
式中:yi為樣本xi的類別,值為1 或者-1,xi為一個維度為p 的向量。SVM由此構(gòu)造一組超平面,將和以最大間隔分離的超平面,表示見式(3):
式中:b/‖w‖為超平面法向量方向的截距;w 為法向量;b/‖w‖能夠?qū)蓚€線性平面轉(zhuǎn)為超平面,如式(4)所示:
在式(4)中2/‖w‖為兩個平面之間的間隔,兩個平面可以準(zhǔn)確地分離信息。SVM 的一個特點(diǎn)是隨著泛化能力的提高對區(qū)間的需求增加,因此需要將目標(biāo)定義為二次優(yōu)化形式,見式(5):
并且將式(5)采用拉格朗日算法的乘子算法得出目標(biāo)函數(shù)見式(6):
由此獲得最優(yōu)化式,見式(7):
間隔越大造成的誤差就越小,所以選擇分類平面的標(biāo)準(zhǔn)是使任意訓(xùn)練樣本距離平面的距離盡量大。
數(shù)據(jù)的預(yù)處理包括數(shù)據(jù)的清洗和標(biāo)準(zhǔn)化,聚類分析即數(shù)據(jù)的離散化,將數(shù)據(jù)按照特定順序和特定格式進(jìn)行分類。在大數(shù)據(jù)環(huán)境下,聚類算法中的K-Means算法是數(shù)據(jù)挖掘的流行算法,該算法是將多個數(shù)據(jù)劃分為一定數(shù)量的聚類中,并且每一個數(shù)據(jù)點(diǎn)都會有與其距離對應(yīng)的均值代表的聚類[4]。此次研究通過該算法能耗數(shù)據(jù)進(jìn)行聚類分析,能夠?qū)?shù)據(jù)進(jìn)行分析,為了識別某些樣本的分組,通過使用減少數(shù)量的已識別聚類樣本的分類來移除樹的部分。該算法具有通過迭代過程優(yōu)化和校正修剪的功能。為了確定某些樣本的聚類,算法通過迭代返回到先前已識別的聚類,優(yōu)化了在支持向量機(jī)分類算法的初始監(jiān)督學(xué)習(xí)樣本分類不合理的地方[5]。分析小樣本的特點(diǎn)可以降低聚類時間的總體復(fù)雜性。
K-Means 算法能夠?qū)?shù)據(jù)劃分類不同的集合,在算法中,設(shè)置n 個數(shù)據(jù)點(diǎn),每個數(shù)據(jù)采用d 維的向量表示,該算法目的為減少組內(nèi)的差異,即群內(nèi)離差達(dá)到最小。相關(guān)計算見式(8):
式中:S 為劃分的集合S={S1,…Sk};μi表示中的所有點(diǎn)的中心點(diǎn);xj為數(shù)據(jù)點(diǎn);k 為劃分的集合數(shù)量。迭代最優(yōu)是K-Means 算法的常用算法,設(shè)置K 個初始均值點(diǎn),算法通過交替地遵循兩個階段來重復(fù)該過程,即分配階段和更新階段步驟。將各數(shù)據(jù)點(diǎn)分配到個聚類中,使類分離差最小[6]。按照離差為平方歐氏距離計算出點(diǎn)附近的最近均值,見式(9):Si(t)={xp:‖xp-μi(t)‖2≤‖xp-μj(t)‖2?j,1≤j≤k.(9)
通過聚類中歸屬的數(shù)據(jù)點(diǎn),能夠計算出新的均值中心點(diǎn),計算見式(10):
至此當(dāng)分配的步驟不變時,K-Means 算法收斂。將聚類算法應(yīng)用至具體平臺功能的聚類分析中,相關(guān)的運(yùn)行流程見圖1。
圖1 聚類分析流程
圖1 中,首先發(fā)出聚類的請求,解析數(shù)據(jù)后,設(shè)置K 值和迭代次數(shù),然后設(shè)定數(shù)據(jù)的范圍,提交相關(guān)的任務(wù)進(jìn)行迭代篩選,然后進(jìn)行聚類分析,存儲相關(guān)數(shù)據(jù)后對數(shù)據(jù)查詢,就可以看到最終的聚類結(jié)果。
為了對基于線性回歸算法和向量機(jī)分類算法結(jié)合處理數(shù)據(jù),與K-Means 聚類算法分析數(shù)據(jù),并且應(yīng)用至工業(yè)能耗分析平臺進(jìn)行性能分析,此次研究設(shè)計一項(xiàng)實(shí)驗(yàn)進(jìn)行驗(yàn)證。實(shí)驗(yàn)中將工廠分為3 個區(qū)域,采用NodeAddr 區(qū)分,針對實(shí)施監(jiān)控的耗能信息采用實(shí)時功率進(jìn)行表示,每隔500 ms 進(jìn)行數(shù)據(jù)點(diǎn)采集。聚類維度選用設(shè)備id、使用的起始日期、工作的時長、工人工齡、工作區(qū)域節(jié)點(diǎn)地址,分組對三個區(qū)域進(jìn)行相關(guān)維度的實(shí)時能耗進(jìn)行記錄。通過不同的分群數(shù)量對聚類分析結(jié)果影響進(jìn)行分析,即K 值選取3、5、7。計算、研究聚類結(jié)果,獲得各維度的KL(Kullback-Leibler divergence)散度與之相匹配。其中KL 越大,表示該維度的聚類結(jié)果與分群的點(diǎn)相關(guān)度越高。
為了比較不同的聚類維度的KL 情況,此次實(shí)驗(yàn)將三個區(qū)域的實(shí)時能耗信息計算出相應(yīng)的KL 值后,K 取5 和7 的KL 結(jié)果展示了部分?jǐn)?shù)據(jù),如表1??梢钥闯觯?dāng)K=3 時,分類群B 中的工作時長KL 值最大,所以分類群B 中工作時長的相關(guān)度較高,在分類群C中,工人工齡的KL 大小在其次,工人工齡的相關(guān)度在分類群C 中的相關(guān)度較高。當(dāng)K=5 時,分類群B 中的工作區(qū)域節(jié)點(diǎn)地址維度在各個分類群組中的KL相差很小,工作時長和工人工齡兩個維度在其中KL值較大,相關(guān)度較高。當(dāng)K=7 時,各個聚類維度與K=5 的大體相似,相關(guān)度也基本類似,所以K 取3~5為宜。
表1 不同維度和K 情況下的KL 散度值
基于以上,對不同的工作區(qū)域節(jié)點(diǎn)地址、工人工齡、設(shè)備工作時長三個關(guān)鍵的聚類維度進(jìn)行了進(jìn)一步分析,圖2 為對能耗的相關(guān)分析結(jié)果。圖2-1 為各工作小組的平均能耗,可以看出,第2 組與第7 組的平均能耗比其他組的平均能耗小,所以針對該兩個小組,進(jìn)一步進(jìn)行了分析。圖2-2 為該兩個小組的設(shè)備工作時長與平均能耗之間關(guān)系折線圖,可以看出,隨著工作時長的增加,平均能耗逐漸增加,并且在35~40 min,平均能耗達(dá)到了最高。圖2-3 為工人工齡與平均能耗之間關(guān)系的折線圖,可見隨著工人工齡的增加,平均能耗隨之下降,在1~2 年時間的能耗極高,在第三年左右穩(wěn)定下來,分析原因?yàn)楣と说募寄苁炀毝葹槠渲械挠绊懸蛩?,可見對新員工培訓(xùn)極其重要。
圖2 平均功耗與設(shè)備工作時長、工人工齡之間的關(guān)系
隨著大數(shù)據(jù)技術(shù)的發(fā)展,對工業(yè)能耗進(jìn)行分析,得出其中的影響因素,能夠提前對能耗節(jié)約提出相應(yīng)的節(jié)能策略。此次研究為了對工業(yè)耗能進(jìn)行更加準(zhǔn)確地分析,提出采用線性回歸算法與支持向量機(jī)算法結(jié)合,對能耗數(shù)據(jù)進(jìn)行預(yù)處理,然后通過K-Means 算法對能耗數(shù)據(jù)進(jìn)行分析,應(yīng)用至相關(guān)的能耗分析平臺的核心功能算法中,特此設(shè)計一項(xiàng)實(shí)驗(yàn)驗(yàn)證性能和可行性。實(shí)驗(yàn)表明,當(dāng)K=3 時,工作時長KL 值最大,相關(guān)度較高,工人工齡KL 大小在其次,相關(guān)度較高。當(dāng)K=5 時,工作區(qū)域節(jié)點(diǎn)地址維度在各個分類群組中的KL 相差很小,工作時長和工人工齡兩個維度在其中KL 值較大,相關(guān)度較高。分析工作時長和工人工齡維度對能耗的具體關(guān)系,對此提出相應(yīng)的節(jié)能策略具有參考性。但是此次實(shí)驗(yàn)所設(shè)置的影響因素相對較少,還需要對多個維度進(jìn)一步全面地考慮和分析。