徐啟蕾,郭魯鈺,杜 康,單寶明,張方坤
(青島科技大學(xué) 自動(dòng)化與電子工程學(xué)院,山東 青島 266061)
在近紅外光譜和高光譜成像中,許多變量冗余或存在噪聲干擾;此外,高維數(shù)據(jù)存在“維數(shù)災(zāi)難”,即當(dāng)建模所涉及的變量數(shù)量遠(yuǎn)超過(guò)樣本數(shù)量時(shí),回歸模型的準(zhǔn)確性會(huì)隨著變量的增加迅速下降。因此需要使用變量選擇技術(shù)來(lái)提取重要變量,提高模型的預(yù)測(cè)能力和運(yùn)算速度,增強(qiáng)其魯棒性和可解釋性[1]。根據(jù)選擇的數(shù)據(jù)特征,變量選擇技術(shù)可分為單變量選擇和區(qū)間變量選擇[2]兩種。單變量選擇方法將每個(gè)變量視為一個(gè)單位,區(qū)間變量選擇將多個(gè)連續(xù)變量視為一個(gè)單位。大量單變量選擇方法已經(jīng)被提出,例如:連續(xù)投影算法[3]、遺傳算法[4],以及許多基于模型種群分析策略(MPA)的變量選擇方法,包括競(jìng)爭(zhēng)自適應(yīng)重加權(quán)采樣(CARS)[5]、迭代保留信息變量(IRIV)[6]、變量組合種群分析(VCPA)[7]、變量迭代空間收縮法(VISSA)[8]、自助軟收縮(BOSS)[9]等。但單波長(zhǎng)選擇方法存在穩(wěn)定性較差,易受噪聲影響等問(wèn)題,使其所選變量與化學(xué)性質(zhì)之間的關(guān)系無(wú)法被有效解釋,通過(guò)引入?yún)^(qū)間進(jìn)行變量選擇能較好地解決這些問(wèn)題。近幾十年發(fā)展了眾多區(qū)間變量選擇方法,如:區(qū)間偏最小二乘(IPLS)法[10]、移動(dòng)窗口法(MW)[11]、區(qū)間VISSA法[12]、Fisher最優(yōu)子空間縮減(FOSS)法[13]等。但區(qū)間選擇算法十分依賴于區(qū)間的劃分,若劃分過(guò)于簡(jiǎn)單或固定,則難以找到最優(yōu)模型;而過(guò)于強(qiáng)調(diào)最優(yōu)區(qū)間,則會(huì)使得算法變得復(fù)雜且運(yùn)行緩慢。
針對(duì)上述問(wèn)題,本文提出了一種更為簡(jiǎn)便靈活的迭代縮減窗口策略(ISW),該策略在迭代選擇的過(guò)程中加入一個(gè)逐步縮減的窗口,通過(guò)窗口采樣增加所選變量的連續(xù)性和算法的穩(wěn)定性,并通過(guò)迭代縮減策略確保選擇的準(zhǔn)確性和算法的靈活性,該方法可以集成在許多基于MPA 策略的變量選擇算法過(guò)程中。在此基礎(chǔ)上,本文通過(guò)改進(jìn)BOSS算法,形成了一種新的變量選擇算法——迭代縮減窗口自助軟收縮(ISWBOSS)算法。該算法對(duì)窗口進(jìn)行加權(quán)采樣,利用子模型競(jìng)爭(zhēng)篩選出最優(yōu)的建模變量。通過(guò)在公開的玉米近紅外光譜數(shù)據(jù)集上進(jìn)行測(cè)試,證明了方法的有效性。
1.1.1 模型種群分析模型種群分析策略,最早由Li 等[14]引入到光譜變量選擇中,其核心思想是對(duì)隨機(jī)生成的大量子模型的輸出進(jìn)行統(tǒng)計(jì)分析,從數(shù)據(jù)中提取感興趣的信息[15]。在基于MPA 策略開發(fā)的算法中,BOSS算法是較為優(yōu)秀的代表,其具體原理可以從文獻(xiàn)[9]中得到。
BOSS 算法利用優(yōu)秀偏最小二乘(PLS)子模型的回歸系數(shù)對(duì)變量進(jìn)行加權(quán)抽樣來(lái)實(shí)現(xiàn)軟收縮,使用后文提到的玉米光譜數(shù)據(jù)模擬其迭代過(guò)程,如圖1A所示??梢钥闯觯诘跗谧兞康倪x擇頻率呈現(xiàn)局部塊狀。這是由于連續(xù)光譜變量之間存在很強(qiáng)的共線性,大量抽樣后這些共線性變量的回歸系數(shù)趨于均值,使得局部被選頻率也大致相同。但抽樣次數(shù)過(guò)多會(huì)導(dǎo)致算法運(yùn)算效率下降,而減少抽樣次數(shù)將使這些共線性變量的回歸系數(shù)變得不穩(wěn)定,導(dǎo)致變量的重要性無(wú)法被準(zhǔn)確地評(píng)估。另外隨著迭代的進(jìn)行,變量空間非均勻收縮,打破了這種局部連續(xù)共線性,使得BOSS算法選擇的區(qū)域逐漸變?yōu)閱我蛔兞?。一些寬度較窄的特征峰,還可能會(huì)因其他特征峰變量搶占剩余變量空間而被過(guò)早濾除。
1.1.2 迭代縮減窗口采樣基于上述分析,為了更好地利用近紅外光譜數(shù)據(jù)的特點(diǎn),本文提出了一種迭代縮減窗口的加權(quán)采樣策略,其具體過(guò)程如圖1B所示。首先將數(shù)據(jù)中所有變量的權(quán)重初始化為相同的值w0,權(quán)重和為1。設(shè)定一個(gè)初始的窗口大小,并將變量按順序劃分為一定數(shù)量的窗口,窗口內(nèi)變量的權(quán)重累加得到窗口的權(quán)重。對(duì)窗口進(jìn)行N次加權(quán)抽樣,每次被抽到的窗口內(nèi)的變量全部參與子模型建模。根據(jù)MPA 策略,設(shè)定合適的評(píng)價(jià)指標(biāo)對(duì)子模型進(jìn)行統(tǒng)計(jì)比較,并更新每個(gè)波長(zhǎng)變量的權(quán)值。隨后按預(yù)設(shè)縮減方式迭代縮減采樣窗口的大小,預(yù)設(shè)縮減方式有每次迭代窗口大小減一或直接除二,也可以根據(jù)數(shù)據(jù)的特性自定義合適的縮減方式。按縮減后的窗口大小重新劃分窗口,并計(jì)算新窗口的權(quán)值。繼續(xù)對(duì)窗口進(jìn)行加權(quán)采樣,直到剩余被選變量數(shù)均值小于2。
圖1 BOSS算法在迭代過(guò)程中變量選擇頻率圖(A)及迭代縮減窗口的示意圖(減一方式)(B)Fig.1 Frequency of variable selection during iteration for the BOSS algorithm(A)and schematic diagram of the iterative shrinkage window(minus one approach)(B)
分析上述過(guò)程可以得出,通過(guò)對(duì)窗口進(jìn)行抽樣,變量的局部被選頻率呈現(xiàn)出更加穩(wěn)定的塊狀,避免了單變量采樣過(guò)程中因隨機(jī)性導(dǎo)致的部分特征的遺失。另外由于光譜數(shù)據(jù)的有效信息是連續(xù)存在的,相比單變量抽樣,有效窗口與無(wú)效窗口在一次抽樣中的差異會(huì)更加明顯,篩選的效率也更高。隨著迭代的進(jìn)行,窗口大小逐步縮減,使得算法可以在共線性變量間進(jìn)行精細(xì)篩選,其中采用減一縮減方式的窗口類似于后向選擇方式,而除二方式更類似于二分位查找的方式。相比單純依賴權(quán)重的隨機(jī)抽樣,這兩種方式能更好地利用每次縮減前后的信息變化。
通過(guò)將迭代縮減窗口采樣策略與BOSS算法結(jié)合,得到ISWBOSS算法,具體步驟如下:
Step 0:設(shè)置初始窗口大小,賦予校正集變量相同的初始采樣權(quán)值;
Step 1:將校正集樣本的變量空間按窗口大小均分為相應(yīng)的窗口;
Step 2:將每個(gè)窗口內(nèi)變量的權(quán)值相加得到窗口的采樣權(quán)值;
Step 3:運(yùn)用加權(quán)自助采樣對(duì)窗口空間進(jìn)行N次采樣,統(tǒng)計(jì)被選窗口內(nèi)剩余變量的均值,并計(jì)算基于每次采樣被選窗口內(nèi)變量建立的PLS模型的交叉驗(yàn)證建模均方根誤差(RMSECV);
Step 4:保留RMSECV最小的前10%模型的建模變量為優(yōu)秀變量子集,統(tǒng)計(jì)其回歸系數(shù),進(jìn)行歸一化處理,得到每個(gè)變量的新權(quán)重;
Step 5:按縮減策略縮減窗口大??;
Step 6:判斷剩余變量的均值是否小于2,如果否,返回Step1;
Step 7:選擇迭代過(guò)程中RMSECV 最小的模型,其建模變量即是最終選擇的變量。
使用最常用的玉米近紅外公開數(shù)據(jù)集(從網(wǎng)站http://www. eigenvector. com/data/Corn/index. html獲?。┻M(jìn)行測(cè)試。近紅外光譜數(shù)據(jù)如圖2所示。數(shù)據(jù)由m5光譜儀測(cè)量的80個(gè)玉米樣品組成,并包含每個(gè)玉米樣本的水分、油脂、蛋白質(zhì)和淀粉含量。光譜范圍為1100 ~2498 nm,間隔為2 nm,共包含700個(gè)波長(zhǎng)點(diǎn)。將數(shù)據(jù)集隨機(jī)劃分為包含60個(gè)樣本的訓(xùn)練集和20個(gè)樣本的測(cè)試集。
圖2 玉米數(shù)據(jù)的近紅外光譜Fig.2 Near-infrared spectra of corn data
本文在一臺(tái)安裝有Matlab R2020a 的個(gè)人計(jì)算機(jī)上進(jìn)行測(cè)試。該計(jì)算機(jī)裝配的CPU 型號(hào)為英特爾i7-10875H,運(yùn)行內(nèi)存大小為16 G,操作系統(tǒng)為Windows 10。
影響ISWBOSS算法性能的主要參數(shù)是初始窗口大小和每次迭代窗口的縮減方式。為了驗(yàn)證其對(duì)性能的影響,令初始窗口大小從10 ~100 變化,間隔為10,每次迭代窗口以除二和減一方式縮減。以玉米蛋白質(zhì)數(shù)據(jù)為例,重復(fù)運(yùn)行20次,并記錄每輪迭代和每次運(yùn)行的RMSECV 值,得到如圖3所示的曲線圖。
圖3 以玉米蛋白質(zhì)數(shù)據(jù)為例,不同縮減方式的ISWBOSS與BOSS每次迭代的最優(yōu)RMSECV(A)及ISWBOSS的縮減方式與窗口大小對(duì)模型RMSECV的影響(B)Fig.3 Take corn protein dataset as an example,optimal RMSECV for each iteration of ISWBOSS and BOSS with different shrinkage methods(A)and effect of shrinkage method and window size of ISWBOSS on model RMSECV(B)
由圖3A可以看出,與BOSS算法相比,使用迭代收縮窗口改進(jìn)的BOSS算法只需更少的迭代次數(shù)即可達(dá)到RMSECV的最小值,且模型的建模效果更好。其中,當(dāng)初始窗口大小設(shè)定為10并使用除二方式縮減時(shí),其性能與原始BOSS 幾乎相同。由圖可以看出,從第6 次迭代開始,窗口已經(jīng)縮減到最小值1,ISWBOSS變?yōu)樵糂OSS算法。當(dāng)?shù)?次窗口未縮減為1時(shí),ISWBOSS建立的模型明顯優(yōu)于BOSS,因此可以證明使用窗口采樣有助于算法性能的提升。另外可以看出,初始窗口為10且使用減一縮減方式改進(jìn)的算法的RMSECV在4種算法中最優(yōu)。而初始窗口為100時(shí),使用除二方式縮減的建模效果與其十分接近,且達(dá)到最優(yōu)所需的迭代次數(shù)更少。
兩種縮減方式與初始窗口大小對(duì)模型RMSECV的影響如圖3B所示,可以看出,減一縮減方式在初始窗口較小時(shí)效果更好,而除二縮減方式的性能隨著初始窗口的增大逐漸提高并趨于穩(wěn)定。兩種方式在初始窗口大小為50時(shí)效果基本相同,均達(dá)到最優(yōu)的建模效果。因此可以得出,不論使用哪種縮減方式,初始窗口的大小都是影響算法性能的關(guān)鍵參數(shù),只需使用簡(jiǎn)單的一維搜索算法即能確定其取值。ISWBOSS 通過(guò)增加一個(gè)易于確定的參數(shù)即可使BOSS 算法的性能獲得大幅提升,更加簡(jiǎn)潔有效。另外從圖中可以看出,相比減一縮減方式,使用除二縮減方式能更好地克服變量間的相關(guān)性,優(yōu)化速度更快,模型的穩(wěn)定性更好,因此首選除二縮減方式。
為了評(píng)價(jià)ISWBOSS 的性能,本研究采用3 種普遍使用的變量選擇方法,即遺傳-偏最小二乘法(GA-PLS)、CARS 和BOSS 進(jìn)行比較。建模之前,將所有數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化預(yù)處理。為預(yù)測(cè)玉米數(shù)據(jù)集中4 種成分含量,幾種算法所選變量如圖4 所示。以玉米淀粉為例,可以看出GA-PLS 選擇的變量數(shù)量較多且過(guò)于分散,可能陷入了局部極小值未能繼續(xù)濾除冗余變量。CARS 進(jìn)一步減少了所選變量數(shù),但仍存在許多無(wú)關(guān)變量,且一些較弱特征變量因硬收縮策略而被過(guò)早的強(qiáng)制去除。BOSS 算法和ISWBOSS 的選擇較為類似,多集中在1700 ~1800 nm 范圍區(qū)域。但I(xiàn)SWBOSS 在1748 ~1766 nm 內(nèi)C—H 鍵特征波長(zhǎng)處的選擇更加穩(wěn)定與集中。另外,ISWBOSS 還選擇了1202 nm 區(qū)域的波長(zhǎng),這部分并沒(méi)有被BOSS和CARS算法選擇。一些研究[16]認(rèn)為這個(gè)區(qū)域的光譜與玉米淀粉含量無(wú)關(guān),但本文發(fā)現(xiàn)手動(dòng)刪除該區(qū)域的波長(zhǎng)后,模型預(yù)測(cè)效果變差,其RMSECV 從0.0536 上升至0.0656,預(yù)測(cè)均方根誤差(RMSEP)從0.0782 上升至0.0828。因此可認(rèn)為這部分光譜對(duì)提高模型的預(yù)測(cè)效果有益,另外最新文獻(xiàn)[17]也證明了這點(diǎn),確認(rèn)該處波長(zhǎng)為淀粉帶。雖然幾種變量選擇算法均依據(jù)模型的回歸系數(shù)或建模均方根誤差來(lái)驅(qū)動(dòng),是完全基于數(shù)據(jù)的方法,但相較其他算法,ISWBOSS 選擇的更多是位于特征峰上的變量,且窗口的引入使得其在特征峰較寬的區(qū)域選擇的變量更為連續(xù),而在一些短峰上由于迭代縮減策略又使得其可以只選擇最重要的波長(zhǎng)。以上ISWBOSS算法具有很高的靈活性,選擇的變量更加符合光譜的測(cè)量機(jī)理,得到的模型預(yù)測(cè)結(jié)果更加準(zhǔn)確穩(wěn)定,且更易于解釋。
圖4 不同算法對(duì)玉米淀粉數(shù)據(jù)選擇的變量Fig.4 Variables selected in corn starch data by different algorithms
通過(guò)將幾種算法運(yùn)行50次,采用5折交叉驗(yàn)證,以最大潛變量數(shù)為10建立PLS 模型。使用交叉驗(yàn)證的RMSECV、建模決定系數(shù)(Q2
CV)、RMSEP和預(yù)測(cè)決定系數(shù)(Q2test)對(duì)模型性能進(jìn)行評(píng)價(jià),均方根誤差越小,決定系數(shù)越接近1,模型性能越好。分別測(cè)試幾種算法對(duì)玉米水分、油脂、蛋白質(zhì)和淀粉特征選擇后建立的標(biāo)定模型效果,結(jié)果對(duì)比如表1所示,其中nVAR 為用于建模的變量數(shù),nLV 為PLS模型的潛變量數(shù)。
表1 不同方法結(jié)果對(duì)比表Table 1 Comparison table of the results of different methods
(續(xù)表1)
可以看出,幾種算法在預(yù)測(cè)不同成分時(shí)保持了較好的性能一致性,按4 種成分Q2的平均值計(jì)算得到的性能排序?yàn)镮SWBOSS >BOSS >CARS >GA-PLS >PLS,不同組分間的算法性能基本與該排序相同。相較全譜PLS 模型,所有經(jīng)過(guò)變量選擇建立的模型的預(yù)測(cè)性能均得以提高,說(shuō)明了對(duì)近紅外光譜進(jìn)行變量篩選的必要性?;趲追N變量選擇算法建立的模型在水分預(yù)測(cè)時(shí)的性能大致相同,ISWBOSS使用了更少的變量;而對(duì)于油脂和蛋白質(zhì),ISWBOSS使用了比CARS和BOSS更多的變量,但獲得了更好的預(yù)測(cè)性能。因此變量數(shù)的多少與模型的預(yù)測(cè)效果沒(méi)有直接的關(guān)系,而更多的受待測(cè)屬性性質(zhì)和所選波數(shù)的影響。從整體效果來(lái)看,CARS和GA-PLS的預(yù)測(cè)效果大致相同,但在油脂和淀粉數(shù)據(jù)集上,CARS 的準(zhǔn)確性和穩(wěn)定性更好。原因可能是油脂和淀粉的特征波數(shù)更多[17],優(yōu)化模型變得復(fù)雜,使啟發(fā)式算法更容易過(guò)擬合。與硬收縮策略的CARS相比,基于軟收縮的BOSS算法和ISWBOSS算法建立的模型性能更好。由于采用RMSECV 較優(yōu)模型的回歸系數(shù)加權(quán)抽樣,導(dǎo)致基于軟收縮策略選擇變量建立的模型RMSECV 很小,RMSEP相對(duì)較大;但其預(yù)測(cè)性能依舊優(yōu)于其他對(duì)比算法,且穩(wěn)定性更好,因此不能認(rèn)為模型陷入了過(guò)擬合,其結(jié)果仍是可信的。與BOSS算法相比,ISWBOSS在4個(gè)數(shù)據(jù)集上均優(yōu)于其他算法,證明了算法的普適性。說(shuō)明窗口的引入不僅利用了連續(xù)變量的共線性,使得可以更快速穩(wěn)定地區(qū)分有用和無(wú)用的變量,還可以通過(guò)不斷迭代縮減的窗口進(jìn)一步精細(xì)篩選其中最相關(guān)的特征,大幅提高模型的預(yù)測(cè)精度,增強(qiáng)模型穩(wěn)定性。
為了提高化學(xué)計(jì)量學(xué)中使用光譜建立的標(biāo)定模型的性能,本文提出了一種新的ISWBOSS算法。該算法使用窗口代替對(duì)波長(zhǎng)變量的逐個(gè)選擇,更加符合近紅外光譜數(shù)據(jù)的特性,避免了單波長(zhǎng)抽樣時(shí)隨機(jī)性對(duì)模型的影響。在玉米公開數(shù)據(jù)集上的測(cè)試結(jié)果表明,與其他變量選擇算法相比,使用ISWBOSS算法選擇波長(zhǎng)建立的模型的預(yù)測(cè)準(zhǔn)確性和穩(wěn)定性都得到了大幅提高;且與原始BOSS 算法相比,ISWBOSS 算法達(dá)到最優(yōu)模型所需的迭代次數(shù)和采樣次數(shù)都更少。另外迭代縮減窗口作為一種通用的改進(jìn)方法,可以繼續(xù)推廣到其他基于MPA策略的變量選擇算法中,具有一定的應(yīng)用價(jià)值。