王繼華,李兆飛*,楊 壯,趙 娜,張貴宇
(1.四川輕化工大學 人工智能四川省重點實驗室,四川 宜賓 644000;2.四川輕化工大學 自動化與信息工程學院,四川 宜賓 644000)
中國白酒是一種以糯米、高粱、玉米等谷物為主要原料的酒精飲料[1],其香型眾多,濃香型白酒以其香氣濃郁、口感綿甜醇厚而著稱,在中國白酒市場占據重要地位,其市場份額曾一度達到70%以上,是中國白酒生產和消費的主流[2]。由于原料的復雜性和工藝的獨特性,白酒基酒中的成分異常豐富多樣,僅占1%~2%左右的微量成分賦予了白酒獨特的風味和香氣,決定著白酒的品質差異。傳統的基酒品質分析主要依賴于專業品評員的感官體驗,但由于其易受到環境條件和個體主觀性的影響,評估結果缺乏客觀性和一致性,無法實現基酒品質判別的準確性和客觀性[3]。
近年來,儀器分析作為一種快速、準確的檢測手段,逐漸廣泛應用于白酒等食品領域,如氣質聯用(gas chromatography-mass spectrometry,GC-MS)[4]、近紅外光譜(near infrared spectrometry,NIR)[5]、電子鼻(electronic nose,E-nose)[6]、核磁共振(nuclear magnetic resonance,NMR)[7]等技術。其中GC-MS是一種結合色譜高分辨能力和質譜高靈敏度的先進分析技術,在白酒分類識別中獲得了較好的性能。錢宇等[8]利用GC-MS技術檢測濃香型白酒成分,并結合主成分分析(principal component analysis,PCA)方法實現了對不同品牌白酒的分類。陳明舉等[9]利用GC-MS技術結合稀疏主成分(sparse principal component analysis,SPCA)和回歸分析建立了濃香型白酒等級判別模型。朱開憲等[10]利用GC-MS技術結合化學計量學手段實現了對不同香型的白酒分類。
目前,在基于GC-MS技術的白酒分類識別研究中,大多數方法是在類別分布平衡的條件下實現的,然而在實際白酒市場上白酒品質參差不齊是一個普遍存在的現象[11],這通常會導致不同品質的白酒之間存在數量不均衡問題。而常用的分類方法往往難以充分學習到少數類的樣本信息,導致難以達到理想的分類效果。因此,研究不平衡的濃香型白酒基酒分類可以幫助生產企業更好地生產不同品質的白酒并滿足市場需求,對白酒產業的發展和升級具有意義。目前針對非均衡數據的處理方法可以分為兩個方面:數據層面和算法層面。在數據層面主要采用欠采樣和過采樣這兩種技術[12]。欠采樣技術是通過減少多數類樣本數量,使分類器更專注于少數類樣本,常用方法是隨機欠采樣[13],欠采樣技術的主要優點是所有訓練數據都是真實的,然而它可能會忽略潛在的有效信息;過采樣技術則是增加少數類樣本來平衡數據分布,常用的有隨機過采樣和合成少數類過采樣技術(synthetic minority over-sampling technique,SMOTE),隨機過采樣只是簡單地復制少數類樣本,容易出現過擬合問題[14],合成少數類過采樣技術SMOTE[15]是一種強大的均衡數據集的方法,被廣泛應用于各個領域[16]。算法層面的主要思想是結合實際數據分布,對現有的分類算法模型進行適當修改[17],目前使用較多的是集成學習算法,常見的集成學習方法有Bagging算法、Boosting算法和隨機森林算法(random forest,RF)[18]等。王磊等[19]提出加權隨機森林有效提高了不平衡數據集的整體分類性能,ZHOU Z H等[20]改進了隨機森林算法,提出了深度森林算法(deep forest,DF),避免了隨機森林復雜的調參過程,具有更好的識別率。然而,針對樣本不平衡數據情況下的基酒分類識別問題還未有研究及報道。
本實驗將研究在樣本不平衡條件下對濃香型白酒基酒通過GC-MS檢測技術獲得的46種揮發性風味成分進行定性和定量分析,通過SMOTE對基酒數據進行擴充,增加數據集的平衡性,并通過稀疏主成分分析(SPCA)對GC-MS圖譜數據進行特征降維,最后采用深度森林算法對白酒基酒數據進行分類識別,同時與RF算法、支持向量機算法(support vector machines,SVM)[21]對比分析,以期為數據不均衡條件下的濃香型白酒基酒分類識別提供理論依據和方法。
1.1.1 白酒樣品
產自川南地區不同質量等級的濃香型白酒基酒樣品,經過感官品評分為一級、二級、優級、特級共四個等級,每個等級包含的樣本數量依次為73個、17個、42個、10個。
1.1.2 試劑
正構烷烴(C7~C40)(均為色譜純):北京曼哈格生物科技有限公司;無水乙醇(純度>99.5%):上海阿拉丁試劑有限公司;甲醇(純度>99.9%):美國Sigma-Aldrich有限公司。
7890A-5975C氣相色譜-質譜聯用儀、HP-5ms毛細管柱(30 m×0.25 mm×0.25 μm):美國安捷倫科技有限公司。
1.3.1 揮發性風味成分GC-MS分析
GC條件:色譜柱為HP-5ms毛細管柱(30 m×0.25 mm×0.25 μm)。載氣為高純氦氣(He),載氣流速1mL/min;進樣量1 μL,進樣方式為分流進樣,分流比為20∶1;進樣口溫度250 ℃;升溫程序:初始溫度40 ℃保持1 min,以10 ℃/min的升溫速度升溫到120 ℃(2 min),再以10 ℃/min升溫到200 ℃(2 min),最后以10 ℃/min升溫到250 ℃,保留時間為2 min。
MS條件:電子電離(electronic ionization,EI)源:電子能量70 eV;離子源溫度230 ℃;接口溫度280 ℃;采用全掃描模式;質量掃描范圍29~500 m/z。
定性分析方法:采用與樣品集完全相同的參數進行正構烷烴標準品(C7~C40)測定,計算保留指數(retention index,RI),與美國國家標準技術研究所(national institute of standards and technology,NIST)12譜庫進行比對,保留匹配度>85%的化合物。
定量分析方法:采用峰面積歸一化法。
1.3.2 SMOTE算法原理及分類模型評價指標
(1)SMOTE算法基本原理
類別分布不均衡是一種在分類器模型訓練過程中常見的問題之一,SMOTE算法是一種常用的解決類別不平衡的數據處理技術,它是對隨機過采樣算法的一種改進,旨在克服隨機過采樣可能引發的過擬合問題,相比于隨機過采樣算法,SMOTE過采樣具有更好的泛化能力,尤其在少數類別樣本數量非常有限的情況下,可以有效提升模型的性能和穩定性,因此在處理樣本不均衡問題時被廣泛應用[22]。為了提升模型的分類效果并降低過擬合風險,本研究提出將SMOTE應用到不均衡的白酒樣本中。SMOTE算法的基本思想對于每個少數類別樣本xi,選取它的k個鄰近樣本xi,near,然后在這些樣本之間進行插值,生成新的合成樣本xnew。新樣本合成公式如下:
xnew=xi+rand(0,1)×(xi,near-xi)
式中:rand(0,1)表示0~1之間的隨機數。
(2)稀疏主成分分析基本原理
主成分分析(PCA)是一種無監督學習方法[23],它通過線性組合所有原始變量,生成一組新的特征向量,稱為主成分,然而,由于這些主成分是原始變量的線性組合,其解釋性通常較差。SPCA是PCA的一種擴展,相較于傳統的PCA算法,SPCA在降維的過程中引入了稀疏性的概念,并在優化問題中使用lasso懲罰項,這使得優化問題變為一個稀疏化問題[24],即在降維過程中會生成稀疏的特征向量,突出主要成分,這可以更好的體現基酒中的微量成分與品質之間的關系。本研究將基于SPCA方法對基酒圖譜數據進行稀疏主成分提取并建立白酒品質分析模型。SPCA的計算步驟如下:
①初始化A=V[1∶k],其中V是PCA算法得出的前k個主成分的載荷矩陣。
②對于給定的A=[α1,…,αk],添加L1正則項對回歸系數進行懲罰獲得稀疏的系數:
③對于給定的B=[β1,…,βk],計算的XTXB=UDVT的SVD,更新A=UVT。
重復步驟②和③直至收斂。
④標準化之后得:
1.3.3 深度森林算法基本原理
集成學習算法通過將多個弱分類器組合成強分類器,可以降低模型的偏差和方差,提高模型的魯棒性,常用來解決數據分類不平衡問題。深度森林算法是基于決策樹的“集成中的集成”,結合了深度學習和隨機森林的思想[20]。該模型具備優秀的特征表示學習能力以及較少的超參數量,十分適用于小規模數據分析,對不平衡數據集有較好的魯棒性,一定程度上能克服傳統機器學習的不足,因此本研究選用DF作為分類器。
深度森林主要包括級聯森林和多粒度掃描兩個部分。多粒度掃描結構利用多種大小的滑動窗口進行采樣,以獲得更多的特征子樣本,從而達到多粒度掃描的效果。一個滑動窗口的多粒度掃描結構如下:

在多粒度掃描結構中,原始輸入特征為n維,滑動窗口大小為k維,滑動步長為s(一般取1),則原始特征通過該滑動窗口得到(n-k)/s+1個k維特征子樣本,然后這些子樣本再經過森林A和森林B的訓練,獲得C維的概率向量,最后將所有森林產生的C維概率向量進行串聯,計算得到最終的轉換特征。
多粒度掃描是對級聯森林的增強,級聯森林將多粒度掃描最終輸出的特征向量作為其輸入向量,并送入后續模型結構進行有監督訓練。它通過將多個森林組成一個級聯結構,每一層都對數據進行進一步的篩選和處理。級聯森林結構如下:

在級聯森林結構中,第一層森林用于初步篩選樣本,將大部分易分類的樣本從數據集中剔除;然后,通過級聯過程,將剩余的難分類樣本傳遞給下一層森林進行更深入的分類。通過這種方式就能逐層篩選樣本和加強分類器的方式提高整體分類性能,尤其適用于處理高度不平衡的數據集。在該級聯森林中每層有4個隨機森林,而每個森林都將生成一個4維向量,因此每層產生16維的特征向量,并將其作為下一層的輸入。最后一層將所有森林輸出的4維向量求平均并取最大值作為最終輸出結果。多粒度掃描結構和級聯森林結構相結合即為深度森林模型,深度森林總體結構如下:

在深度森林總體結構中,首先將46維原始特征向量送入多粒度掃描結構,經過3個滑動窗口進行滑動掃描并導入到隨機森林中轉換為類向量進行拼接,然后將轉換后的分類向量作為級聯森林的輸入特征,級聯森林經過逐層訓練直到模型性能不再提升,最后輸出所有森林生成的各類概率分布求平均,選取最大值作為最終預測結果。
1.3.4 分類模型評價指標
在處理非均衡數據時,分類器往往會將少數類誤分為多數類,使用準確率這一評價指標不能夠準確評價非均衡數據的分類模型,因此本研究除了準確率(accuracy,Acc)指標外,另引入基于精確率(precision,Prec)和召回率(recall,Rec)的F1值以及幾何平均(geometric mean,G-mean)值作為分類模型的評價指標,以二分類為例,混淆矩陣見表1。

表1 混淆矩陣Table 1 Confusion matrix
其中,TP(true positive)表示正確識別的正類樣本數量;TN(true negative)表示正確識別的負類樣本數量;FN(false negative)表示誤將正類預測為負類的樣本數量;FP(false positive)表示誤將負類預測為正類的樣本數量。基于上述混淆矩陣,Acc、F1值、G-mean等評價指標計算公式如下:
Acc=(TP+TN)/(TP+TN+FP+FN)
F1=2×Prec×Rec/(Rec+Prec)
式中各指標取值范圍均為0~1,準確率表示正確預測樣本數量占總樣本的比例,但在非平衡數據中無法保證少數類的識別效果;精確率表示所有正類中正確預測的比例;召回率衡量了模型是否能夠捕獲到所有正例,召回率越高表明某類樣本被正確識別的數量越多;而F1值則是基于精確率和召回率的調和平均值,綜合考慮了模型的預測準確性和召回能力[25];G-mean是真正例率和真負例率的幾何平均值,真正例率衡量了模型正確分類為正類的樣本比例,真負例率衡量了模型正確分類為負類的樣本比例,因此G-mean能夠更好地衡量分類器在多類別不平衡數據集上的整體性能,尤其對于少數類的分類效果有更好的反映。因此對于不均衡數據分類通常使用G-mean和F1值作為評價指標。
若是多分類問題,例如對于一個m分類(m>3),則要根據m×m的混淆矩陣計算每一個類別的召回率,精確率、F1值、G-mean和準確率然后取均值作為最終的結果。
本實驗參照國標GB/T 10345—2022《白酒分析方法》標準對濃香型白酒基酒酒樣進行感官評定。將濃香型白酒基酒酒樣進行編號并送瀘州某知名白酒公司進行感官品評。總分為100分,采用均值法記錄各基酒酒樣得分。其中95~100分之間為特級,90~95分之間為優級,80~90分之間為一級,70~80分之間為二級,70分以下為其他。
結果表明,一級基酒數量最多(73個),二級基酒數量為17個,優級基酒數量為42個,特級基酒數量最少(10個)。這是因為在經過蒸餾后得到的基酒會根據其質量特點和風味進行評定和等級劃分,并分別入庫,市場上最常見的就是一級和優級基酒。特級基酒指酒醅蒸餾過程中的中前段酒,這部分酒各種風味成分數量和比例特別協調,是基酒中質量最好的酒,但其比例非常少,主要用于調制高端產品;優級基酒通常是特級酒餾出后的部分,這部分的酒體非常干凈,質量較好,可用于調制次高端產品;一級基酒通常是中段酒,酒體的主體香相對來說不是特別突出,其產量最高;二級基酒通常指后段酒,這部分的酒體一般主體香低,一般品質較差,常用于調制低檔產品。
采用上述GC-MS實驗方法,計算得到基酒樣品中揮發性風味物質的相對含量,其中某一基酒樣品揮發性風味物質的分析結果表2。

表2 代表基酒樣品揮發性風味物質GC-MS分析結果Table 2 Results of volatile flavor compounds contents in representative base liquor sample analysis by GC-MS
由表2可知,從濃香型白酒代表性基酒中共鑒定出46種揮發性風味物質,包含醛類6種,酯類23種,醇類9種,酸類4種,以及其他少量苯類和酮類物質。可以看出酯類物質在濃香型白酒基酒中含量相對較高,其中己酸乙酯含量最高。
采用SPCA算法對GC-MS技術檢測的濃香型白酒代表性基酒中46種揮發性風味物質進行特征提取。稀疏主成分分析后前10個稀疏主成分的特征值、方差貢獻率以及累計方差貢獻率見表3。

表3 稀疏主成分分析主成分特征值與累計方差貢獻率Table 3 Eigenvalues of principal components and cumulative variance contribution rates of sparse principal components analysis
由表3可知,前10個稀疏主成分的累計方差貢獻率為98.309%,前6個稀疏主成分的累計方差貢獻率為92.886%,說明選取前6個稀疏主成分基本能夠反映原濃香型基酒揮發性風味物質的大部分信息。
為了更好的利用有限的樣本數量,關注到每個類別的特征,本研究基酒數據集采用分層抽樣的方式,按照4∶1的比例將數據集劃分為訓練集和測試集,進行模型訓練和驗證。為了更好地比較不均衡樣本的分類性能,本研究首先使用SVM、Adaboost、RF算法對未擴充數據集進行實驗,結果見表4。實驗過程中,SPCA選取前6個稀疏主成分特征作為輸入數據;SVM算法采用“一對多”策略,核函數采用徑向基函數;Adaboost算法選擇ZHU J等[26]提出的SAMME.R版本,使之適用于多分類問題;同時Adaboost、RF、DF和SVM算法均使用網格搜索的方式確定最優參數。模型驗證采用1.3.4節提到的準確率、G-mean及F1值作為評價指標。

表4 不均衡樣本下各算法分類結果Table 4 Classification results of each algorithm under unbalanced samples
由表4可知,整體而言,這幾種機器學習算法的準確率、G-mean和F1值都不是很高,這是因為它們在處理不均衡樣本分類問題時,通常會使結果傾向于多數類樣本,從而導致少數類樣本分類結果降低,所以不適合直接用于不均衡樣本。為此,通過前文的分析,使用SMOTE算法生成少數類樣本以均衡數據集。原始樣本數據中,一級基酒樣品是73個,是所有樣品中最多的,因此將其他3類基酒酒樣進行SMOTE過采樣后的樣本規模全部設置為73個,最終獲得292個均衡后的樣本集。均衡后的分類結果分別見表5和圖1。

表5 均衡樣本下各算法分類結果Table 5 Classification results of each algorithm under balanced samples
由表5可知,在均衡樣本后這幾種模型的準確率均有明顯提升,SPCA結合SVM、Adaboost、RF和DF算法的準確率、G-mean和F1值均能達到90%以上,其中DF算法的準確率、G-mean及F1值都最高,最終準確率達到96.61%。其結果表明在使用SMOTE算法擴充少數類樣本后,能夠使更多的少數類樣本得到正確的區分,有助于提高分類器整體分類能力,在對比方法中,SMOTE-SPCA-DF方法表現最佳。
由圖1可知,Adaboost、RF、DF和SVM算法在測試集的誤檢樣本數分別為5個、4個、2個和4個。由此可見,SMOTE結合SPCA和DF的方法能夠在實現數據降維的同時,有效提高白酒基酒分類準確率。
本研究基于GC-MS技術檢測分析濃香型白酒基酒的揮發性風味物質的相對含量,研究在白酒基酒數據集類間分布不均衡的情況下,提出采用SMOTE算法進行少數類樣本合成,得到均衡的數據集,并使用SPCA進行數據特征降維,去除冗余信息,最后使用深度森林集成算法分類器建立濃香型白酒基酒的等級分類識別模型。研究結果表明,在樣本不均衡的情況下,該模型在實現白酒基酒等級分類中準確率達到96.61%,為面向不均衡數據集的白酒基酒分類提供了一種有效的方法。后續研究將從基酒中的各揮發性風味物質入手,探討在均衡樣本下基酒中各揮發性風味物質對基酒品質的影響,以進一步提高基于GC-MS技術的基酒等級分類模型的適用性。