李公全,林旭旭,彭 梅,周里瓊
(湖南科技學院,湖南 永州 425199)
玻璃是代表東西方工藝技術的產品,沿著“一帶一路”貿易往來傳播,見證了東西方貿易文化的交流。古代玻璃極易受埋藏環(huán)境的影響而風化。在風化過程中,內部元素與環(huán)境元素進行大量交換,導致其成分比例發(fā)生變化,從而影響對其類別的正確判斷。為了對古代玻璃制品進行更加準確的分類和保護,分析文物樣品表面風化前后化學成分含量的變化規(guī)律,探究高鉀玻璃、鉛鋇玻璃的分類規(guī)律并對其進行亞類劃分是至關重要的。目前很多學者對古代玻璃的研究重點放在了玻璃的出土地、制造技術等方面[1-4],對類別未知的古代玻璃進行正確分類研究較少。因此本文建立隨機森林和支持向量機算法對古代玻璃的成分進行分析和鑒別,從而對玻璃正確分類。模型充分聯系實際,具有很好的通用性和推廣性。
本文采用的數據來源于“全國大學生數學建模競賽”官網,官網提供了58 個我國古代玻璃制品的表面風化情況,考古工作者通過專業(yè)的技術手段已經給出了這些文物樣品的14 種化學成分含量比例和玻璃類型?,F有未知類別的一批玻璃文物相關特性和基本信息,擬對該批玻璃進行鑒別,確定其所屬類別。數據見表1。
表1 玻璃文物的基本信息
由于這些數據的特點是成分性,即各成分比例的累加和應為100%,但因檢測手段等原因可能導致其成分比例的累加和非100%的情況。本文將成分比例累加和介于85%~105%之間的數據視為有效數據,并對不位于這個比例的數據進行刪除。
決策樹是一種基于if-then-else 規(guī)則的有監(jiān)督學習算法,是一種樹形結構。隨機森林是由很多決策樹構成的,且不同決策樹之間沒有關聯,其隨機森林算法基礎結構如圖1 所示。
圖1 隨機森林模型
當利用該算法做分類任務時,每輸入一個新樣本,森林中的每一棵決策樹就會對其進行判別和分類,且每個決策樹都會得到一個自己的分類結果,決策樹的分類結果中哪一個分類最多,那么這個分類就會被隨機森林作為最終結果返回。
首先對玻璃文物表面未風化的樣本隨機取樣訓練對應的決策樹。該玻璃文物表面未風化數據集共有35個樣本,將這些數據進行有放回的隨機抽取,訓練得到多個不同決策樹。然后分別計算訓練出的決策樹的決定系數,最終選取決定系數R2得分接近1.0 的前5個決策樹構成隨機森林。
對于表面未風化的玻璃,根據玻璃分類規(guī)律建立的隨機森林中訓練出的7 個決策樹分類特征為:SiO2、PbO、K2O、P2O5、BaO、Fe2O3和CaO,即上述7 個化學成分含量是區(qū)分表面未風化的高鉀玻璃和鉛鋇玻璃的重要指標依據。
首先對玻璃文物表面風化的樣本隨機取樣訓練對應的決策樹。該玻璃文物表面風化數據集共有32 個樣本,將這些數據進行有放回的隨機抽取,訓練得到多個不同決策樹。然后分別計算訓練出的決策樹的決定系數R2,最終選取決定系數R2得分接近1.0 的前5 個決策樹構成隨機森林。
對表面風化的玻璃,根據玻璃分類規(guī)律建立的隨機森林中訓練出的7 個決策樹分類特征為:SiO2、PbO、K2O、P2O5、BaO、Fe2O3和CaO,即上述7 個化學成分含量為區(qū)分表面風化的高鉀玻璃和鉛鋇玻璃的重要指標依據。
對高鉀玻璃和鉛鋇玻璃選擇合適的化學成分對其進行亞類劃分,為保證結果的合理性,本文選用數據為表面未風化數據。
將高鉀玻璃且表面未風化的樣本數據提出,對其進行系統(tǒng)聚類。依據2.2 可知,高鉀玻璃分類規(guī)律建立的隨機森林中訓練出的5 個決策樹分類特征為:SiO2、PbO、K2O、P2O5、BaO、Fe2O3和CaO。因玻璃亞類劃分是在玻璃分類規(guī)律基礎上進行的,故將這7 個化學成分作為系統(tǒng)聚類指標變量。根據SPSS 得到高鉀玻璃未風化樣本數據譜系圖,如圖2 所示。
圖2 高鉀玻璃未風化樣本數據譜系圖
可將高鉀玻璃聚類為3 個亞類。其中,第21 號為第一類,第18 號、第3 號(部分1)、第3 號(部分2)為第二類,其他樣本為第三類。
根據樣本各個化學成分含量數據,找出這3 類化學成分含量具有明顯差異的化學成分,即SiO2、CaO、Al2O3,最終劃分結果見表2。
將鉛鋇玻璃且表面未風化的樣本數據提出,對其進行系統(tǒng)聚類。根據SPSS 得到鉛鋇玻璃未風化樣本數據譜系圖,如圖3 所示。
圖3 鉛鋇玻璃未風化樣本數據譜系圖
通過分析譜系圖,將鉛鋇玻璃聚類為3 個亞類。第一類包括:24、30(部分1、部分2),第二類包括:55、47、46、37、23、25、42(部分1、部分2)、49、50,剩下樣本為第三類。分類結束后,將20 號相關化學成分與分完類的化學成分進行比較,比較與哪一類相近則歸為哪一類,最終歸為第二類。
根據樣本各個化學成分含量數據,找出這3 類具有明顯差異的化學成分,即SiO2、PbO 和BaO,其最終劃分結果見表3。
表3 鉛鋇玻璃亞類結果
為了驗證劃分方法及其結果是否穩(wěn)定,需要對其結果進行敏感性檢驗,從而驗證該劃分方法的可行性。對高鉀玻璃未風化樣本的SiO2、CaO、Al2O3相關數據先分別進行白噪聲處理,對鉛鋇玻璃未風化樣本的SiO2、PbO、BaO 分別進行白噪聲處理。處理后化學成分的新數據替換處理前的數據后,進行同樣操作的聚類分析,得到一個新的譜系圖,接著將這個譜系圖與之前的譜系圖進行對比,若聚類結果幾乎沒有差異,則說明其具有敏感性,反之則不具有敏感性。
1)高鉀玻璃中,將SiO2、CaO、Al2O3進行白噪聲處理后重新對樣品分類。
對比處理前后的譜系圖,發(fā)現高鉀玻璃的聚類結果幾乎一致,因此該劃分方法具有可行性。
2)鉛鋇玻璃中,對SiO2、PbO、BaO 進行白噪聲處理后重新對樣品分類,對比處理前后的譜系圖,發(fā)現鉛鋇玻璃的聚類結果幾乎一致,因此該劃分方法具有可行性。
SVM 是一種有監(jiān)督學習的算法,在實際分類訓練中,將實例表示為空間中的點,以求解能夠正確劃分數據集并且?guī)缀伍g隔最大距離超平面為目標。除了線性分類,SVM 可以采用內核有效地對高維的特征空間進行非線性分類。支持向量機結構示意如圖4 所示。
圖4 支持向量機結構示意圖
其中輸入層視為存貯出入數據,并不做任何加工運算;中間層是通過對樣本集的學習,選擇K(x,xn),n=1,...,L;最后一層局勢構造分類函數
式中:bn為非負Langrange 系數,yn為輸入數據對應的輸出指標,這個過程等價于特征空間中構造一個最優(yōu)超平面。
對表1 的數據分析發(fā)現,玻璃文物表面風化與未風化的數據各有4 個。若要去判別每個玻璃文物是高鉀玻璃還是鉛鋇玻璃,需分別對風化與未風化進行進一步研究。將樣本數據分別輸入到2.2 和2.3 建立的表面未風化和風化隨機森林模型進行判別,判別結果見表4。
表4 待判別文物所屬類別結果
基于前面的分析得到:高鉀玻璃亞類劃分的依據是SiO2、CaO 和Al2O3的含量比例;鉛鋇玻璃亞類劃分的依據是SiO2、PbO、BaO 的含量比例。基于此,對每個類型表面未風化樣本依據化學成分含量進行SVM 訓練,其中對高鉀玻璃選取10 個樣本作為訓練樣本,訓練出分類模型,2 個樣本作為測試樣本,檢驗該分類模型效果;對鉛鋇玻璃則選取20 個樣本作為訓練樣本,訓練出分類模型,2 個樣本作為測試樣本,檢驗該分類模型效果。檢驗結果如圖5 和圖6 所示。
圖5 高鉀玻璃未風化訓練模型圖
圖6 鉛鋇玻璃未風化訓練模型
由圖5 和圖6 可知,2 種玻璃訓練出的分類模型效果均較好,則高鉀玻璃、鉛鋇玻璃的亞類劃分模型確定。接下來將高鉀未風化樣本A1 輸入高鉀玻璃亞類劃分模型,得到亞類劃分結果見表5。
表5 玻璃表面無風化玻璃亞類結果
表面風化玻璃部分化學成分含量發(fā)生改變,若直接對其進行亞類劃分,結果受多種因素的影響,導致結果有較大差異性。首先根據已知的風化的化學成分相關數據,將風化前的各個化學成分預測出來。
將分別求出高鉀和鉛鋇玻璃風化前后各成分相對含量均值差Δξmean,并通過風化后成分加上均值差的方法預測該部位風化前的成分的相對含量
式中:ξerode為風化后的相對成分數據;ξepredict是預測后的數據。
預測出來后,將數據帶入上一步建立的表面未風化亞類劃分模型,得到分類結果見表6。
表6 玻璃表面風化玻璃亞類結果
本文圍繞古代玻璃成分分析與鑒別問題,通過對古代玻璃各種成分數據進行分析,建立了基于隨機森林的古代玻璃成分分析和亞分類的模型、基于支持向量機的古代玻璃的鑒別模型,并進行了合理性檢驗,科學論證了其有效性,模型能夠對古代玻璃文物的分析與鑒別提供依據,對古代玻璃進行更好的保護。