王國田,戴筠一,許少鈞,蔣 濤
實驗室安全與環保
基于XGBoost算法的實驗室安全風險預測模型研究
王國田1,戴筠一2,許少鈞2,蔣 濤2
(1. 揚州大學 實驗室與設備管理處,江蘇 揚州 225009;2. 揚州大學 數學科學學院,江蘇 揚州 225009)
通過相關文獻歸納實驗室安全風險檢查指標體系,基于XGBoost算法,研究檢查指標體系的數據采集、數據預處理以及風險預測模型的初步建立,在此基礎上,探索模型的訓練、實驗室風險權重及模型的主要參數優化等方法,確立可行的實驗室安全風險預測模型,為開展實驗室安全評價和隱患整改提供可靠的依據。
指標體系;XGBoost算法;數據采集;模型建立;模型訓練和優化
實驗室安全檢查是實驗室管理的重要工作內容。教育部科技司于2015—2017年開展了連續3年的高校實驗室安全督查工作,檢查項目采用了《高等學校實驗室安全檢查項目表》[1](以下簡稱《檢查表》),該《檢查表》涵蓋組織體系、規章制度、安全教育、化學安全、生物安全、輻射安全、儀器設備安全等11大類40小類,共235個條款(2018年又修訂為12個一級指標和358個二級指標)。檢查表主要特點是項目多、范圍廣,檢查結果采用“符合”“不符合”“不適用”的分類評價方式,對于“不符合”項就要記錄隱患問題,是風險辨識和隱患排查的主要方法之一,在教育部組織的實驗室安全督查中得到了驗證與認可[2-3],是目前高校實驗室安全檢查的硬性要求。
檢查表在高校運用和實踐中,對于實驗室一些“顯性”特征,檢查結果和實際較為相符,風險辨識度較高,隱患問題的整改較好得到落實。但是對于檢查表中眾多檢查項目,因其對應的實驗室特征往往呈“隱性”狀態,且具有一定的不確定性和復雜性,相互之間還存在很多的“關聯”和“牽制”,現場定性判定的結果,并不全部真實反映實際情況,尤其是對檢查結果為“不符合”項,檢查者與被檢查者之間有爭論,意見的分歧直接影響到風險辨識結果和隱患問題的及時整改。目前,大數據處理、建立數學模型、運用相關算法開展實驗室風險識別,評價出更加科學、公正、具體的風險等級,實現危險源分類分級管理符合高校發展的趨勢[4-5]。
高等學校涉及化學、生物、醫學、工程等類別的實驗室,各類實驗室安全管理工作涉及面廣,內容繁多,檢查項目不盡一致。參照規范性、科學性、系統性、可操作性的構建原則[6],以《高等學校實驗室安全檢查項目表》(2018)為主要基礎,收集相關文獻資料,結合實際工作經驗,歸納出我校生物醫學實驗室安全檢查指標體系,其中一級指標10個,二級指標59個,并將二級指標細分為“優”“良”“中”“差”4個等級的檢查特征,并形成檢查指標集={1,2,…,59},見表1。

表1 生物醫學實驗室安全風險預測檢查指標體系及特征

表1(續)

表1(續)

表1(續)
XGBoost算法是陳天奇等在2015年提出的一種新的集成學習算法[7],是一種把若干個弱分類器整合為一個強分類器的方法,特點是將多個準確率較低的決策樹模型組合成一個準確率較高的模型,具有并行速度快、復雜度可控、可自動學習缺失值分裂方向、容錯及泛化能力高、結果預測值接近真實值等特點,目前已廣泛應用于數據挖掘、信用風險預測、質量特征預測等實際的工作中,如文獻[8]針對電子商務網站用戶信息進行數據挖掘,準確預測了用戶購買行為;文獻[9]分析網絡信貸平臺的用戶,對申請貸款用戶的信用風險進行了預測;文獻[10]能夠預測生產環節特征產品質量,及時做出對應的決策等。
按照集成學習算法的特點,至少應采集2次以上的結果數據,作為機器學習和識別,以2018年度我校生物醫學實驗室900次實驗檢查為例,按照檢查指標集,經過次實驗形成檢查數據集={}(=1,2,…,900),={1,2,…,n,n+1}(=1,2,…,59),其中S1,2,…,代表第次實驗中個檢查項目的檢查結果,+1代表第次實驗的實驗結果,對實驗結果也進行評價,分安全、一般、警告、風險4個等級。第次實驗的實驗結果類別及評價標準,見表2。

表2 第j次實驗結果類別及評價標準
對于檢查類別的自然數編碼,其取值大小沒有物理意義,直接在模型上使用可能導致結果誤差。本文采用獨熱編碼(One-Hot)離散化處理類別變量[11]。對于數據集的每一行,將每一個檢查項目(即1,2,…,I)的值(優、良、中或差)轉化為0-1向量,0-1向量的4個元素分別對應4個不同的等級(從右到左分別代表優、良、中和差),元素的值為該項檢查項目是否為該等級,是則為1,否則為0。例如,11(第1次試驗的第1號檢查項目)的1,為優,則將其轉換為向量(0,0,0,1),向量的第4個元素值為1,代表11的值為優,而其他3個元素值為0;對于實驗結果(即I+1),從右到左分別代表安全、一般、警告、風險。獨熱編碼轉換關系,如表3所示。

表3 第j次實驗數據的獨熱編碼轉換關系
基于XGBoost算法建立風險預測模型,模型主要包括3個方面:①將多個準確率較低的決策樹模型組合成一個準確率較高的模型;②利用貪心策略及二次最優化確定最優節點及最小的損失函數,在此基礎上進行樹分裂,根據預測數據每次建立最優樹,當達到樹的最大深度時停止迭代;③采用Python語言和調用XGBoost工具包,自動運行CPU多個線程,發揮分類運算速度快、效果好等優勢。模型的XGBoost主要算法流程如下[12-14]:
(1)初始化回歸樹(),損失函數集合l(),此時模型為常數值
(2)Whileon 1,2,3,…,T do
(3)do
(4)計算損失函數的最小值
(5)把得到加到l()中
(6)While t on 1,2,3,…,
(7)l()中選取最小時對應的()開始建樹
(8) 采用貪心法尋找最優分裂節點迭代生成新的樹
(9)If deep>max deep break
(10)基本模型完成
(11)利用柵格搜索等方法調優參
(12)優化模型對得到的數據進行綜合分析
由于檢查結果是類別性數值,取樣的數量不盡一致,因此,在模型訓練過程中使用十折交叉運算,使每份數據中各類別的分布與完整數據集分布更一致,所得模型更可信。本文利用上述的900組數據集,將數據集中的4個類別分別歸納并劃分成10等份,每次運算時按比例輪流選取810個數據集作為訓練集,90個數據集作為測試集,利用測試集對模型進行測試,統計10次的測試結果的準確率≥83%,各項指標的權重取值范圍為[0, 1],且所有檢查項目的權重和為1,確立的權重與實驗室風險的對應關系為:①輕微影響0~0.1;②一般影響0.1~0.2;③重要影響0.2~0.4; ④決定影響0.4以上。權重越大的檢查項目結果對實驗結果的影響就越大。
本文XGBoost算法定義了參數max-depth、learning-rate及n-estimators,其中max-depth為樹的最大深度,這個值是用來避免過擬合,值越大其模型會得到更具體更局部的樣本;learning-rate為學習率,通過減少每一步的權重,可以提高模型的魯棒性;n-estimators為決策樹個數,用來避免欠擬合和過擬合。通過不斷測試,當訓練的max-depth為4,learning- rate為0.18,n-estimators為1時,此時模型的性能達到最優。模型主要參數與準確率accuracy關系,如 圖1、圖2、圖3所示。

圖1 max-depth與accuracy關系

圖2 learning-rate與accuracy關系

圖3 n-estimators與accuracy關系
將實驗室安全風險預測模型應用于我校2019年1月新一輪生物醫學實驗室安全檢查,預測出59個二級指標的權重,并歸納到相應的一級指標中,權重表明生物醫學實驗室安全風險預測等級為一般,需要重點整治的有:
(1)危險化學品存在的隱患問題最多、風險度較高,是實驗室整治的重點環節;
(2)基礎安全設施和個人防護方面投入不足,需要加快建設;
(3)化學、生物等專業性安全教育不足,是實驗室安全準入管理整治的主要方面;
(4)安全檢查不及時、不到位,暴露出的各類隱患問題需要限期整改等。
生物醫學實驗室風險特征,如圖4所示。

圖4 生物醫學實驗室風險特征
基于XGBoost算法的實驗室安全風險預測模型,能定量分析實驗室存在的風險特征及權重,有助于實驗室安全風險評價和危險源分類分級管控。然而,全面實踐現有的實驗室安全風險預測模型,還需從可靠性和可操作性方面進一步研究,探索適應高校實驗室安全管理發展需求,逐步實現實驗室從程序管理向工序管理轉變。
[1] 馮建躍,金海萍,阮俊,等.高校實驗室安全檢查指標體系的研究[J].實驗技術與管理,2015, 32(2): 1–10.
[2] 馮建躍,杜奕,張新祥,等.高校實驗室安全三年督查總結(Ⅰ)[J].實驗技術與管理,2018, 35(7): 1–4, 11.
[3] 杜奕,馮建躍,張新祥.高校實驗室安全三年督查總結(Ⅱ)[J].實驗技術與管理,2018, 35(7): 5–11.
[4] 彭迎濤,宋紹義,方德英.大數據傳播過程風險識別及其指標體系研究[J].科技管理研究,2018(10): 78–82.
[5] 費騰,于柏,趙斌.基于Simulink的高校實驗室安全評價體系應用[J].實驗室工作研究,2017, 36(4): 75–78.
[6] 董繼紅,李占印. DHGF 集成法在高校實驗室安全管理評價中的應用[J].實驗室研究與探索,2013, 32(9): 251–254.
[7] CHEN T Q, UESTRIN C G. XGBoost: A scalable tree boosting system[C]. San Francisco: Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, 2016.
[8] 張昊,紀宏超,張紅宇. XGBoost算法在電子商務商品推薦中的應用[J].物聯網技術,2017, 7(2): 102–104.
[9] 甘鷺.基于機器學習算法的信用風險預測模型研究[D].北京:北京交通大學,2017.
[10] 蔣晉文,劉偉光. XGBoost算法在制造業質量預測中的應用[J].智能計算機與應用,2017, 7(6): 58–60.
[11] 美團算法團隊.美團機器學習實踐[M].北京:人民郵電出版社,2018.
[12] 趙天傲,鄭山紅,李萬龍,等.基于XGBoost的信用風險分析的研究[J].軟件工程,2018, 21(6): 29–32.
[13] HARRINGTON P.機器學習實戰[M].北京:人民郵電出版社,2013.
[14] 林靜,林振宇,鄭福仁,等. LabVIEW虛擬儀器程序設計從入門到精通[M]. 2版.北京:人民郵電出版社,2013.
Research on laboratory safety risk prediction model based on XGBoost algorithm
WANG Guotian1, DAI Junyi2, XU Shaojun2, JIANG Tao2
(1. Laboratory and Equipment Management Office, Yangzhou University, Yangzhou 225009, China; 2. College of Mathematical Science, Yangzhou University, Yangzhou 225009, China)
Based on the XGBoost algorithm, the data collection, data preprocessing and preliminary establishment of risk prediction model of laboratory safety risk inspection index system are studied. On this basis, the training of the model, weight of laboratory risk and optimization of the main parameters of the model are explored for the establishment of a feasible laboratory safety risk prediction model, which provides a reliable basis for carrying out laboratory safety evaluation and hidden danger rectification.
index system;XGBoost algorithm;data collection;model establishment;model training and optimization
G474
A
1002-4956(2019)12-0245-07
10.16791/j.cnki.sjg.2019.12.058
2019-04-18
中國高等教育學會高等教育科學研究“十三五”規劃課題2019年度實驗室管理專項課題(2019SYSYB06)
王國田(1963—),男,江蘇邗江,學士,高級實驗師,主要從事實驗室安全管理。E-mail: gtwang@yzu.edu.cn
蔣濤(1978—),男,山東濰坊,博士,副教授,研究方向為計算科學和應用科學。E-mail: jtrjl2007_@126.com