李飛,裴明麗,周源,林雪勤
(安徽科大國(guó)創(chuàng)云網(wǎng)科技有限公司,合肥 230088)
伴隨著通信業(yè)務(wù)的多樣化和泛在化,使得通信網(wǎng)絡(luò)能耗快速增長(zhǎng)。無(wú)線通信網(wǎng)絡(luò)能耗主要來(lái)源于通信基站,為了保證通信行業(yè)的正常、高效運(yùn)行,運(yùn)營(yíng)商投入的通信基站數(shù)量越來(lái)越多、范圍越來(lái)越廣,其耗電量也隨之增加,甚至成倍增長(zhǎng)[1]。這不僅給企業(yè)帶來(lái)更多的經(jīng)濟(jì)壓力,同時(shí)也污染了人類的生存環(huán)境,而且存在大量的能源浪費(fèi)。因此,節(jié)能降耗一直是通信行業(yè)長(zhǎng)期關(guān)注并研究的課題而且是節(jié)能減排的重點(diǎn)工作[2]。
有數(shù)據(jù)統(tǒng)計(jì)顯示,基站站點(diǎn)能耗費(fèi)用(電費(fèi))占到網(wǎng)絡(luò)運(yùn)營(yíng)成本的16%之多,為優(yōu)化成本結(jié)構(gòu)和促進(jìn)社會(huì)效益,針對(duì)基站站點(diǎn)的節(jié)能減排已成運(yùn)營(yíng)商的一大努力目標(biāo)?;竟?jié)能主要從兩個(gè)方面入手,一方面是優(yōu)化基站的硬件結(jié)構(gòu),硬件廠家研發(fā)各種節(jié)能的硬件產(chǎn)品[3];另一方面是優(yōu)化基站的運(yùn)行控制,應(yīng)用人工智能技術(shù),基于歷史運(yùn)行數(shù)據(jù),預(yù)測(cè)基站的業(yè)務(wù)量承載低谷,觸發(fā)載波關(guān)斷等節(jié)能策略,減少設(shè)備運(yùn)行時(shí)間,實(shí)現(xiàn)節(jié)能[4-5]。
微軟亞洲研究院在2016年公開(kāi)了一款基于決策樹(shù)算法的提升框架LightGBM (Light Gradient Boosting Machine)[6-7],它是一種快速、高效、開(kāi)源框架,支持分布式、高效率的并行訓(xùn)練,被廣泛應(yīng)用于回歸、分類、排序等多種機(jī)器學(xué)習(xí)應(yīng)用領(lǐng)域。
(1)梯度提升(Gradient Boosting)
它是由一系列子模型的線性組合來(lái)完成學(xué)習(xí)任務(wù)的,可劃分為兩種基本類型:Gradient Boosting和AdaBoost。其中LightGBM屬于Gradient Boosting[8-9]。梯度提升的主要思想是一次性迭代變量,迭代過(guò)程中,逐一增加子模型,并且保證損失函數(shù)不斷減小。假設(shè)fi(x)為子模型,復(fù)合模型為:
Fm(x)=?0f0(x)+?1f1(x)+…+?mfm(x)
損失函數(shù)為L(zhǎng)[Fm(x)],Y,每一次加入新的子模型后,使得損失函數(shù)不斷朝著信息含量次高的變量的梯度減?。?/p>
L[Fm(x),Y] (2)梯度提升決策樹(shù)(Gradient Boosting Decision Tree) GDBT是一種迭代的決策樹(shù)算法[10],該算法由多棵決策樹(shù)組成,所有樹(shù)的結(jié)論累加起來(lái)做最終結(jié)果。在機(jī)器學(xué)習(xí)領(lǐng)域中,它是一個(gè)經(jīng)久不衰的模型,簡(jiǎn)稱GBDT,即: GBDT=Gradient Boosting+Decision Tree GBDT具有Gradient Boosting和Decision Tree的功能特性,其主要優(yōu)點(diǎn)是訓(xùn)練效果好、不易過(guò)擬合且泛化能力較強(qiáng)。近些年,GBDT在行業(yè)中被廣泛關(guān)注和使用,通常用于諸如點(diǎn)擊率預(yù)測(cè)和搜索排名之類的機(jī)器學(xué)習(xí)模型任務(wù)。GBDT還是各種數(shù)據(jù)挖掘比賽中的致命武器。 LightGBM是對(duì)GBDT的一種高效實(shí)現(xiàn),主要用于解決GBDT在大規(guī)模數(shù)據(jù)處理上遇到的問(wèn)題。采用帶深度限制的Leaf-wise的葉子生長(zhǎng)策略[11],其計(jì)算代價(jià)小,且避免了過(guò)擬合。為了減小存儲(chǔ)成本和計(jì)算成本,LightGBM選擇了基于Histogram的決策樹(shù)算法。此外LightGBM直接支持類別特征處理,使其性能得到較好的提升。LightGBM主要通過(guò)以下幾個(gè)參數(shù)實(shí)現(xiàn)算法控制與優(yōu)化: (1)num_leaves:每棵樹(shù)的葉子數(shù)量; (2)num_iteration:迭代次數(shù); (3)learning_rate:學(xué)習(xí)率; (4)max_depth:最大學(xué)習(xí)深度,主要作用是防止過(guò)擬合; (5)min_data:一片葉子中數(shù)據(jù)的最小數(shù)量,也可以防止過(guò)擬合; (6)feature_fraction:選擇特征與總特征數(shù)的比值,取值范圍介于0、1之間,如果feature_fraction值小于0,那么LightGBM在每一次迭代時(shí)會(huì)隨機(jī)選擇部分特征。feature_fraction不僅控制選擇總特征數(shù)的比例,且能夠加快訓(xùn)練速度,同時(shí)防止過(guò)擬合。 (7)bagging_faction:選擇數(shù)據(jù)與總數(shù)據(jù)量的比值。取值范圍也介于0、1之間,與feature_fraction類似,能夠加快訓(xùn)練速度,同時(shí)防止過(guò)擬合,但是隨機(jī)并且不重復(fù)選擇的是相應(yīng)比例的觀測(cè),必須要將其設(shè)置成大于0的比例。 為了預(yù)測(cè)基站小區(qū)在將來(lái)一天的各個(gè)時(shí)間段(時(shí)間粒度為1個(gè)小時(shí))是否可以節(jié)能,本文通過(guò)特征工程構(gòu)建,將時(shí)間序列問(wèn)題[12]轉(zhuǎn)換成分類預(yù)測(cè)問(wèn)題,采用機(jī)器學(xué)習(xí)算法中的LightGBM算法進(jìn)行建模,訓(xùn)練有監(jiān)督的基站小區(qū)節(jié)能預(yù)測(cè)模型。整個(gè)建模流程框架如圖1所示。 圖1 模型流程框架圖 本次建模使用的數(shù)據(jù)來(lái)源于2020AIIA杯人工智能5G網(wǎng)絡(luò)應(yīng)用大賽,主辦方提供了5個(gè)可用的數(shù)據(jù)文件,文件名稱及其文件內(nèi)容如表1所示。 表1 數(shù)據(jù)文件及其內(nèi)容描述 特征工程[13]主要是把原始數(shù)據(jù)轉(zhuǎn)化為模型可以訓(xùn)練的數(shù)據(jù)集,經(jīng)過(guò)特征工程得到的數(shù)據(jù)可以決定機(jī)器學(xué)習(xí)的上限,會(huì)直接影響到模型的預(yù)測(cè)性能,在機(jī)器學(xué)習(xí)過(guò)程中占有舉足輕重的地位。本文特征工程一般包括以下三個(gè)部分,分別是特征選擇、特征構(gòu)建、特征提取。 (1)特征選擇 特征選擇是刪除冗余或者不相關(guān)的特征,使得有效特征個(gè)數(shù)減少并減少模型訓(xùn)練時(shí)間,從而提高模型訓(xùn)練的精確度。 基站小區(qū)基礎(chǔ)信息表和基站基礎(chǔ)信息表反映了基站小區(qū)和基站基本信息,這些基本信息不回隨著日期的變化而變化,因此刪除了兩個(gè)表中的日期pm_date字段并進(jìn)行去重。另外基站小區(qū)基礎(chǔ)信息表中存在單一值域的字段,如所屬扇區(qū)編號(hào)related_sectorid、PLMN標(biāo)識(shí)的列表plmnidlist等字段,刪除這些僅有單一值的類別字段,并對(duì)其進(jìn)行獨(dú)熱編碼操作。 (2)特征構(gòu)建 特征構(gòu)建是指通過(guò)研究原始數(shù)據(jù)樣本,結(jié)合機(jī)器學(xué)習(xí)專業(yè)知識(shí)及建模經(jīng)驗(yàn),思考問(wèn)題的數(shù)據(jù)結(jié)構(gòu)和潛在形式,人工構(gòu)造出新的特征,并且這些新構(gòu)造的特征能夠提高模型訓(xùn)練的效果,同時(shí)具有一定的工程意義。 根據(jù)提供的基站小區(qū)每個(gè)時(shí)段節(jié)能表可知,本文建模的目標(biāo)是預(yù)測(cè)基站小區(qū)未來(lái)一天內(nèi)每個(gè)時(shí)間段(時(shí)間粒度為1小時(shí))的節(jié)能標(biāo)識(shí)。但是基站小區(qū)資源信息表主要描述了每個(gè)基站小區(qū)的每15分鐘的資源使用情況的匯總數(shù)據(jù),都是量化的指標(biāo),因而針對(duì)基站小區(qū)資源信息表,構(gòu)建基站小區(qū)每天每個(gè)小時(shí)的各項(xiàng)資源指標(biāo)的均值,然后在其基礎(chǔ)上進(jìn)一步構(gòu)建基站小區(qū)每個(gè)小時(shí)的均值、中位數(shù)、最大值、最小值、總和以及方差等六項(xiàng)指標(biāo),以此來(lái)標(biāo)識(shí)基站小區(qū)在每個(gè)小時(shí)各項(xiàng)指標(biāo)的穩(wěn)定性特征。并將待預(yù)測(cè)日期的前1天、前2天、前3天的各項(xiàng)資源指標(biāo)作為基站小區(qū)每個(gè)小時(shí)的前序特征加入特征寬表,標(biāo)識(shí)其近期資源特征情況。此外,進(jìn)一步分析各項(xiàng)指標(biāo)之間的關(guān)系后,可進(jìn)一步構(gòu)建業(yè)務(wù)量占比、業(yè)務(wù)量總和等其他特征。 分析基站小區(qū)的歷史節(jié)能標(biāo)簽數(shù)據(jù),可構(gòu)建基站小區(qū)在每個(gè)時(shí)刻的節(jié)能次數(shù)、節(jié)能比率等特征,并可將前一天、前兩天、前三天同時(shí)刻的節(jié)能標(biāo)簽作為基站小區(qū)每個(gè)小時(shí)的前序特征??紤]節(jié)能的時(shí)序特征,針對(duì)構(gòu)建得到的基站小區(qū)每個(gè)時(shí)刻的節(jié)能比率特征,對(duì)時(shí)間進(jìn)行前后滑動(dòng),可得到前后3個(gè)時(shí)刻的環(huán)比節(jié)能特征,如圖2所示。 圖2 基于時(shí)間窗口滑動(dòng)的特征構(gòu)建示意圖 (3)特征提取 特征提取是一個(gè)將機(jī)器學(xué)習(xí)算法不能識(shí)別出來(lái)的原始數(shù)據(jù)轉(zhuǎn)變成可以識(shí)別到數(shù)據(jù)特征的過(guò)程。本文采用兩種方法進(jìn)行特征取,分別基于PCA方法[14]和基于時(shí)間窗口映射?;跁r(shí)間窗口映射是指定義不同大小的映射窗口,將原始時(shí)間映射到相應(yīng)的窗口區(qū)間,再基于映射后的時(shí)間塊構(gòu)建相應(yīng)的基站小區(qū)節(jié)能比率、平均節(jié)能次數(shù)等特征,如圖3所示。 圖3 基于時(shí)間窗口映射特征提取示意圖 基于PCA方法指的是分別從日期維度和小時(shí)維度出發(fā)后構(gòu)建各基站小區(qū)的節(jié)能比率,再使用PCA方法進(jìn)行特征提取,如圖4所示,其中M代表基站小區(qū)數(shù), T代表提取周期內(nèi)天數(shù),P表示降維后的維數(shù)。 圖4 基于PCA方法特征提取示意圖 基于上述的特征工程操作,可以基于一定周期的基站小區(qū)歷史數(shù)據(jù)可以完成數(shù)據(jù)寬表的構(gòu)建,為了實(shí)現(xiàn)對(duì)未來(lái)一天各基站小區(qū)各時(shí)刻(小時(shí))的節(jié)能標(biāo)識(shí)進(jìn)行預(yù)測(cè),傳統(tǒng)的做法是使用待預(yù)測(cè)前一天(N-1)的節(jié)能標(biāo)識(shí)作為標(biāo)簽,第N-1天之前的M天歷史數(shù)據(jù)構(gòu)建特征,得到訓(xùn)練數(shù)據(jù)集,再使用第N天之前的M天歷史數(shù)據(jù)構(gòu)建特征得到測(cè)試數(shù)據(jù)集,這種做法可在數(shù)據(jù)周期樣本較少的時(shí)候完成模型的構(gòu)建與節(jié)能標(biāo)簽預(yù)測(cè),即M最小等于1,最少需要兩天的歷史數(shù)據(jù)。 但是當(dāng)樣本周期較多時(shí),該方法則不能充分挖掘時(shí)間周期性的特征,從而限制了模型準(zhǔn)確率的提升。因此本文提出了一種同周期的數(shù)據(jù)集特征構(gòu)建方法,同周期是指預(yù)測(cè)的日期如果屬于周一,那么訓(xùn)練數(shù)據(jù)集的標(biāo)簽也都取周一的樣本數(shù)據(jù),然后都基于標(biāo)簽日期的前M天歷史數(shù)據(jù)構(gòu)建特征,該方法構(gòu)建的訓(xùn)練集和預(yù)測(cè)集,樣本的特征和樣本的標(biāo)簽都是同一個(gè)時(shí)期,保證了數(shù)據(jù)的分布一致性,在實(shí)驗(yàn)中也發(fā)現(xiàn)能夠明顯提升模型的準(zhǔn)確率。同周期數(shù)據(jù)集構(gòu)建如圖5所示,待預(yù)測(cè)的樣本是2020-08-31,該日期屬于周一,那么確定三個(gè)周一(2020-08-10/2020-08-17/2020-08-24)作為標(biāo)簽,取待預(yù)測(cè)標(biāo)簽的前M(M=8)天歷史數(shù)據(jù),應(yīng)用特征工程的操作構(gòu)建數(shù)據(jù)集寬表,合并同周期的訓(xùn)練數(shù)據(jù)并打亂后得到最終的訓(xùn)練數(shù)據(jù)集,待預(yù)測(cè)歷史數(shù)據(jù)集構(gòu)建的特征寬表作為測(cè)試數(shù)據(jù)集,至此完成了訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)的構(gòu)建。 圖5 基于同周期法的數(shù)據(jù)集構(gòu)建示意圖 本文研究了2種最常用的機(jī)器學(xué)習(xí)算法GBDT和LightGBM的區(qū)別和特點(diǎn),通過(guò)對(duì)預(yù)測(cè)精度和復(fù)雜度的比較,最終整個(gè)模型的核心算法采用LightGBM,并使用Python語(yǔ)言編程實(shí)現(xiàn)數(shù)據(jù)處理和模型訓(xùn)練過(guò)程。其中,LightGBM參數(shù)設(shè)置如表2所示。 表2 模型參數(shù)設(shè)置表 由于對(duì)基站小區(qū)節(jié)能預(yù)測(cè)模型的研究是一個(gè)二分類任務(wù),因而采用F1-score作為本次建模的模型評(píng)估指標(biāo)。為了說(shuō)明該指標(biāo)的計(jì)算方式,引入混淆矩陣表,如表3所示。 表3 混淆矩陣 真陽(yáng)例(TP):樣本本身是正樣本,預(yù)測(cè)結(jié)果也是正樣本; 真陰例(TN):樣本本身是負(fù)樣本,預(yù)測(cè)結(jié)果也是負(fù)樣本; 假陽(yáng)例(FP):樣本本身是負(fù)樣本,預(yù)測(cè)結(jié)果是正樣本; 假陰例(FN):樣本本身是正樣本,預(yù)測(cè)結(jié)果為負(fù)樣本; 精確度(Precision):表示預(yù)測(cè)結(jié)果中正樣本中真實(shí)標(biāo)簽也是正樣本所占的比率,計(jì)算公式如下: 召回率(Recall):表示真實(shí)結(jié)果為正樣本中預(yù)測(cè)結(jié)果為正樣本所占的比率,其計(jì)算公式如下: F1-score:精確度與召回率的調(diào)和平均數(shù),其計(jì)算公式如下: (1)同學(xué)習(xí)率、不同迭代次數(shù)時(shí)不同模型F1值對(duì)比 圖6 同學(xué)習(xí)率、不同迭代次數(shù)時(shí)不同模型F1值對(duì)比 圖6展示了在學(xué)習(xí)率相同、迭代次數(shù)不同時(shí)不同模型下F1值的對(duì)比情況,其中,橫坐標(biāo)表示迭代次數(shù),縱坐標(biāo)表示F1值。從圖中可以得出,隨著迭代次數(shù)的不斷增加,LightGBM和GBDT算法的F1值呈現(xiàn)出先增后減的趨勢(shì),并且在迭代次數(shù)為3000時(shí),兩個(gè)算法都達(dá)到各自的最優(yōu)值,另外,可以看出在同樣的迭代次數(shù)下,LightGBM的訓(xùn)練效果始終優(yōu)于GBDT算法,其平均預(yù)測(cè)精度比GBDT高出19%。 (2)同迭代次數(shù)、不同學(xué)習(xí)率時(shí)不同模型F1值對(duì)比 圖7展示了同迭代次數(shù)、不同學(xué)習(xí)率時(shí)不同模型的F1值對(duì)比情況,其中,橫坐標(biāo)表示學(xué)習(xí)率,縱坐標(biāo)表示F1值。該圖反映了隨著學(xué)習(xí)率的不斷遞減,LightGBM和GBDT算法的F1值也呈現(xiàn)出先增后減的趨勢(shì),并且在學(xué)習(xí)率為0.007時(shí),F(xiàn)1值最大,兩個(gè)算法都達(dá)到各自的最優(yōu)效果,另外在同樣的學(xué)習(xí)率下,LightGBM模型下訓(xùn)練結(jié)果RMSE值始終優(yōu)于GBDT,其平均預(yù)測(cè)精度比GBDT高出20.7%。 圖7 同迭代次數(shù)、不同學(xué)習(xí)率時(shí)不同模型F1值對(duì)比 本文提供了一種采用機(jī)器學(xué)習(xí)算法LightGBM預(yù)測(cè)基站小區(qū)節(jié)能的新思路,從多個(gè)角度構(gòu)建了豐富的特征工程,并對(duì)比了LightGBM和GBDT算法在模型預(yù)測(cè)準(zhǔn)確率的差異,通過(guò)以上實(shí)驗(yàn)結(jié)果表明,該算法效果顯著。對(duì)于本文實(shí)驗(yàn)的優(yōu)化方向,主要從以下幾個(gè)方面進(jìn)行優(yōu)化。 (1)將研究CatBoost[15]、TabNet[16]等先進(jìn)算法并進(jìn)行模型融合,進(jìn)一步提高模型的預(yù)測(cè)精度; (2)將結(jié)合分布式訓(xùn)練機(jī)制[17],提升模型的推理速度,加速模型的落地應(yīng)用。1.2 LightGBM應(yīng)用
2 一種基站小區(qū)節(jié)能的預(yù)測(cè)方法
2.1 數(shù)據(jù)收集與預(yù)處理
2.2 特征工程
2.3 數(shù)據(jù)集構(gòu)建
2.4 模型訓(xùn)練與評(píng)估
2.5 實(shí)驗(yàn)結(jié)果與分析
3 結(jié)語(yǔ)