?

基于AE-SVM 的嗅覺描述符分類*

2021-05-19 01:35朱紅梅駱德漢莫卓峰
網絡安全與數據管理 2021年5期
關鍵詞:描述符嗅覺編碼器

朱紅梅,駱德漢,莫卓峰

(廣東工業大學 信息工程學院,廣東 廣州510006)

0 引言

嗅覺是人類的一種化學感官,它通過感知空氣中的化學物質來了解周圍的環境。以往的研究表明,感知到的化學刺激與生物嗅覺系統復雜的組織結構有關[1-2]。嗅覺上皮內的嗅覺受體神經元與分子結合并向嗅覺神經提供電信號時被激活,信號被傳送到嗅球并在嗅球上形成圖案。然后,根據嗅球上的反應模式,在大腦進行與情緒和記憶相關的綜合信息加工[3]。由于每種類型的嗅覺受體具有不同的分子選擇性,因此出現在嗅球上的刺激模式因分子而異。也就是說,對氣味的印象也因分子而異。

氣味感官評價測試已被廣泛采用,獲得通過語言描述符量化的嗅覺描述符。嗅覺描述符的提取不僅在食品和化妝品行業,而且在其他行業的消費產品評價[4]中都是必不可少的。對大量化學品進行感官評估測試需要大量的時間和資源,本身是不切實際的。因此,本研究的目的是通過有限的樣本分析,建立數學模型來預測嗅覺描述符。質譜是化學物質具有代表性的物理化學性質之一,早期的研究闡明了化學物質的氣味與其化學結構之間的關系[5]。大量的質譜數據可以用來構建嗅覺描述符的預測模型。一些研究通過主成分分析(PCA)和非負矩陣分解(NMF)等線性建模方法報道了化學物質氣味特征與其理化參數之間的關系[6-7]。這些研究表明,一些基本參數確實會影響人們對氣味的感知。由于質譜數據本質上是高維稀疏的,雖然PCA 和NMF 是眾所周知的預測建模方法,但它們不適合高維稀疏的數據結構。因此,很難得出這些線性建模技術與系統完全兼容的結論。深度學習建模是非線性建模中最權威的方法之一,具有廣泛的應用前景。本文設計AE-SVM 來對質譜數據進行提取特征并完成對嗅覺描述符的分類。

1 方法

1.1 自動編碼器

自動編碼器(Autoencoder,AE),作為一種在半監督學習或無監督學習中常用的神經網絡模型,可以很好地學習到數據的隱含特征。從直觀上來看,由于AE 模型可以有效地提取出數據的特征,AE 模型可以直接用于特征降維[8]。一般而言,AE 模型由編碼器(encoder)和解碼器(decoder)兩個部分組成。在訓練過程中,編碼器的輸出通常作為解碼器的輸入,將解碼器的輸出值(即自動編碼器的目標值)設置成與編碼器的輸入值 (即自動編碼器的輸入值)相等。通常采用反向傳播算法訓練AE 模型并得到最優參數。

1.2 支持向量機

支持向量機(Support Vector Networks,SVM)最初被CORTES C 等人應用到機器學習的分類任務中[9]。其原理如圖1 所示,支持向量機使用最大化超平面來解決二分類問題。隨著機器學習的發展,如今,支持向量機在多分類問題上也能獲得很好的效果,廣泛用于分類、回歸和異常值檢測的監督學習。

一般來說,支持向量機在多分類問題上有兩種方法,分別是成對分類方法(one-against-one)[10]和一類對余類方法(one-against-all)[11]。假設訓練集有M個類別,成對分類方法則在每兩個類之間構造一個二分類支持向量機(binarySVM)。如圖2 所示,在一個3 分類問題中,d12、d13、d23表示二分類支持向量在1 類和2 類、1 類和3 類以及2 類和3 類數據之間的決策邊界。對于第i類和第j類數據,其求解一個二分類支持向量機為:

圖1 SVM 原理

其中,上標表示是i類和j類之間的參數;t表示i類和j類的并集中樣本的索引;表示輸入空間到特征空間的非線性映射。第i類和第j類的決策函數為:

圖2 SVM 成對分類方法

最后對新的數據投票進行分類。而一類對余類方法則是對每一個類作為類,其余所有類作為類構造二分類支持向量機,如圖3 所示。兩種方法各有優缺點,一類對余類方法因為訓練集是一對多,容易存在偏差。經過HSU C W 等人的比較[11],成對分類方法適合實際使用,因此,本文使用這種方法對質譜數據進行分類。

圖3 SVM 一對余類方法

2 實驗

本研究的AE-SVM 對嗅覺描述符分類流程如圖4 所示。將數據集分為訓練集和測試集,這個數據集將在2.1 節進行介紹。訓練集經過數據預處理后放入設計好的AE 模型中進行訓練,數據預處理的過程和AE 模型將分別在2.2 節和2.3 節進行介紹。在保存之后,評估AE 模型的性能并保存性能最好的參數,再使用AE 模型得到訓練集降維后的特征,并訓練SVM 模型。最后得出AE-SVM 模型并使用測試集評估該模型,得到的結果呈現在2.5 節中。

圖4 AE-SVM 流程圖

2.1 數據集

質譜是代表分子結構信息的物理化學性質,以強度與m/z(質荷比)的關系圖形式給出。給定相同的測量條件,可以為每個分子確定質譜。因為可以在統一條件下執行許多質譜測量,可以使用大規模質譜數據集。這項研究中使用的質譜數據集來源于美國國家標準技術研究所(NIST)開源數據[12]。該數據庫由100 000 多種通過70 [eV]電子電離獲得的質譜化學物質組成。m/z 低于50 的強度通常源自無味的分子,例如氧氣、氮氣和二氧化碳,而高的強度源自揮發性低且對氣味特性影響很小的分子。因此,本研究從原始數據集中提取了51 至262 m/z 的強度。

西格瑪奧德里奇(Sigma-Aldrich)已發布了一份化學品目錄,其中使用數百種描述符,對1 000 多種單分子氣味物質進行了分析[13]。在目錄中,每種物質的氣味特征通過約150 種不同的描述符來描述,如balsam(香脂)、caramel(焦糖)、spicy(辛辣的)等。盡管目錄中的信息有時可能不足以詳細描述化學物質的氣味,但由于它描述了化學物質的氣味,因此它仍然是一種有價值的工具。

以Sigma-Aldrich 目錄和NIST 數據集中列出的化學物質為例,共獲得了999 個樣品,去除沒有收集到對應質譜的cas 號,最終得到了987 個樣品,每個樣品的提取了51 ~262 m/z 的強度,最終得到987×212 的質譜數據。從Sigma-Aldrich 目錄的數據集中的150 個描述符中選擇136 個(因為其他14 個描述符在目錄中只出現了3 次或更少)。因此獲得了987 個cas 號對應136 個嗅覺描述詞,構建987*136 維的矩陣數據。隨后找出每個嗅覺描述詞對應cas 號數量大于50 的質譜數據和嗅覺描述符,最終本文實驗以9 種嗅覺描述符作為分類目標。

2.2 數據預處理

在第2.1 節中獲得的數據是不平衡數據,樣本太小的類無法提取到太多特征,導致很難從中提取規律。過度依賴有限數量的樣本來訓練的模型很可能會導致過擬合的問題出現。本文使用SMOTE 過采樣來解決嗅覺描述符標簽數據不均衡的問題,通過增加采集數量較少類別的樣本數量來實現平衡。SMOTE 過采樣改進的隨機過采樣方法,克服了隨機過采樣在訓練模型后使得模型泛化性能不足的問題。通過向少數類添加隨機噪聲、干擾數據或特定規則來生成新的合成樣本。

由于質譜數據數量較大,區間范圍較大,很多數據進行補0 處理,會影響到數據分析的結果。為了消除數據范圍的影響,需要對數據進行歸一化處理。原始數據經過數據歸一化處理后,各數據處于同一數量級,利于后續實驗的進行。本文使用離差標準化,如式(6)所示,對原始數據進行線性變換,以得到0 到1 之間的值:

2.3 構 建AE 模 型

質譜數據集的數據是高維數據,每個樣本有數百個維度,噪聲多,計算量大,會使實驗結果的精確度降低。這個數據集有接近75%的數據標記為0,使得整體樣本非常稀疏。當樣本數量有限時,模型的預測能力會隨著維數的增加而降低。

降維,即特征提取,是神經網絡中常用的一種方法,它可以在實現有效投影函數的同時,避免因高維而產生的問題。自動編碼器是一種常用的降維方法,它通過無監督學習輸入數據的隱含特征,同時可以解構出原始輸入數據。由于存在“維數災難”的問題,當特征向量的大小沒有得到優化時,編碼器的性能會下降。本研究使用的自編碼器有五層,其中三層為隱藏層,如圖5 所示。使用PyTorch 進行建模,將編碼器的輸出設置為50,采用ReLU 函數作為每層網絡的激活函數。優化器選用Adam 優化器,并將學習率設置為0.001。AE 模型在訓練完之后,保存編碼器,用于提取質譜數據特征。具體結果和分析請看2.5 節內容。

圖5 構建AE 模型流程圖

2.4 構 建SVM 模 型

將實驗數據通過自動編碼器進行特征提取以后,原本的212 維原始質譜數據將轉化為50 維的特征向量,然后使用SVM 算法進行分類。本文使用Python 調用sklearn 機器學習庫中的SVM 函數進行建模。選擇高斯核函數作為SVM 的核函數,并將gamma 參數設置為auto。在5 折交叉驗證后,保存交叉驗證效果最佳的SVM 模型作為最終測試集使用的分類模型。

2.5 實驗結果與分析

本文將AE-SVM 模型應用于嗅覺描述符的分類中,將數據集按照3:1 的比例劃分為訓練集和測試集。首先,通過AE 模型得到原始質譜數據的50 維特征。如圖6 所示,使用均方誤差(MSE)作為損失函數,利用訓練集數據對模型進行訓練。由圖6 可以看出,本實驗設置300 個epoch 進行迭代。隨著迭代次數的增加,AE 模型的損失函數下降逐漸緩慢。epoch大約為200 的時候,誤差下降到了0.014 6 且函數趨于收斂??梢钥吹?,AE 模型的訓練過程符合預期。

圖6 AE 模型訓練損失

為了驗證AE 模型對質譜數據進行特征提取的性能,本文構建了PCA、LDA 和TSNE 3 種主流的機器學習特征提取方法與AE 模型做對比。表1 表示了測試集經過分別經過PCA、LDA、TSNE 和AE 特征提取之后,經由SVM 模型進行分類的結果??梢郧逦乜吹?,經過AE 對質譜數據進行特征提取之后,SVM 對嗅覺描述符的分類準確度達到了85.71%,明顯高于PCA+SVM、LDA+SVM 和TSNE+SVM 的71.43%、67.86%和75%。這表示本文設計的AE 模型能準確地從質譜數據中提取出主要的特征,并且效果優于其他方法。

為了更好地驗證SVM 模型對質譜數據特征預測嗅覺描述符的效果,本文構建了KNN 和GaussianNB兩個常用的機器學習分類器與SVM 做對比。如表2所示,質譜數據經過AE 模型進行特征提取之后,分別使用SVM、KNN 和GaussianNB 進行分類。從表2中看出,SVM 對AE 模型提取的質譜數據特征具有更好的預測效果,其準確度達到了85.71%。而KNN 和GaussianNB 對質譜數據特征預測嗅覺描述符的準確度僅有76.43%和78.57%。AE-SVM 模型明顯更適合質譜數據預測嗅覺描述符。另一方面,由于質譜數據高維且稀疏的特點,在不使用特征提取的情況下,僅使用質譜原始數據,單獨使用SVM、KNN 和GaussianNB進行嗅覺描述符預測的準確度分別僅有27.14%、30.71%和14.29%,遠遠無法達到預測效果。

表1 特征提取模型準確度對比

表2 模型分類準確度對比

3 結論

本文提出了一種AE-SVM 分類模型,該模型通過輸入質譜數據預測其所屬的嗅覺描述符類別。AE 算法將高維稀疏的質譜數據進行特征提取,與SVM 算法相結合,成功使用了質譜數據對嗅覺描述符進行分類并獲得不錯的分類效果,使其達到了85.71%,遠優于其他算法。

猜你喜歡
描述符嗅覺編碼器
融合CNN和Transformer編碼器的變聲語音鑒別與還原
基于結構信息的異源遙感圖像局部特征描述符研究
基于AKAZE的BOLD掩碼描述符的匹配算法的研究
超強嗅覺
基于深度學習的局部描述符
基于雙增量碼道的絕對式編碼器設計
應用旋轉磁場編碼器實現角度測量
特征聯合和旋轉不變空間分割聯合的局部圖像描述符
讓你的嗅覺降降溫吧!
基于數字信號處理的脈沖編碼器
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合