陳 樹 胡 斌
(江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院 無錫 214000)
微生物發(fā)酵過程是利用微生物的新陳代謝活動來獲取目標(biāo)產(chǎn)物的過程,為了更好地控制發(fā)酵過程,需要利用實(shí)時(shí)分析工具對微生物發(fā)酵過程中的重要參數(shù)進(jìn)行快速監(jiān)測[1~2]。美國食品和藥物管理局都認(rèn)為生物傳感器和光譜儀器結(jié)合過程分析技術(shù)(PAT)是生物發(fā)酵過程監(jiān)測的有效工具,可以在整個(gè)發(fā)酵過程中實(shí)時(shí)監(jiān)測生物和化學(xué)變量[2~3]。生物傳感器作為發(fā)酵過程監(jiān)測有著體積小巧和便于使用的優(yōu)勢,但是其應(yīng)用范圍不如光譜儀器[4~5],一些生物傳感器更是造價(jià)不菲。利用光譜技術(shù)進(jìn)行發(fā)酵過程監(jiān)測的優(yōu)勢在于速度、靈敏度和安全性[6]。
近年來光譜技術(shù)結(jié)合化學(xué)計(jì)量學(xué)進(jìn)行定量定性分析已經(jīng)具有非常廣泛的應(yīng)用,主要的化學(xué)計(jì)量方法有多元線性回歸(MLR)方法[7]、主成分分析(PCR)方法[8~9]和偏最小二乘法(PLS)方法[9~10]等等,其中采用PLS 作為近紅外光譜分析的應(yīng)用最多,由于光譜的高維度和強(qiáng)相關(guān)性,需要對光譜數(shù)據(jù)進(jìn)行必要的預(yù)處理。近紅外光譜模型的建立一般包括剔除奇異樣本、劃分樣本集、選擇區(qū)間并建立模型。很多學(xué)者利用光譜分析技術(shù)結(jié)合多種計(jì)量方法,對比優(yōu)選出最佳的模型并應(yīng)用到各個(gè)領(lǐng)域[11~15]。上述學(xué)者利用近紅外光譜分析技術(shù)對相關(guān)領(lǐng)域做出了突出的貢獻(xiàn),本文借鑒前人的研究成果和經(jīng)驗(yàn)教訓(xùn),先對發(fā)酵過程中葡萄糖濃度參數(shù)定量分析模型進(jìn)行優(yōu)選,再從系統(tǒng)應(yīng)用的角度出發(fā),針對廠商配套的近紅外光譜分析軟件(如Antaris近紅外光譜儀配套的TQAnalyst 光譜分析軟件)的嵌入能力差、平臺限制等問題,設(shè)計(jì)一種自由度更高,通用性更強(qiáng)的實(shí)時(shí)監(jiān)測系統(tǒng)。
本文以發(fā)酵過程中葡萄糖濃度參數(shù)為研究對象,采用蒙特卡洛法剔除異常樣本和SPXY 劃分樣本集,對比 TQAnalyst 軟件算法以及 iPLS、BiPLS 和SiPLS 三種區(qū)間選擇算法選擇最佳區(qū)間,并建立偏最小二乘模型。然后利用RESULT 軟件對外開放的光譜文件輸出功能,采用JAVA 輪詢方式監(jiān)測實(shí)時(shí)光譜和websocket實(shí)時(shí)通信向用戶推送預(yù)測結(jié)果。
實(shí)驗(yàn)采用美國Thermo Nicolet公司Antaris近紅外光譜儀,其配備了InGaAs 監(jiān)測器、積分球漫反射采樣系統(tǒng)、Result 操作軟件以及TQAnalyst 光譜分析軟件,服務(wù)器采用Tomcat8,監(jiān)測平臺采用微信小程序。系統(tǒng)的總體結(jié)構(gòu)如圖1所示。

圖1 系統(tǒng)結(jié)構(gòu)圖
將Thermo 廠商配套的采集軟件安裝在服務(wù)器所在電腦上,設(shè)置完整的工作流即可完成發(fā)酵罐中發(fā)酵液的光譜采集,光譜采集軟件將采集到的光譜信息以csv 格式文件布置到指定文件夾中,由后臺程序以輪詢方式監(jiān)測光譜文件的產(chǎn)生,將新產(chǎn)生的光譜文件讀取并解析出光譜數(shù)據(jù),帶入到模型中完成數(shù)據(jù)的預(yù)測,最后通過websocket 將預(yù)測數(shù)據(jù)廣播出去,完整多終端遠(yuǎn)程在線實(shí)時(shí)監(jiān)測,其工作流程如圖2所示。

圖2 實(shí)時(shí)監(jiān)測工作流程
采用Antaris 近紅外分析儀的透射分析模塊,掃描范圍10000cm-1到40000cm-1,掃描次數(shù)為32,分辨率80cm-1,所有樣本重復(fù)測定2次取均值,獲取到葡萄糖樣品溶液的光譜共269 個(gè),原始光譜如圖3所示,其中橫坐標(biāo)為波數(shù),縱坐標(biāo)為吸收度。
從整個(gè)FT-NIR 光譜圖像來看,雖然有一定的漂移但是差別很小,需要依靠化學(xué)計(jì)量學(xué)以及不同的算法進(jìn)行分析,光譜的主要吸收波段在4250cm-1~80000cm-1,4250cm-1~55000cm-1的吸收峰和吸收谷比較復(fù)雜,5500cm-1~7500cm-1波段有很清晰的吸收峰和吸收谷,分別處于59000cm-1和68000cm-1的位置,8000cm-1~100000 cm-1的吸收度較低。

圖3 原始光譜
異常樣本的剔除是建立穩(wěn)健模型的基礎(chǔ),實(shí)驗(yàn)對比分析TQAnalyst軟件方法、歐式距離法、馬氏距離法,以及蒙特卡洛采樣法并選擇最佳方法。歐式距離法表達(dá)的是數(shù)據(jù)在特征維度空間的真實(shí)距離,而馬氏距離法表達(dá)了數(shù)據(jù)的協(xié)方差距離,即標(biāo)準(zhǔn)化數(shù)據(jù)與中心化數(shù)據(jù)之差,以此來度量樣本的相似程度。蒙特卡洛采樣法則通過計(jì)算預(yù)測殘差均值和方差來剔除異常樣本。
原始樣本共有269 個(gè)光譜數(shù)據(jù),采用TQAnalyst軟件方法,歐式距離法,馬氏距離法和蒙特卡洛法各自剔除了15 個(gè)異常樣本,為了更好地評價(jià)剔除異常樣本三種算法的優(yōu)劣,采用留一法交叉驗(yàn)證均方根誤差和相關(guān)度來檢驗(yàn),其公式如下:

其中m 是樣本個(gè)數(shù),yp和yt預(yù)測值和真實(shí)值。留一法交叉驗(yàn)證是將m 個(gè)樣本中依次留出1個(gè)作為驗(yàn)證集,其他m-1 個(gè)作為校正集,最后得到的所有的誤差取均值。如表1 所示,剔除異常樣本后的精度明顯增加,而采用蒙特卡洛采樣法來剔除異常樣本,精度最高,相關(guān)度最大。

表1 剔除算法比較
有效地劃分樣品集可以提高模型的泛化性能,本實(shí)驗(yàn)采用Galvao 提出的SPXY 法來劃分校正集,SPXY 計(jì)算距離考慮到了樣本的特征距離dx 和化學(xué)值距離dy,公式如下,式中N 為樣本的個(gè)數(shù),M 為樣本的維度,x為特征,y為化學(xué)值。

SPXY 將 dx(i,j)和 dy(i,j)分別除以各自的最大值,采用dxy(i,j)作為樣本距離的檢驗(yàn)標(biāo)準(zhǔn),其優(yōu)點(diǎn)在于能夠改善模型的預(yù)測能力,公式如下:

按照近紅外光譜分析校正集和驗(yàn)證集大約3∶1 的比例,使用 SPXY 法將 254 個(gè)樣本中劃分 190 個(gè)作為校正集,64個(gè)驗(yàn)證集。
為了解決近紅外光譜數(shù)據(jù)的強(qiáng)重疊性,本實(shí)驗(yàn)采用N?rgaard 等人提出的區(qū)間偏最小二乘(iPLS)、反向區(qū)間偏最小二乘(BiPLS)和聯(lián)合區(qū)間偏最小二乘(SiPLS)來優(yōu)選光譜區(qū)間。iPLS是將整個(gè)光譜區(qū)間劃分為n 等份,對每一組子區(qū)間建立PLS 回歸模型,采用交叉驗(yàn)證均方根誤差作為驗(yàn)證標(biāo)準(zhǔn),從而選擇出整個(gè)光譜最優(yōu)的區(qū)間;BiPLS 同樣將光譜區(qū)間劃分為n 等份,每一次都排除一個(gè)最差區(qū)間,在剩余區(qū)間內(nèi)建模,直到最后一個(gè)區(qū)間為止,根據(jù)均方根誤差來選擇合適的區(qū)間范圍;SiPLS 是將劃分的n 個(gè)區(qū)間聯(lián)合若干個(gè)子區(qū)間進(jìn)行建模預(yù)測,以聯(lián)合區(qū)間的RMSECV選擇出最佳的聯(lián)合區(qū)間。
采用相關(guān)系數(shù)R,預(yù)測均方根誤差RMSEP 和殘留預(yù)測偏差RPD 對模型性能進(jìn)行評估。相關(guān)系數(shù)表示了預(yù)測值與真實(shí)值之間的相關(guān)程度;RMSEP 表示預(yù)測值與真實(shí)值之間的標(biāo)準(zhǔn)差,越小代表了準(zhǔn)確性越高;RPD 是標(biāo)準(zhǔn)差與均方根誤差之比,越高則模型的分辨能力越強(qiáng)(據(jù)ICC 等國際分析組織設(shè)定RPD 大于3 則表明模型預(yù)測能力較好),單一的RMSEP 并不能表明模型的實(shí)用價(jià)值,因此根據(jù)上述評價(jià)指標(biāo),對模型進(jìn)行綜合評測,其公式如下:

其中n 是驗(yàn)證集樣本個(gè)數(shù)yi和yi是第i 個(gè)預(yù)測樣本的預(yù)測值和真實(shí)值,y是預(yù)測樣本的平均值。
將已經(jīng)剔除異常樣本的254 個(gè)樣本根據(jù)SPXY算法劃分為190個(gè)校正集和64個(gè)驗(yàn)證集,對校正集進(jìn)行 RESULT 軟件方法、iPLS、BiPLS 和 SiPLS 四種方法的區(qū)間選擇并建模預(yù)測,進(jìn)而對比出最佳優(yōu)選的方案。
TQAnalyst 軟件是Thermo 廠商配套的RESULT系列軟件之一,用來對近紅外光譜數(shù)據(jù)進(jìn)行定量和定性分析,將劃分好的校正集和驗(yàn)證集導(dǎo)入到TQAnalyst中,標(biāo)定好化學(xué)值后開始分析數(shù)據(jù)。TQAnalyst 的算法給出的推薦區(qū)間的序號為134~262,如圖4 為 TQAnalyst 預(yù)測結(jié)果,預(yù)測均方根誤差為5.32,相關(guān)系數(shù)為0.9439。接下來對比分析光譜分析應(yīng)用最為廣泛的三種iPLS算法。

圖4 TQAnalyst軟件預(yù)測結(jié)果
區(qū)間偏最小二乘(iPLS)實(shí)驗(yàn)中,將全光譜劃分為12~16 個(gè)子區(qū)間,分別對每一個(gè)子區(qū)間建立PLS回歸模型,選擇RMSECV 最小的作為回歸模型,由表2 可知將光譜劃分為16 個(gè)區(qū)間,選擇第9 個(gè)區(qū)間,主成分?jǐn)?shù)(PCs)設(shè)為10 的時(shí)候,iPLS 的驗(yàn)證均方根誤差最小為1.9363,得到的模型最佳。

表2 iPLS實(shí)驗(yàn)
反向區(qū)間偏最小二乘(BiPLS)實(shí)驗(yàn)中,將全光譜劃分為16~21 個(gè)子區(qū)間,每一次剔除其中1 個(gè)子區(qū)間,采用剩余聯(lián)合子區(qū)間來建立模型,剔除到剩余1個(gè)子區(qū)間為止,選擇適當(dāng)?shù)膮^(qū)間長度來建立PLS回歸模型,由表3 可知當(dāng)區(qū)間劃分為20 個(gè),區(qū)間長度選擇 710 個(gè),主成份數(shù)設(shè)為 13 的時(shí)候,BiPLS 的驗(yàn)證均方根誤差最小為1.2128,得到的模型最佳。

表3 BiPLS實(shí)驗(yàn)
聯(lián)合區(qū)間偏最小二乘(SiPLS)實(shí)驗(yàn)中,將區(qū)間劃分為5~12個(gè),每次聯(lián)合其中2個(gè)作為區(qū)間來建立PLS回歸模型,克服了iPLS單一區(qū)間的特征缺失問題。由表4可知,當(dāng)光譜區(qū)間劃分為5個(gè)子區(qū)間,選擇第2和第4個(gè)子區(qū)間作為聯(lián)合區(qū)間建立的PLS模型,區(qū)間長度為597個(gè),主成份設(shè)置為13,其驗(yàn)證均方根誤差最小為1.0526,相關(guān)度達(dá)到0.9978,殘留預(yù)測偏差達(dá)到14.7888。

表4 SiPLS實(shí)驗(yàn)
上述區(qū)間選擇算法結(jié)合TQAnalyst軟件和偏最小二乘法建模所得的模型如表5 所示,采用驗(yàn)證均方根誤差、相關(guān)度和殘留預(yù)測偏差對模型預(yù)測效果進(jìn)行對比分析。

表5 各個(gè)區(qū)間建模的優(yōu)選模型
對發(fā)酵過程中葡萄糖參數(shù)的預(yù)測分析,TQAnalyst軟件所選取的區(qū)間明顯較差,預(yù)測精度遠(yuǎn)遠(yuǎn)低于其他方法,選取出的最優(yōu)iPLS 模型只選擇單一模型會造成一定的信息缺失,其驗(yàn)證均方根誤差明顯高于 BiPLS 和 SiPLS,效果較差;而 BiPLS 通過一步步剔除最差子區(qū)間得到的模型,比iPLS 效果好很多;最終得到的最佳模型是區(qū)間長度為597 的SiPLS 模型,采用此區(qū)間結(jié)合TQAnalyst 算法和PLS算法對比顯示,PLS的預(yù)測效果更好,結(jié)果如圖5所示,其驗(yàn)證均方根誤差為1.0526,分別比iPLS 和Bi-PLS 要低45.7%和13.2%,相關(guān)度達(dá)到0.9978,預(yù)測真實(shí)差值大部分維持在2g 以內(nèi),符合發(fā)酵過程中監(jiān)控關(guān)鍵參數(shù)的容錯(cuò)范圍內(nèi),并且該模型的RPD達(dá)到14.7888,根據(jù)ICC 等國際分析組織設(shè)定的RPD 大小,可以看出本實(shí)驗(yàn)采用的SiPLS 模型具有很好的實(shí)用意義。

圖5 SiPLS模型預(yù)測結(jié)果
將選擇出的最優(yōu)模型嵌入到實(shí)時(shí)監(jiān)測系統(tǒng)中,預(yù)測出發(fā)酵過程中關(guān)鍵數(shù)據(jù)的實(shí)時(shí)變化,可以讓發(fā)酵過程便于優(yōu)化和控制。但是目前絕大多數(shù)研究者是依賴廠商配套軟件完成預(yù)處理、建模和預(yù)測的過程,如Antaris 光譜儀器配套的RESULT 系列軟件,會造成模型限制,拓展性不足和平臺不便等缺點(diǎn)。本文所設(shè)計(jì)的基于微信小程序和websocket的實(shí)時(shí)監(jiān)測軟件,既有微信小程序多平臺顯示的效果,又有websocket實(shí)時(shí)監(jiān)測的能力,同時(shí)可以拓展其他算法來預(yù)測不同的生物量。
實(shí)時(shí)監(jiān)測系統(tǒng)的后臺程序流程如圖6 所示,用戶使用微信小程序開啟websocket,后臺開始運(yùn)作,首先開啟一個(gè)線程記錄當(dāng)前目錄下的所有歷史光譜文件,格式為*.csv,將其保存到緩存區(qū),以輪詢的方式監(jiān)測新光譜數(shù)據(jù)的產(chǎn)生,一旦產(chǎn)生新光譜數(shù)據(jù),解析出光譜數(shù)據(jù)和所選模型,將光譜數(shù)據(jù)代入模型預(yù)測出結(jié)果,最后采用websocket 將預(yù)測結(jié)果推送給當(dāng)前websocket 在線用戶,微信小程序顯示出時(shí)間和數(shù)據(jù)并繪制出過程曲線。

圖6 后臺程序流程圖
微信小程序以快速開發(fā)和無需安裝等特性被用戶認(rèn)同,本系統(tǒng)的展示平臺采用微信小程序設(shè)計(jì),以兩個(gè)頁面來展示實(shí)時(shí)監(jiān)測數(shù)據(jù),分別為實(shí)時(shí)過程數(shù)據(jù)頁面和實(shí)時(shí)過程變化曲線頁面,在實(shí)時(shí)過程數(shù)據(jù)頁面點(diǎn)擊監(jiān)測按鈕開啟監(jiān)測,微信小程序中開啟監(jiān)測是以wx.connectSocket 來連接后臺websocket服務(wù),然后使用wx.onSocketMessage來監(jiān)聽后臺推送的數(shù)據(jù),后臺將預(yù)測的實(shí)時(shí)數(shù)據(jù)保存為json格式并推送到所有websocket 連接用戶,微信小程序的實(shí)時(shí)過程數(shù)據(jù)頁面接收到此數(shù)據(jù)后以全局變量的形式保存下來,可以在實(shí)時(shí)過程曲線頁面可以讀取到實(shí)時(shí)過程數(shù)據(jù)并采用echarts繪制曲線,完成歷史到當(dāng)前的變化曲線顯示。
對實(shí)時(shí)在線監(jiān)測系統(tǒng)進(jìn)行測試,需要先配置服務(wù)器環(huán)境,微信小程序要求配置為https和wss協(xié)議以及相關(guān)證書,然后上傳微信小程序的前端代碼到微信官方審核,再將后臺程序以war 包的形式打包到Tomcat8服務(wù)器,系統(tǒng)的運(yùn)行環(huán)境配置完成。
開啟Tomcat8 服務(wù),手機(jī)打開微信小程序,開啟監(jiān)控狀態(tài)開始實(shí)時(shí)監(jiān)測光譜數(shù)據(jù)的變化以及預(yù)測結(jié)果。如圖7所示是微信小程序端的測試結(jié)果。

圖7 微信小程序?qū)崟r(shí)監(jiān)測測試
實(shí)時(shí)監(jiān)測共兩個(gè)頁面,圖7(a)是實(shí)時(shí)過程數(shù)據(jù),開啟在線監(jiān)測就可以看到采集時(shí)間的預(yù)測值,最上方是最新時(shí)刻的數(shù)據(jù),圖7(b)是實(shí)時(shí)過程曲線,曲線記錄了從開啟監(jiān)測到當(dāng)前時(shí)間的歷史變化曲線。測試表明該實(shí)時(shí)監(jiān)測系統(tǒng)具有良好的實(shí)時(shí)效果,預(yù)測模型滿足現(xiàn)場精度要求。
論文采用近紅外光譜分析技術(shù)對發(fā)酵過程中葡萄糖濃度參數(shù)建立定量分析模型,對比實(shí)驗(yàn)表明蒙特卡洛法剔除異常樣本的效果最好,留一法交叉驗(yàn)證均方根誤差(LOORMSECV)達(dá)到1.3105,與光譜分析軟件 TQAnalyst 和 iPLS,BiPLS 方法相比,聯(lián)合區(qū)間偏最小二乘法(SiPLS)優(yōu)選區(qū)間最佳,區(qū)間為300~598 和897~1194,所建立的PLS 模型預(yù)測精度最好,均方根誤差(RMSE)為1.0526。論文所設(shè)計(jì)在線系統(tǒng)采用JAVA 輪詢的方式監(jiān)測RESULT軟件的光譜輸出路徑,解析光譜數(shù)據(jù)并將選擇的最優(yōu)模型嵌入其中進(jìn)行在線預(yù)測,最后采用websocket方式建立JAVA 后臺與微信小程序前端的全雙工通信。測試表明,系統(tǒng)具有自由的模型嵌入能力,精準(zhǔn)的預(yù)測效果以及良好的多終端多平臺遠(yuǎn)程監(jiān)測特點(diǎn)。