李瑩,周林華
(長春理工大學 數學與統計學院,長春 130022)
糖尿病是一種內分泌疾病,患者的胰島素分泌不足或身體未能有效利用胰島素,導致體內血糖過高。糖尿病患者的持續高血糖會導致身體器官產生病變,特別是對眼睛、腎臟、神經、心臟、血管造成的慢性損害尤為嚴重[1]。據國際糖尿病聯盟公布的數據,2019年全球約有4.63億年齡在20~79歲的成人患有糖尿病,預計到2045年,這一數字將上升到7億。目前臨床尚無治療糖尿病的藥物,只能使用有創技術控制人體血糖水平以達到控制糖尿病的目的。
有創技術易對患者造成傷害的缺點促進了微創和無創血糖技術的發展。微創血糖檢測技術對皮膚的損傷較小,常見的微創技術有皮下植入式生物傳感器、超聲滲析、微滲析等[2-3]。無創血糖檢測技術主要集中在光學領域[4],光學方法優點是安全、快速、簡單、經濟,無創血糖測量技術在光學領域的應用主要集中于近紅外光譜法、中紅外光譜法、拉曼光譜法等[5-7]。
近紅外光導檢測器的靈敏度高且近紅外光對皮膚的穿透能力高達1~100 mm,使近紅外方法成為光學技術的研究重點。葡萄糖耐量實驗(OGTT)為無創血糖研究中采集數據的經典方法,可以在短時間內采集實驗所需的光譜數據和血糖濃度數據[8],但由于實驗條件限制,采集的樣本量是有限的。在近紅外光測量人體葡萄糖濃度的研究中,通常選擇的測量部位為手指、前臂、手掌等,但測得的葡萄糖光譜極易受到環境變化、個體差異、散射等多個因素影響,采集的數據存在較大誤差[9-10]。
多因素干擾是近紅外光測量血糖技術難以向前推進的重要原因,這些因素引起的誤差直接影響回歸模型預測血糖濃度的精確性。“M+N”理論認為誤差來源主要為內部誤差和外部誤差,內部誤差是血液中非目標成分對光譜的影響,外部誤差成分則較為復雜,包括測量過程中產生的隨機誤差、皮膚的散射等[11-12]。一般最常用的方法是使用數據預處理方法和非線性回歸模型聯合的方法消弱多因素導致的誤差。數據預處理可以有效減輕隨機誤差的影響,常用方法有歸一化處理、疊加平均處理、多元散射校正等[13]。常用的非線性回歸模型如支持向量機、神經網絡、隨機森林等算法可以從采集光譜中提取血糖的有效信息,提高無創血糖的預測精度[14-17]。
本文的目的是消除測量區域中不同位置點的光譜數據差異,使用的數據來自于OGTT實驗獲得的實驗數據。在OGTT實驗中,選取1 338~1 667 nm范圍內共70個波長作為實驗的測量波長,以手指指腹為測量區域。選取測量區域內11個位置點的數據作為實驗數據,支持向量回歸(SVR)作為回歸模型,驗證不同位置點數據的差異情況及減小不同位置點數據差異的可行性。
本次實驗采用OGTT葡萄糖耐量實驗,參與實驗的志愿者一名,實驗時間為上午8:00-11:00,實驗持續三天。實驗所需設備有硬件計算機、Hyperspec?NIR近紅外光譜掃描成像儀。近紅外光譜儀采用固定位置掃描模式,光譜波長范圍為1 338~1 667 nm,光譜分辨率為5 nm;積分時間為35 ms,采樣幀頻為100。具體實驗儀器和采集系統如圖1所示。

圖1 光譜數據采集設備和采集系統示意圖
圖1(a)為近紅外光譜儀,圖 1(b)為光譜數據的采集系統。采集過程中志愿者將手指放入光譜儀固定位置,由光源照射手指產生的反射光進入光譜儀,由光譜儀成像并傳入終端的計算機中保存。采集光譜數據的同時進行血糖濃度數據的采集,具體過程為刺取指尖一滴血,將其轉移至酶測試紙和傳感器進行測量,其精度符合CE標準(DIN EN ISO 15197)。
實驗中以手指指腹為測量區域,以測量區域的中心點位置和左右兩側各五個位置點的數據為實驗數據,共11組位置點數據,分別記為中心點、左 1、左 2、左 3、左 4、左 5、右 1、右 2、右 3、右4、右5,如圖2所示。通過Beer-Lambert定律計算出11個位置點的吸光度數據。每個位置點含有3 000條光譜數據,每條光譜數據有70個波長數據,其中每100條光譜數據對應同一個濃度標簽,總共30個濃度標簽。同一濃度對應的11個位置的吸光度存在明顯的數據差異,因此將實驗數據進行歸一化處理。

圖2 手指測量區域示意圖
實驗中采集到的光譜信號為手指的反射光,根據Beer-Lambert定律計算吸光度。吸光度數據作為SVR模型的特征數據,對應的血糖濃度數據作為標簽數據。11個位置的吸光度數據共有11組,11組吸光度數據對應同一組濃度標簽。每一個位置點的吸光度數據X和血糖濃度數據Y可表示為:


其中,m表示光譜條數;n表示波長個數。本文的實驗數據中m=3000,n=70。


本節共設計了3組實驗。第一組實驗驗證不同位置點的數據存在明顯差異;第二組實驗證明了依次增加位置點的數據作為SVR的訓練集,從剩余位置點的數據中隨機選取數據作為測試集,仍然不能減小位置差異的影響;因此在第三組實驗中進行改進,將11個位置點分成兩部分,一部分數據平均后作為訓練集,另一部分平均后作為測試集,驗證該種方法是否可以減小不同位置點的數據差異。
在本文中,評價模型的預測效果使用克拉格誤差網格中的平均克拉克網格誤差(P為落在網格A區的概率)和MAE、MSE作為評價指標。克拉克誤差網格是評價血糖預測準確度的一個經典方法,網格的A區域代表預測效果最好的區域;MSE為均方差,是指預測值與真實值之差平方的期望值;MAE為平均絕對值誤差,是觀測值與真實值的誤差絕對值的平均值。公式如下:

3.2.1 第一組實驗
第一組實驗中一次選擇兩個不同位置點數據,一個位置點數據作為訓練集,另一個位置點數據作為測試集。為方便進行比較,固定左1位置數據作為訓練集,其他10個位置的數據依次作為測試集,使用SVR回歸模型得到測試集預測結果,如表1所示。在表1中,對于兩個相鄰位置點,如左1、左2,SVR的預測效果較好;對于不相鄰的位置點,預測效果較差,而且位置間隔越遠,訓練效果越差。這表明鄰近位置點的數據的信息相似度更高,距離較遠的位置點的數據相似度越低。

表1 第一組實驗結果
3.2.2 第二組實驗
第二組實驗考慮到使用OGTT實驗采集數據的過程中,每次手指放置在近紅外光譜儀的位置有偏差,不能保證每次采集到同一位置的光譜數據,因此在實驗設計中測試數據和訓練數據屬于不同的位置點數據。
位置點個數為3,即以中心點位置和左1、右1位置的混合數據作為訓練集,從剩余8個位置的數據中隨機選取1 000條作為測試集,使用SVR回歸模型得到預測結果;位置點個數為5,即以中心點位置和左1、左2、右1、右2位置的混合數據作為訓練集,從剩余6個位置的數據中隨機選取1 000條作為測試集,在實驗數據上依次累加兩個位置點的數據作為測試集,從未被訓練過的位置點的數據中隨機抽取1 000條數據作為測試集,重復上述步驟。實驗結果如表2所示,未參與訓練的位置點數據作為測試集的預測結果整體在75%左右,預測效果較差。

表2 第二組實驗結果
3.2.3 第三組實驗
原有11組位置點的數據,選取左5、左3、左1、右1、右3、右5共6組數據進行數據平均處理為1組數據,記為新數據1,剩余5個位置的數據進行數據平均處理為1組數據,記為新數據2。將平均處理過后的2組新數據,1組作為訓練集,另一組作為測試集,使用SVR回歸模型得到測試集預測結果,得到的結果如表3所示,克拉克誤差網格圖如圖3所示。

表3 第三組實驗結果

圖3 兩組實驗的誤差網格圖
由實驗結果可以看出,經過平均處理的兩組數據的位置差異明顯減小,并且克拉克誤差網格圖表明SVR模型的預測效果良好,兩次實驗在網格圖中A區的樣本量達到99%以上,表明第三組實驗可以有效降低位置差異的影響。
在無創血糖監測領域,OGTT實驗是采集血糖數據的經典方法,本文使用OGTT實驗獲得光譜數據和血糖濃度數據。針對實驗數據中不同位置點存在的數據差異問題,設計3組實驗驗證并成功減小了不同位置點的數據差異。從另一方面來看,減小不同位置點數據的差異一定程度上增加了可用的樣本量,在血糖預測的深度回歸模型中,大樣本量對模型的最終預測有一定的幫助。