路 寬,楊興森,王海超,劉 科,楊子江
(1.國網山東省電力公司電力科學研究院,山東 濟南 250003;2.山東科技大學電氣與自動化工程學院,山東 青島 266590)
飛灰含碳量是影響鍋爐燃燒熱效率的主要因素[1-3]。飛灰含碳量過高,會造成機械不完全燃燒熱損失增大,燃燒效率下降,鍋爐受熱面磨損、結焦積灰,從而縮短使用壽命,嚴重時會出現鍋爐滅火、機組停運等事故。因此,飛灰含碳量的實時準確預測對于火電廠機組的安全運行、節能減排、經濟效益等有著重要意義。
目前,飛灰含碳量的預測方法主要是通過采集易于檢測且與飛灰含碳量密切相關的輔助變量,研究其與飛灰含碳量之間的關系,然后運用統計分析、機器學習等方法建立可靠的數學模型[4]。王芳等[5]提出利用隨機森林的變量選擇方法篩選最優變量,將最優變量完成隨機森林建模訓練,進而實現了飛灰含碳量的預測;王春林等[6-7]應用支持向量機算法建立了大型四角切圓燃燒鍋爐飛灰含碳量特性的模型;崔銳等[8]運用反向傳播(Back Propagation,BP)神經網絡進行飛灰含碳量預測,并結合LM(Levenberg?Marquardt,LM)優化算法進行網絡訓練;趙新木等[9]基于BP 神經網絡建立了飛灰含碳量預測模型,并進行了單因素影響因素分析;馮旭剛等[10]提出了基于遺傳神經網絡敏感度分析的飛灰含碳量測量方法。
上述文獻中關于飛灰含碳量預測的方法都是以影響參數和飛灰含碳量的采樣周期一致為前提的。但現實中,受飛灰實時采樣裝置維護成本高、準確度低或沒有安裝等因素影響,大部分電廠的飛灰含碳量主要是通過燃燒失重法[11]來實現測量。由于燃燒失重法存在中間環節多、測量結果時間滯后等問題,因此獲得飛灰含碳量樣本的采樣周期必然與鍋爐運行參數等實時指標的采樣周期存在偏差。前者的采樣是以小時級為單位,而后者的采樣周期往往以分鐘級為單位。
因此,為了能夠既保證實際飛灰測量的準確度,又充分利用鍋爐運行的大數據信息以提高飛灰含碳量預測模型的準確度,提出一種基于知識蒸餾框架的火電廠鍋爐飛灰含碳量預測模型,目的是在模型輸入值采樣周期和實際飛灰含碳量采樣周期存在差異時,給出準確的分鐘級飛灰含碳量預測結果。該框架由Teacher 模型和Student 模型兩部分組成,其中:Teacher 模型通過前饋神經網絡模型彌補鍋爐實時運行參數和飛灰實際測量值的采樣周期差異,完成對實時飛灰含碳量的數值模擬;Student 模型則通過隨機森林模型完成對飛灰含碳量的實時預測。模型應用于山東省內某電廠在運機組的飛灰含碳量預測,取得了良好的效果。
影響飛灰含碳量的因素主要分為設備運行因素和煤質因素兩大類。機組運行因素主要包括發電機組有功功率、選擇性催化還原(Selective Catalytic Reduction,SCR)進口煙氣氧量、一次風機風量、二次風機風量等25 個指標;煤質因素主要包括空氣干燥基水分、灰分等7個指標。表1給出了建模過程中所使用的主要變量名稱。其中:鍋爐運行指標的采樣頻率為1條/min,煤質和實際飛灰含碳量的采樣頻率都為1 條/6 h。這里,考慮到煤質的變化周期較長,因此認為煤質數據在每6 h的周期內不發生變化,這樣就可以把煤質數據分解到每分鐘里,與運行數據保持一致。

表1 模型主要參數
通過山東省網源監督服務技術平臺提取了山東省某電廠的機組運行和煤質數據作為建模的數據源。由于數據中存在缺失值、異常值等,因此建立了數據預處理流程以提升數據質量,如圖1所示。

圖1 飛灰含碳量數據預處理流程
在機器學習和認知科學領域,人工神經網絡是一種模仿生物神經網絡的結構和功能的數學模型或計算模型,用于對函數進行估計或近似[12]。神經網絡由大量的人工神經元聯結進行計算,其能在綜合外界信息的基礎上改變內部結構,是一種自適應系統。這里的Teacher 模型采用了多層前饋神經網絡,學習從自變量到因變量的映射。模型為含4 層神經網絡,輸入變量維度為32 維,兩個隱含層的神經元個數分別為512 和256,最終輸出層為含碳量的預測,如圖2所示。

圖2 Teacher模型網絡結構
選取ReLU 函數[13](Rectified Linear Unit,ReLU)作為Teacher模型的激活函數,計算公式為

Student 模型采用了隨機森林算法Xgboost[14]。Xgboost 每一輪訓練一棵樹,使得損失函數能夠極小化。其損失函數不僅衡量了模型的擬合誤差,還增加了正則化項,即對每棵樹復雜度的懲罰項,來防止過擬合。損失函數的計算公式為

式中:l為衡量實際飛灰含碳量yi與預測的飛灰含碳量之間的差值;為損失函數的懲罰項,它通過對模型的復雜度進行懲罰來提高模型的泛化能力,ω為每棵樹上葉子的權值,T為決策樹的葉子數量,λ與γ為系數。

式中:k為決策樹的數量;Γ為決策樹的集合;fk(xi)為樣本xi在第k棵樹上的預測結果。
在訓練的過程中,樹的建立過程由計算公式(4)給出。

Hinton[15]等提出知識蒸餾的方法,用結構復雜、參數較多的Teacher 模型訓練,利用其預測輸出作為Student 模型的軟目標;然后利用輕量的Student 模型進行二次訓練,從而在分類問題中可以得到與復雜Teacher模型相近的結果。
首先,運用Teacher 模型學習出從分鐘級工況和煤質數據到小時級飛灰含碳量的映射。訓練完成的模型則可以得到分鐘級的飛灰含碳量計算結果。為了完成不同采樣周期的監督學習,對Teacher 模型的損失函數進行重新構建

式中:LTSR-T為Teacher 模型的損失函數;n為目標樣本的數量,即實際得到的飛灰含碳量數量,每個目標樣本之間的時間是6 h;i為第i個樣本為Teacher模型的分鐘級飛灰含碳量預測值;j為對應第i個時間段內的第j分鐘樣本,因此是分鐘級的模型預測;t為第i個時間段內的分鐘數,由于飛灰含碳量的實際觀察時間間隔為6 h,因此t為360。

式中:為Student模型的分鐘級飛灰含碳量預測值。
綜上,基于知識蒸餾的飛灰含碳量預測預測流程為:
1)對分鐘級鍋爐運行工況參數、煤質參數和小時級的飛灰含碳量實際觀測值進行數據提取和預處理;以工況和煤質數據作為輸入數據,飛灰含碳量作為目標數據,形成總體訓練數據集。
2)將分鐘級輸入數據輸入到Teacher 模型中,輸出分鐘級飛灰含碳量預測數據,得到軟目標;通過修改損失函數,完成模型訓練。
3)將訓練完成Teacher 模型分鐘級預測結果作為Student 模型的目標值,對模型進行訓練。輸入數據同樣為步驟2)中的分鐘級輸入數據。
4)將新的分鐘級輸入數據輸入訓練完成的Student模型即可得到預測分鐘級飛灰含碳量數據。

圖3 基于知識蒸餾框架的飛灰含碳量預測流程
本次數值試驗選取山東省某電廠額定容量680 MW機組2018 年全年鍋爐運行、煤質及飛灰含碳量數據。其中:鍋爐運行數據為分鐘級采樣,煤質和飛灰含碳量為每6 h采樣。為了對比驗證模型的效果,分別選取了單獨使用Teacher 模型以及Teacher?Student模型2個方案。在利用2種方案進行訓練時,首先對所有樣本進行隨機抽取處理,即打亂數據的順序;然后對所有樣本均按照7∶3 的比例劃分訓練集與測試集;在訓練集上訓練模型后,再在測試集上驗證模型的效果。
預測結果顯示模型在測試集上的10 次試驗的平均誤差。采用Teacher?Student 模型的測試集誤差較僅用Teacher 模型下降16.5%,同時每個數據點的預測準確度還更加穩定,如表2所示。

表2 模型測試集誤差 單位:%
將Teacher?Student 方案的預測結果繪制出來與實際飛灰含碳量進行比較,如圖4所示。從圖4中可以看出,經過知識蒸餾的模型能夠比較精準地給出飛灰含碳量的預測結果,特別是在飛灰含碳量波動較大的區間中,模型依然能夠比較好地識別出數據變化的形態與趨勢。

圖4 Teacher?Student模型預測結果對比
運用機器學習和深度學習理論和方法,在對數據運用統計方法進行預處理的基礎上,構建了基于知識蒸餾架構的飛灰含碳量預測模型。通過山東省內電廠的實際試驗,研究結果表明:從不同模型探索結果來看,融合Teacher和Student的模型效果優于單獨的Teacher 模型,且模型的穩定性和泛化能力有了一定程度的提高。