王瓊,呂征宇,薛禮月
(國(guó)網(wǎng)上海市電力公司經(jīng)濟(jì)技術(shù)研究院,上海 200233)
電力工程建設(shè)具有投資金額大、建設(shè)周期長(zhǎng)的特點(diǎn),而造價(jià)管理是相關(guān)工程管理工作中的重點(diǎn)內(nèi)容[1-4]。電力工程造價(jià)數(shù)據(jù)具有多變量及非線性等特征,但傳統(tǒng)的電力工程造價(jià)僅依靠人工核算的方法,管理人員通常根據(jù)工程平面圖和相關(guān)報(bào)價(jià)進(jìn)行計(jì)算,數(shù)字化程度較低。同時(shí),現(xiàn)代電力工程的發(fā)展也使得人工核算方法的局限性被不斷放大[5-6]。因此,使用數(shù)字化與自動(dòng)化的手段對(duì)相關(guān)投資行為進(jìn)行合理、科學(xué)的管理及預(yù)測(cè)是未來(lái)的發(fā)展趨勢(shì)。
在其他領(lǐng)域,例如電力負(fù)荷預(yù)測(cè)、電力系統(tǒng)故障預(yù)測(cè)中,通常采用人工智能的相關(guān)算法,預(yù)測(cè)準(zhǔn)確度較高。而電力造價(jià)數(shù)據(jù)從屬性的角度來(lái)看與這些領(lǐng)域基本一致,均具有高維度、非線性及時(shí)序性等特征。因此,文中使用多維注意力神經(jīng)網(wǎng)絡(luò)對(duì)電力工程數(shù)據(jù)進(jìn)行分析,并提取數(shù)據(jù)的多維度特征,進(jìn)而實(shí)現(xiàn)對(duì)數(shù)據(jù)的分析與預(yù)測(cè)。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)[7-9]是一種前饋多層神經(jīng)網(wǎng)絡(luò),一維卷積神經(jīng)網(wǎng)絡(luò)由輸入層、卷積層、池化層、全連接層和輸出層組成。其中,輸入層與輸出層完成數(shù)據(jù)的輸入、輸出,卷積層及池化層對(duì)輸入信號(hào)進(jìn)行卷積和池化運(yùn)算,最終通過(guò)全連接層獲取數(shù)據(jù)的分類(lèi)結(jié)果。CNN 網(wǎng)絡(luò)的結(jié)構(gòu)如圖1 所示。
圖1 CNN網(wǎng)絡(luò)結(jié)構(gòu)
文中所采用的卷積層由一維卷積核組成,每個(gè)卷積核均對(duì)輸入信號(hào)的域進(jìn)行卷積運(yùn)算。卷積運(yùn)算的過(guò)程如下所示:
式中,l為卷積核數(shù);Xi為第i層的特征向量;wij表示第i層卷積的第j個(gè)卷積權(quán)重值;bj表示第j個(gè)偏置值;f(·)為激活函數(shù);Xj為卷積輸出值。激活函數(shù)的作用是將輸入數(shù)據(jù)完成從非線性到線性的映射。常用的激活函數(shù)為tanh 函數(shù),其計(jì)算公式為:
該文將池化層部署在多個(gè)卷積層之間,主要作用是對(duì)卷積層的高維數(shù)據(jù)進(jìn)行降維,并對(duì)卷積得到的結(jié)果加以簡(jiǎn)化,進(jìn)而減少計(jì)算參數(shù)。池化過(guò)程可表示為:
式中,βj表示權(quán)重值;bj表示偏置值;D(·)表示采樣函數(shù)。
全連接層可以將本層神經(jīng)元與前一層神經(jīng)元相連接,進(jìn)而實(shí)現(xiàn)從特征數(shù)據(jù)到最終輸出的映射,再通過(guò)分類(lèi)函數(shù)完成最終的輸出。文中通過(guò)用Softmax函數(shù)獲得分類(lèi)結(jié)果,該函數(shù)可表征為:
式中,zi為第i個(gè)卷積核的輸出值;C為輸出卷積核的個(gè)數(shù),其對(duì)應(yīng)的數(shù)據(jù)即為分類(lèi)類(lèi)別的數(shù)量。
輸入數(shù)據(jù)經(jīng)過(guò)卷積神經(jīng)網(wǎng)絡(luò)的各層最終輸出,隨著通道數(shù)的增加,特征向量不斷變小,而不同尺寸的卷積核對(duì)數(shù)據(jù)的篩選能力也有所不同。因此,對(duì)多種不同尺寸的卷積核進(jìn)行合理組合可以全面提升CNN網(wǎng)絡(luò)的特征提取能力。在多尺度CNN中,每個(gè)層的卷積層均由不同大小的卷積模塊組成,如圖2 所示。
圖2 多尺度卷積神經(jīng)網(wǎng)絡(luò)
該文采用的多尺度網(wǎng)絡(luò)主要參數(shù)如表1 所示。
表1 多尺度卷積神經(jīng)網(wǎng)絡(luò)主要參數(shù)
雖然多尺度卷積網(wǎng)絡(luò)相較于一維神經(jīng)網(wǎng)絡(luò)在訓(xùn)練準(zhǔn)確度方面有所提高,但隨著網(wǎng)絡(luò)層數(shù)的不斷增加,訓(xùn)練的計(jì)算開(kāi)銷(xiāo)也會(huì)持續(xù)提升,而模型的魯棒性和抗噪性則會(huì)進(jìn)一步下降。因此,需要對(duì)多尺度卷積網(wǎng)絡(luò)加以改進(jìn),文中選擇殘差網(wǎng)絡(luò)(Residual Network,ResNet)[10-13]來(lái)進(jìn)行改進(jìn)。
殘差網(wǎng)絡(luò)是一種多層次網(wǎng)絡(luò)間的快速鏈接方式,該網(wǎng)絡(luò)并未對(duì)多個(gè)網(wǎng)絡(luò)的映射關(guān)系進(jìn)行分析,而是直接映射殘差網(wǎng)絡(luò)自身與網(wǎng)絡(luò)的關(guān)系,使原始輸入信息可以無(wú)損傳遞到后續(xù)的輸出層中,且通過(guò)層與層之間相連,進(jìn)而有效解決網(wǎng)絡(luò)收斂及梯度消失等問(wèn)題。該文采用的ResNet 網(wǎng)絡(luò)結(jié)構(gòu)如圖3 所示。
圖3 ResNet網(wǎng)絡(luò)結(jié)構(gòu)
可以看到,ResNet 網(wǎng)絡(luò)以殘差單元為主要組成結(jié)構(gòu),可將多個(gè)殘差結(jié)構(gòu)進(jìn)行堆疊。當(dāng)輸入數(shù)據(jù)為x時(shí),殘差結(jié)構(gòu)的輸出則為F(x)+x,F(xiàn)(x)則為原網(wǎng)絡(luò)的輸出。
雖然ResNet 網(wǎng)絡(luò)可以在一定程度上解決一維卷積網(wǎng)絡(luò)存在的問(wèn)題,但其存在參數(shù)過(guò)大的弊端,因此仍需對(duì)ResNet 網(wǎng)絡(luò)進(jìn)行簡(jiǎn)化,以降低數(shù)據(jù)過(guò)擬合的風(fēng)險(xiǎn)。文中將原始的二維ResNet 網(wǎng)絡(luò)降為一維網(wǎng)絡(luò),從而達(dá)到簡(jiǎn)化網(wǎng)絡(luò)、實(shí)現(xiàn)特征網(wǎng)絡(luò)重復(fù)利用的目的。更改后的ResNet 網(wǎng)絡(luò)與多尺度網(wǎng)絡(luò)結(jié)合的簡(jiǎn)化結(jié)構(gòu)如圖4 所示。
圖4 優(yōu)化ResNet網(wǎng)絡(luò)結(jié)構(gòu)
從圖4 可知,優(yōu)化后的ResNet 網(wǎng)絡(luò)被放置在大尺度卷積中。由于小尺度卷積核提取的多為局部特征,其所包含的時(shí)序特性是短期的;而深層網(wǎng)絡(luò)使用的大尺度卷積全局性較強(qiáng),包含的時(shí)序特征則是長(zhǎng)期的。因此將局部和全局特征相連接,并將殘差網(wǎng)絡(luò)放置在大尺度卷積中,進(jìn)而使模型獲得更為全面的特征信息,同時(shí)還可提升模型的運(yùn)算速度。
多頭注意力機(jī)制(Multi-Head Attention)[14-16]是一種并行注意力機(jī)制,其可使輸入數(shù)據(jù)的編碼能力大幅提升。該機(jī)制使用矩陣對(duì)原始注意力機(jī)制中的Q、K、V三種向量進(jìn)行映射,同時(shí)對(duì)原始數(shù)據(jù)完成多次注意力操作,之后再進(jìn)行合并。執(zhí)行過(guò)程如下:
式中,Wi表示權(quán)重矩陣,fattention表示注意力拼接函數(shù)。
輸入數(shù)據(jù)經(jīng)由殘差網(wǎng)絡(luò)后,會(huì)得到海量的數(shù)據(jù)特征,為了對(duì)這些特征進(jìn)行分類(lèi),在殘差網(wǎng)絡(luò)后加入多頭注意力模塊,該模塊是對(duì)單個(gè)卷積中注意力模塊的拼接。設(shè)計(jì)的單個(gè)卷積注意力模塊的結(jié)構(gòu)如圖5所示。
圖5 單個(gè)卷積塊注意力模塊的結(jié)構(gòu)
圖5 中,注意力機(jī)制分為通道注意力模塊和空間注意力模塊。假定輸入特征向量為X,則卷積塊注意力機(jī)制會(huì)沿著通道和空間構(gòu)建兩種不同的輸出特征,如下所示:
式中,X″為最終輸出結(jié)果,?為張量積運(yùn)算。通道注意力的計(jì)算方式為最大池化和平均池化,計(jì)算公式為:
式中,使用ReLU 作為總的激活函數(shù),σ則表示Sigmoid 函數(shù)。
空間注意力也是通過(guò)兩個(gè)池化來(lái)完成的運(yùn)算過(guò)程:
文中最終模型由上述改進(jìn)的多尺度卷積神經(jīng)網(wǎng)絡(luò)、殘差網(wǎng)絡(luò)以及多頭卷積注意力機(jī)制組成。該模型首先通過(guò)大尺度的卷積核獲取數(shù)據(jù)的全局特征,進(jìn)而得到多尺度的殘差網(wǎng)絡(luò);然后,將殘差網(wǎng)絡(luò)結(jié)構(gòu)放置于粗尺度網(wǎng)絡(luò)與細(xì)尺度網(wǎng)絡(luò)之間;最后再放置多頭注意力機(jī)制,并通過(guò)全連接層得到最后的預(yù)測(cè)結(jié)果。MultiATT-CNN 算法模型結(jié)構(gòu)如圖6 所示。
圖6 MultiATT-CNN算法模型結(jié)構(gòu)
文中算例數(shù)據(jù)集來(lái)源于國(guó)家電網(wǎng)中的電力基建工程數(shù)據(jù),數(shù)據(jù)獲取軟件為D-Grid 基建管理平臺(tái)。數(shù)據(jù)可分為5 個(gè)類(lèi)型,具體如表2 所示。同時(shí)使用Python3.7 編寫(xiě)算法代碼,并將TensorFlow 作為深度學(xué)習(xí)框架。硬件配置如表3 所示。
表2 數(shù)據(jù)分類(lèi)信息
表3 實(shí)驗(yàn)配置信息
在仿真測(cè)試前,還需要對(duì)模型的仿真參數(shù)進(jìn)行確定。對(duì)深度學(xué)習(xí)而言,迭代次數(shù)的選擇極為關(guān)鍵,次數(shù)過(guò)多容易使模型陷入梯度消失的風(fēng)險(xiǎn),次數(shù)過(guò)少則會(huì)導(dǎo)致準(zhǔn)確度降低。因此,首先對(duì)迭代次數(shù)進(jìn)行了仿真,實(shí)驗(yàn)結(jié)果如圖7 所示,設(shè)定迭代次數(shù)為11 次。
圖7 迭代次數(shù)仿真結(jié)果
在仿真測(cè)試中,首先進(jìn)行消融實(shí)驗(yàn),驗(yàn)證所提改進(jìn)模型與原始模型的差異。對(duì)比算法為CNN、多尺度CNN、多尺度CNN-ResNet。算法數(shù)據(jù)中的訓(xùn)練集選擇2016—2020 年的基建投資數(shù)據(jù),驗(yàn)證集為2021年的數(shù)據(jù),評(píng)價(jià)指標(biāo)則為平均預(yù)測(cè)準(zhǔn)確率及運(yùn)行時(shí)間。消融實(shí)驗(yàn)測(cè)試結(jié)果如表4 所示。
表4 消融實(shí)驗(yàn)測(cè)試結(jié)果
由表4 可知,在添加了殘差網(wǎng)絡(luò)以及注意力機(jī)制后,算法的預(yù)測(cè)準(zhǔn)確度會(huì)逐漸提升。而多尺度CNN 算法由于采用了多個(gè)尺度和數(shù)量的卷積核,相較原始算法其運(yùn)行時(shí)間有所增加,但在加入殘差結(jié)構(gòu)后,運(yùn)行時(shí)間減少了約4 s。
在橫向算法測(cè)試中,文中使用同類(lèi)型算法進(jìn)行了對(duì)比仿真測(cè)試。對(duì)比算法選擇LSTM、XGBoost、BP 神經(jīng)網(wǎng)絡(luò)和隨機(jī)森林算法,評(píng)價(jià)指標(biāo)為平均預(yù)測(cè)準(zhǔn)確率及算法運(yùn)行時(shí)間。最終的測(cè)試結(jié)果如表5所示。
表5 橫向算法測(cè)試結(jié)果
從表5 中可以看出,該文算法的平均預(yù)測(cè)準(zhǔn)確率在所有算法中最高,同時(shí)由于算法中加入了可以縮短運(yùn)行時(shí)間的殘差網(wǎng)絡(luò),因此其在對(duì)比算法中的運(yùn)行時(shí)間也最低。這說(shuō)明該文算法具有良好的性能及效率,魯棒性及工程適用性均較高。
文中基于改進(jìn)神經(jīng)網(wǎng)絡(luò)提出了一種電力工程造價(jià)數(shù)據(jù)的分析算法。在對(duì)CNN 進(jìn)行改進(jìn)的基礎(chǔ)上,采用多尺度卷積核提升模型的全局感知能力,同時(shí)使用殘差網(wǎng)絡(luò)增加模型的訓(xùn)練速度,利用多頭注意力機(jī)制增強(qiáng)了模型的編碼能力。測(cè)試結(jié)果表明,該文算法相較于對(duì)比算法具有更高的準(zhǔn)確率及更快的運(yùn)行速度,說(shuō)明其工程應(yīng)用能力較優(yōu)。