陳 路,鄭丹,童楚東
(寧波大學 信息科學與工程學院,浙江 寧波 315211)
質量預測與分析是實現工業過程閉環控制的基礎和關鍵[1]。基于KPLS 的方法可以提高質量預測精度,許多研究人員以KPLS 方法為基石,提出了許多解決非線性問題的方法[1-8]。
核函數是KPLS 方法的關鍵,而KPLS 選擇核函數并不是任意的,必須要滿足Mercer 定理。特定的內核函數選擇隱含地決定了映射和特征空間。在KPLS 中,由于提取系統非線性特征的程度是基于核函數的,因此核函數的選擇是最重要的。如何給基于KPLS 的質量預測選擇理想的核函數和核參數是一個開放的問題[9-10]。而且,一旦設置了核函數,就需要設置適當的核參數。但是,沒有一個理論框架能尋找到指定核函數的參數最最優值,也就是說基于KPLS 的質量預測很大程度上取決于選擇的核函數和核參數。
目前,關于如何選擇核函數的種類和參數來進行質量預測的研究還沒有報道。在過去的幾年里,Huang 提出了一種用于特征選擇和參數優化的遺傳算法[11]。Adriano 將此方法應用于軟件工作量估算[12]。Jia 提出了一種改進遺傳算法,將改進的遺傳算法用于工業過程故障檢測,從而提升了故障監測率[13]。此外,Liu 提出一種基于多核線性學習的KPLS 方法,該方法使用自適應遺傳算法來選擇核函數的參數和權重[14]。這些研究多數都是固定一種核函數,然后對其參數進行優化,或者通過改進遺傳算法提高優化速度。但是,核函數種類不止一種,只選擇其中一種核函數具有局限性。基于這些研究成果,本文結合KPLS 質量預測,建立同時優化核函數及參數的優化模型GA-KPLS-V。通過組合編碼方式,將不同核函數及參數類型結合在一起,在該模型中,核函數類型和核參數被視為決策變量,將質量預測結果RMSE 作為目標,并采用改進遺傳算法對模型進行求解。仿真結果表明,該方法不僅能選出最優核函數,還能選出最優核參數。
KPLS 算法的主要思想是通過一個非線性映射將輸入數據xi∈Rm映射到一個高位的特征空間H,特征空間的維數可以任意大甚至無窮大,然后在高位特征空間H中構建線性PLS 模型。由于特征空間H 的維數很高,不可能直接計算出得分向量、權值向量和回歸數值,因此必須對原始空間的運算公式進行變換,使它只包含映射后數據的內積運算,而內積運算可以由原始空間定義的核函數來表示,即:

其中,K為n×n 維核矩陣,表示非線性映射所選擇的核函數;Φ(xi)為映射后的輸入數據。代表性的核函數如下:
(1)徑向基核函數:

(2)Sigmoid 核函數:

(3)多項式核函數:

其中,c、d、β0、β1是核函數的參數,使用者依 據經驗決定。依據經驗選擇核函數和核參數進行質量預測會造成預測結果不穩定,并且使用不同核函數的最優預測結果也不相同。同時,不同核函數的參數類型和個數也不相同,這也給同時優化多種核函數和核參數增加了難度。徑向基核函數和多項式核函數一直滿足Mercer 定理,但是Sigmoid 核函數只有在特定的和下才滿足條件[14]。
遺傳算法是把問題的解決方案用某種編碼方式表示,產生初始種群并根據適應度函數計算適應度。然后,再利用選擇、交叉和變異操作,不斷迭代優化,直到找到最優解。傳統的遺傳算法編碼方式一般是相同的,不然無法進行選擇、交叉、變異操作。本文采取的是同時優化多種核函數及核參數,因此,編碼、適應度函數、選擇、交叉、變異等操作都需要重新設計。
在質量預測方面,其精度是衡量其算法對數據預測是否準確的一大重要指標,用于衡量預測值對其真實值偏離程度[15]。其計算或表示方法在不同的領域會有些許的不同,核心公式是:

式中,yi表示實際值,表示預測值,n 表示全部樣本數。RMSE 稱作均方根誤差,在訓練集中的均方根誤差表示為RMSEC,在測試集中的均方根誤差表示為RMSET。本文將采用均方根誤差RMSEC 作為確定最優的優化指標。
遺傳算法在進化搜索過程中是以目標函數(即適應度函數)為依據來引導尋優過程的。本文的優化目標是質量預測精度均方根誤差RMSE,因此,適應度函數可以設計為:

本文問題為確定KPLS 中核函數類型及參數,為保證核函數種類的多樣性,避免某種核函數種群過早消失,各類型子類應保證一定的數量[13]。因此,為了滿足要求,需要重新構造適應度函數。

式中,w=e-m+1為加權因子,m為遺傳代數,f_si為某一代中第i 類核函數個體適應度總和,f_s為某一代中所有個體適應度總和。
2.2.1 編碼
遺傳算法常見的編碼方式包括二進制編碼、浮點數編碼、格雷碼和符號編碼等。基于KPLS 質量預測中需要尋優的參數包括核函數的種類及其核參數,種類不同的數其參數個數、范圍也不相同。針對本文的問題,采用了混合編碼策略。如圖1 所示,染色體有三部分:第一部分為核函數類型,采用二進制編碼;其余部分為核參數采用浮點數編碼。當選取徑向基核函數和多項式核函數時,第二部分有效,第三部分無效。當選取Sigmoid 核函數時,第二、第三部分均有效。

圖1 編碼結構
2.2.2 初始種群設置
由于核函數種類少,因此,核函數種類采用枚舉方法,設核函數種類為v。而相對應的核參數范圍較大,不能采用枚舉的方法。設子群個體數為gi,則總群個體數為:

當確定種群大小后,采用隨機辦法產生種群中的個體,并令初始子種群個數為:

2.2.3 遺傳操作
本文選擇輪盤賭方法進行個體選擇。由于采用的是組合編碼,因此交叉操作比一般問題復雜。如果兩個父本核函數種類相同,直接進行一般交叉操作;若種類不同,分別在父代中尋找相同個體進行交叉,如果沒有找到相同個體,則隨機產生一個個體交叉。變異就是以很小的變異概率pm隨機地改變種群中個體的某些基因值,由于采用的組合編碼,因此變異位只選擇參數位變異。
在使用不同核函數建立KPLS 質量預測模型時,可能會出現使用高斯核函數的KPLS 質量預測模型在訓練集上的學習能力好于使用其他核函數的KPLS 質量預測模型,但是在測試集上的表現卻比使用其他兩種核函數的KPLS 質量預測模型差。這種現象在機器學習中稱為“過擬合”。
采用k 折交叉驗證法(K-Fold Cross Validation)能夠有效避免以上情況。首先,將訓練集劃分為k 個大小相同的互斥子集。然后,依次選取不同的區作為驗證集,其余的k-1 個區作為訓練集,每次驗證都會得到一個均方根誤差,最后總誤差為所有誤差的平均值,如圖2 所示。

圖2 k 折交叉驗證原理圖
k折交叉驗證法評估結果的穩定性在很大程度上取決于k 的取值,一般情況下k 的取值區間為[2,10]。本文采用2 折交叉驗證法進行評估。k 值越大,偏差會越小而復雜度會越大,本文研究重點為找到最佳核函數以及核參數,而k 在取值范圍內進行交叉驗證得到的最佳核函數和核參數相同。
KPLS 優化過程如下:
(1)將采集的正常運行數據劃分為訓練集和測試集,對訓練集數據進行標準化處理,保存均值和方差。
(2)確定核函數的種類、初始種群大小和終止條件。根據核函數參數的取值范圍,隨機生成核函數參數并進行編碼。
(3) 通過k折交叉驗證對種群中的每個體進行KPLS建模并計算適應度值。
(4)進行遺傳操作:選擇、交叉、變異,進入下一代。
(5)判斷是否滿足終止條件,如果不滿足,重復步驟(3)~(4);否則,停止迭代。
基于核函數及參數優化的KPLS 質量預測基本算法示意圖如圖3 所示。

圖3 KPLS 質量預測優化過程流程圖
Tennessee Eastman(TE)過程是基于實際工業過程的仿真實例,它由美國Tennessee Eastman 化學公司過程控制部門的Downs和Vogel 于1993 年提出。此過程已經被廣泛作為連續過程的策略、監視、診斷的優化的研究平臺。此過程有4 種反應物(A、C、D、E),生成兩種產物(G和H)。此外,還包含一種惰性物質B 及副產物F。該過程有22 個連續的過程測量值、12 個操作變量和19 個混合測量值。在仿真過程中采樣數據的時間間隔是3 min。本實驗共選取22 個連續變量核11 個操作變量作為輸入變量X,同時選取物流9 中組分G 的摩爾含量作為輸出變量y。首先在正常狀況下讓仿真程序運行25 h 得到960 個正常樣本,然后將前760 個正常樣本作為訓練集數據,將后200 個正常樣本作為測試集數據。
針對徑向基核函數、多項式核函數、Sigmoid 核函數3 種核函數進行尋優。其中,徑向基核函數的參數取在(0.1,50)范圍內;多項式核函數的參數d 取為1~8 的正整數;Sigmoid 核函數的參數β0和β1都取為(1,8)。設 初始種群個子類個體數為8,總種群數為24,根據核函數的數的定義域隨機產生初始種群,遺傳代數為20。
本文稱隨機選取高斯核函數參數的KPLS 質量預測方法為KPLS-G,隨機選取多項式核函數參數的KPLS質量預測方法為KPLS-P,隨機選取Sigmoid 核函數參數的KPLS 質量預測方法為KPLS-S,遺傳算法優化選取高斯核函數參數的KPLS 質量預測方法為GA-KPLS-G。
在訓練集和測試集相同的前提下,分別使用KPLS-G、KPLS-P、KPLS-S、GA-KPLS-G、GA-KPLS-V 進行100次質量預測,預測結果如圖4和圖5 所示,優化過程如圖6~圖9 所示。

圖4 5 種不同核函數選取方法預測結果對比(變量35)

圖5 均方根誤差(變量35)

圖6 核函數種群變化(變量35)

圖9 核函數種群變化(變量40)
對于變量35,從圖4 可以看出,其中實心箱體為訓練結果,空心箱體為測試結果。基于KPLS-G、KPLS-P和KPLS-S 的質量預測結果數據相對分散,說明隨機選取核函數參數會導致預測結果不穩定。基于GA-KPLS-G的質量預測結果數據相對集中,說明預測結果具有較好的穩定性和一致性。但是,核函數種類不止一種,選擇常用的高斯核函數進行優化建立質量預測模型只能得到基于高斯核函數的最優解,從圖中可以看出KPLS-S 的預測精度是有可能高于GA-KPLS-G 的預測精度的。本文提出的GA-KPLS-V 質量預測結果的中位數最低且預測結果相對集中,說明其平均質量預測精度最高且具有較好的穩定性和一致性。其中,最優核函數為Sigmoid核函數,最優核參數β0=1.27,β1=7.81。
圖6為遺傳過程中RMSEC 值的變化曲線,其中“○”為最小值,“*”為平均值。可以看出,隨著遺傳代數增加,RMSEC 均值和最小值逐漸降低并趨于平穩。圖7為遺傳過程中種群變化趨勢,可以看出,隨著遺傳代數的增加,高斯核和多項式核的種群逐漸減少最終為0,而Sigmoid 核種群逐漸增多,最終達到最大個體數。

圖7 5 種不同核函數選取方法預測結果對比(變量40)
對于變量40,從圖7 可以看出,本文所提出的GAKPLS-V 質量預測結果依舊是3 種方法中效果最好的。其中,最優核函數為Sigmoid 核函數,最優核參數β0=0.22,β1=3.41。
圖8 可以看出,隨著遺傳代數增加,RMSEC 均值和最小值逐漸降低并趨于平穩。從圖9 可以看出,隨著遺傳代數的增加,Sigmoid 核種群逐漸增多,最終達到最大個體數。常用核函數類型不止一種,選擇一種核函數進行參數優化具有局限性。選擇優化多種核函數及參數的質量預測方法,能夠同時選擇最優核函數及核參數,對復雜過程質量預測更穩定和準確。

圖8 均方根誤差(變量40)
本文在KPLS 的應用中,針對基于KPLS 在線質量估計和預測中核函數和核參數難以確定的問題,提出了優化方法。該方法以遺傳算法為優化算法,以核函數的種類和參數為優化決策變量,以均方根誤差RMSE為優化目標。該方法的優勢在于,遺傳算法的解收斂于全局最優解,同時,重新設計適應度函數和交叉變異算法,保證了核函數種群的多樣性。仿真結果表明,該方法能選出最優核函數和和參數,且提高了模型預測精度。