孫家政 ,姜 紅* ,劉新磊 ,屈音璇 ,段 斌 ,劉 峰
(1.中國人民公安大學(xué) 偵查學(xué)院,北京 100038;2.中國刑事警察學(xué)院 刑事科學(xué)技術(shù)學(xué)院,沈陽 110035;3.南京簡智儀器設(shè)備有限公司,南京 210049)
牙膏是人們?nèi)粘I钪星鍧嵮例X的個人護(hù)理用品,因含有膠黏劑而具有一定的黏性,有時被犯罪分子作為黏合劑使用,在犯罪現(xiàn)場中可提取到牙膏物證。檢驗牙膏物證的方法有色差法[1]、掃描電鏡法[2]、近紅外光譜法[3]、拉曼光譜法[4]、高效液相色譜法[5]、紫外吸收光譜法[6]、定量光激發(fā)熒光法(QLF)[7]、石墨爐原子吸收分光光度法[8]、電感耦合等離子體-串聯(lián)四極桿質(zhì)譜法(ICP-MS/MS)[9]、高效液相色譜-串聯(lián)質(zhì)譜法[10]、電感耦合等離子體原子發(fā)射光譜法(ICP-AES)[11]等。上述方法中,除紅外光譜法和拉曼光譜法外,其余方法普遍存在操作復(fù)雜、需對樣品進(jìn)行前處理、檢驗時間長、檢測成本高等缺點,不適用于對犯罪現(xiàn)場牙膏物證的快速檢測。
牙膏因含有二氧化鈦類熒光增白劑成分而具有一定的熒光屬性[12],而拉曼光譜易受到入射激光功率、光學(xué)系數(shù)等參數(shù)的干擾。因此,使用拉曼光譜法對牙膏樣品檢驗時,僅得到很弱的拉曼信號,樣品對應(yīng)的拉曼光譜圖像中振動峰重疊較多,降低了對拉曼光譜圖中特征峰分析結(jié)果的準(zhǔn)確度。差分拉曼光譜法選用激發(fā)波長差異微小的雙頻輸出光源對樣品進(jìn)行照射,再對獲取的兩張拉曼光譜圖進(jìn)行差分處理,最終得到含有差分信息的光譜圖像,是一種改進(jìn)拉曼光譜對樣品的熒光處理技術(shù)[13-14]。差分拉曼光譜技術(shù)可直接檢測高熒光性物質(zhì),靈敏度高,能夠檢測出系統(tǒng)微弱的信號,濾除掉拉曼光譜圖中環(huán)境光峰、熒光干擾峰,只保留純凈的拉曼峰,其操作過程無損檢材且便捷快速[15]。目前,已有報道采用差分拉曼光譜技術(shù)檢測鞋底[16]、口紅[17]、熱敏紙[18]、煙盒外包裝薄膜[19]等物質(zhì),但尚未有關(guān)于牙膏物證的檢驗研究。本工作采用差分拉曼光譜技術(shù),通過手肘法和Gap Statistic算法對聚類數(shù)(K值)進(jìn)行優(yōu)化,建立了K-means聚類法對熒光背景較強的牙膏樣品分類的方法,取得了較好的分類效果。
SERRDS Portable-Standard 型便攜式差分拉曼光譜儀;數(shù)據(jù)分析采用Rstudio、Origin、Simca等軟件。
來自不同廠家、不同品牌的37個牙膏樣品。
激光波長784,785 nm;波數(shù)260 cm-1;掃描范圍180~2 800 cm-1;激光功率450 m W;積分時間60 s;掃描次數(shù)5次;激光探頭高度0.5 mm。
1.3.1 方法原理
1)K-means聚類法
K-means聚類法是對一個數(shù)據(jù)集中的相似數(shù)據(jù)對象劃分求解的聚類算法[20],該算法將數(shù)據(jù)集分為K個組別,迭代計算出每個數(shù)據(jù)對象與K類組別中心之間的距離,直到每個數(shù)據(jù)對象分配給距離其最近的組別中心[21]。在進(jìn)行K-means聚類前,需要首先確定K值。由于K值的選取具有任意性與隨意性,不同的K值會影響數(shù)據(jù)集的最終聚類結(jié)果[22],因此選取合適的K值,是樣品分類鑒別的關(guān)鍵。
2)手肘法
手肘法[23]是采用誤差平方和(SSE)算法來確定K值,其分析思路為:隨著K值的增大,SSE 值逐漸減小;當(dāng)未達(dá)到最佳聚類效果時,隨著K值的增大,相應(yīng)SSE 值處的曲線斜率逐漸增大,在簇內(nèi)的聚合效果逐漸變好;當(dāng)達(dá)到最佳聚類效果時,即K值為最優(yōu)聚類數(shù)時,繼續(xù)增大K值,相應(yīng)SSE 值處的曲線斜率會驟然變大。因此,K值與SSE 值的關(guān)系為一個近似肘形的圖,通過觀察縱坐標(biāo)SSE 值對應(yīng)的曲線斜率,將斜率突然增大的肘點作為最優(yōu)K值,即K-means聚類法的最佳聚類數(shù)[24]。手肘法確定K值的分析步驟如圖1所示。
圖1 手肘法確定K 值的分析步驟Fig.1 Analysis steps of determining K value by elbow method
手肘法的計算見公式(1)~(3)。
首先通過式(1)計算歐氏距離dist(p i,p j):
式中:p i與p j為兩個樣本對象。
接著通過式(2)計算簇內(nèi)SSE值:
式中:p為樣本對象;c i為當(dāng)前簇的簇中心。
最后通過式(3)計算總SSE值:
式中:K為數(shù)據(jù)集的聚類數(shù)。
3)Gap Statistic算法
手肘法簡單易懂且應(yīng)用廣泛,但肘點是在一定范圍內(nèi)的,隨意地選擇K值將會出現(xiàn)較大的偏差,影響對數(shù)據(jù)集最終的聚類結(jié)果[25]。因此,本工作進(jìn)一步采用Gap Statistic算法優(yōu)化K值。
Gap Statistic算法由TIBSHIRANI 等[26]提出,是對手肘法的提升改進(jìn)。通過計算類內(nèi)樣本點之間歐式距離的平方和,在最優(yōu)聚類結(jié)果中,同簇中各個樣本與平均樣本之差的平方總和相對較小,反之,不同簇樣本的平方總和則相對較大。引入由蒙特卡洛(Monte Carlo)采樣方法獲得的參考值,即產(chǎn)生與數(shù)據(jù)集合中數(shù)量相同的隨機樣本,并對隨機樣本進(jìn)行多次K-Means聚類,最終求得Gap值,以最大Gap值對應(yīng)的K值為最佳聚類數(shù)。先將數(shù)據(jù)集分為K類(P1,P2,…,P K),其中P r表示參考點屬于第r類的情況,定義n r=|P r|,為屬于P r的參考點個數(shù)。Gap Statistic算法的具體計算過程如下。
首先通過式(4)計算第r類中任意兩點的距離和D r:
式中:x i,x j為兩個數(shù)據(jù)點;c r為數(shù)據(jù)集。
接著通過式(5)對D r值標(biāo)準(zhǔn)化:
式中:w K為標(biāo)準(zhǔn)化后的D r。
最后通過式(6)計算Gap值:
1.3.2 樣品分類
1)差分拉曼光譜
對牙膏樣品進(jìn)行編號,取直徑為1 cm、涂抹厚度為6 mm 的牙膏于載玻片上,用蓋玻片刮蹭牙膏使其表面平整,待表面凝固后置于室溫下晾干10 h,按照儀器工作條件對處理后的牙膏樣品依次進(jìn)行掃描。
2)K-means聚類法
調(diào)用R 語言軟件中fpc、factoextra、cluster數(shù)據(jù)庫中的na.omit、scale函數(shù)對37個牙膏樣品的差分拉曼光譜數(shù)據(jù)作標(biāo)準(zhǔn)化處理,選擇K值為4,利用K-means聚類法對牙膏樣品進(jìn)行分類。
2.1.1 手肘法
采用R 語言軟件中的n Factors數(shù)據(jù)庫和SSE算法,考察了不同K值(1,2,3,4,5,6,7,8,9,10)對SSE值的影響,結(jié)果見圖2。
圖2 不同K 值對SSE值的影響Fig.2 Effect of different K values on SSE value
由圖2可知:隨著K值的增大,SSE 值逐漸減小;當(dāng)K值為3,4,5時,曲線斜率發(fā)生明顯變化;繼續(xù)增大K值,曲線斜率逐漸接近0并趨于穩(wěn)定。因此,最優(yōu)K 值可能為3,4,5。接著,試驗采用Gap Statistic算法進(jìn)一步優(yōu)化K值。
2.1.2 Gap Statistic算 法
利用R 語言軟件中factoextra 數(shù)據(jù)庫中的fviz_nbclust函數(shù)處理差分拉曼光譜數(shù)據(jù)。采用Gap Statistic算法,考察了不同K值(1,2,3,4,5,6,7,8,9,10)對Gap值的影響,結(jié)果見圖3。
圖3 不同K 值對Gap值的影響Fig.3 Effect of different K values on Gap value
結(jié)果顯示:當(dāng)K值為10時,Gap值最大;由于手肘法中確定K值可能為3,4,5,當(dāng)K值為4時,Gap值較大,此時對牙膏樣品的分類效果較好。因此,選擇K值為4。
選擇K值為4,采用R 語言軟件中的fpc、factoextra、cluster數(shù)據(jù)庫,對牙膏樣品進(jìn)行K-means聚類分析,結(jié)果見圖4。
圖4 K-means聚類結(jié)果Fig.4 Results of K-means clustering
結(jié)果顯示,當(dāng)K值為4時,37個樣品在二維平面中被分為4類,聚類結(jié)果見表1,各類樣品的差分拉曼光譜圖見圖5。
圖5 差分拉曼光譜圖Fig.5 Differential Raman spectra
表1 37個牙膏樣品的聚類結(jié)果Tab.1 Classification results of 37 toothpaste samples
層次聚類分析法(HCA)是對數(shù)據(jù)集進(jìn)行層次相似的聚類,該方法將每一個數(shù)據(jù)點看成一個組別,計算各組別之間的距離,將距離最小的兩個小組聚為一個新的組別,重復(fù)以上過程直至最后聚成一個大組。層次聚類不指定具體的組別個數(shù),只關(guān)注組與組之間的距離,最終形成一個“樹狀圖”,該圖可表示各組之間的聯(lián)系。層次分解方式有:①凝聚層次聚類,從每個數(shù)據(jù)點凝聚到整個數(shù)據(jù)集,每個數(shù)據(jù)點單獨作為一個小組,再將各個小組合并為更大的組,直至數(shù)據(jù)集中的所有對象都在同一組中;②分裂層次聚類,從整個數(shù)據(jù)集分裂到每個數(shù)據(jù)點,先將數(shù)據(jù)集置于一個大組中,再將大組分裂成更小的組,不斷循環(huán)此過程直至每個數(shù)據(jù)點單獨為一組。試驗采用HCA 對37個牙膏樣品進(jìn)行聚類,來驗證K-means聚類結(jié)果的正確性,結(jié)果見圖6。
圖6 層次聚類分析結(jié)果Fig.6 Results of hierarchical clustering analysis
結(jié)果顯示,37個牙膏樣品被分為了四大類,其中第1類包含4#,20#,32#,35#樣品,第2類包含1#,2#,3#,5#,8#,9#,16#,17#,21#,30#樣品,第3類包含11#,13#,14#,23#,24#,28#,31#,33#樣品,第4 類包含6#,7#,10#,12#,15#,18#,19#,22#,25#,26#,27#,29#,34#,36#,37#樣品。該結(jié)果與K-means聚類結(jié)果完全一致,表明Kmeans聚類法準(zhǔn)確度高,能夠?qū)ρ栏鄻悠份^好的分類。
本工作采用差分拉曼光譜法對37個牙膏樣品進(jìn)行快速無損檢測,使用R 語言軟件中的n Factors、fpc、factoextra、cluster等數(shù)據(jù)庫對差分拉曼光譜數(shù)據(jù)整合處理,通過手肘法和Gap Statistic算法優(yōu)化K值,建立了K-means聚類法對牙膏快速分類的方法,并結(jié)合HCA 對37 個牙膏樣品進(jìn)行分析,來驗證該方法的準(zhǔn)確度和合理性。結(jié)果表明,該方法分類結(jié)果合理,準(zhǔn)確度高,可快速對牙膏樣品進(jìn)行分類,提高了對牙膏物證的鑒別效率,為公安機關(guān)實際辦案提供了線索與幫助。