楊楚詩,張朋柱
(上海交通大學安泰經(jīng)濟與管理學院,上海 200030)
我國心血管病患病率處于持續(xù)上升階段,據(jù)推算,心血管病現(xiàn)患病人數(shù)2.9億,且至2016年,心血管病死亡率仍居首位,高于腫瘤等其它疾病。隨著我國心血管病負擔日漸加重,已成為重大的公共衛(wèi)生問題,防治心血管病刻不容緩[1]。急性心肌梗死(AMI)作為一種常見的心血管疾病,是冠狀動脈急性、持續(xù)性缺血缺氧所引起的心肌壞死,具有發(fā)病急、死亡率高等特點,在歐美較為常見。中國在世界上屬低發(fā)區(qū),但近年來患病率也有上升趨勢。據(jù)統(tǒng)計,中國2002年至2015年,AMI死亡率總體呈上升態(tài)勢。
學者多采用計量的方法,根據(jù)每個因素的卡方值、P值確定每個因素的顯著性水平,進而確定AMI的主要危險因素[5][9]。學者一般會設(shè)置對照組以及觀察組,對照組為未患AMI的患者,而觀察組為患有AMI的患者。實際上,高血壓、血脂異常等危險因素難以在對照組患者中體現(xiàn),觀察組患者的某些指標也與對照組患者明顯不同。因此利用DID思想,根據(jù)卡方值、P值確定的AMI危險因素在實際中解釋性不強,無法直接根據(jù)AMI危險因素進行AMI的預防、管控。因此,采用機器學習方法,基于危險因素,對心血管疾病發(fā)生的可能性進行預測便應(yīng)運而生。
AMI是多個疾病的并發(fā)癥,受多種危險因素影響,且發(fā)病急,因此僅基于心血管疾病的傳統(tǒng)危險因素來預測,準確度低,解釋性不強。因此,對AMI的預測需要基于更多的變量,并嘗試不同的機器學習算法。有學者利用不限于患者生理學指標的變量,以及神經(jīng)網(wǎng)絡(luò)算法,對AMI進行預測。
與以往研究不同,本文的患者數(shù)據(jù)的特征值涵蓋豐富的人口學指標,包括患者的教育水平、經(jīng)濟情況、住宅附近樓房的密集程度;豐富的生理學指標,包括過去一年各類與心血管疾病相關(guān)或者不相關(guān)的疾病的診斷情況;豐富的患者行為指標,過去一年的服藥情況、身體檢查情況等。a)本文將患者的行為納入對AMI的預測中,充分考慮近期行為會對疾病產(chǎn)生影響(特征選擇的創(chuàng)新);b)基于2016年患者的各項指標和行為,預測2017年患者患AMI的可能性(數(shù)據(jù)時間跨度的創(chuàng)新)。相較于以往的設(shè)置對照組與觀察組的研究模式,考慮到AMI是急性病,短期的行為相較于長期的行為,對AMI的解釋程度更高,即近一年內(nèi)被診斷為糖尿病相較于十年的糖尿病病史更可能是導致AMI病發(fā)的原因;c)對比了不同的算法對AMI預測的準確性以及算法的泛化能力強弱(算法的創(chuàng)新)。
狹義的大數(shù)據(jù)被定義為難以用現(xiàn)有的一般技術(shù)管理的大數(shù)據(jù)的集合,廣義上其數(shù)據(jù)量(Volume)含義可以擴展延伸到數(shù)據(jù)的產(chǎn)生速度(Velocity)、多樣性(Variety)和價值(Value)[14]。通常所說的醫(yī)療大數(shù)據(jù),泛指所有與醫(yī)療和生命健康相關(guān)的數(shù)字化的極大量數(shù)據(jù),種類繁多,來源廣泛??煞譃獒t(yī)院醫(yī)療大數(shù)據(jù)、區(qū)域衛(wèi)生服務(wù)平臺大數(shù)據(jù)、基于大量人群的醫(yī)學研究或疾病監(jiān)測大數(shù)據(jù)、自我量化大數(shù)據(jù)、網(wǎng)絡(luò)大數(shù)據(jù)、生物信息大數(shù)據(jù)等六大類[14]。
機器學習(Machine Learning),為一項多領(lǐng)域綜合學科,涉及算法復雜度理論、逼近論、統(tǒng)計學及概率論等多項理論。此學科將計算機如何模擬及實現(xiàn)人類學習行為作為主要研究內(nèi)容,探究計算機獲取新知識、技能方式,將已存在知識結(jié)構(gòu)予以重新組織,實現(xiàn)自身性能不斷優(yōu)化。一般包括監(jiān)督、半監(jiān)督、無監(jiān)督學習問題。在監(jiān)督學習中,數(shù)據(jù)輸入對象會預先分配標簽,通過數(shù)據(jù)訓練出模型,然后利用模型進行預測。無監(jiān)督學習中,數(shù)據(jù)沒有標簽。其重點在于分析數(shù)據(jù)的隱藏結(jié)構(gòu),發(fā)現(xiàn)是否存在可區(qū)分的組或集群。
若脫離實際,那么大數(shù)據(jù)是毫無意義的,將大數(shù)據(jù)運用到實際的決策中,才賦予了大數(shù)據(jù)意義[15]。機器學習算法是大數(shù)據(jù)分析的重要工具,為大數(shù)據(jù)賦予了實際的意義。分析師以大數(shù)據(jù)集為數(shù)據(jù)支持,利用機器學習算法,構(gòu)建、評估以及不斷優(yōu)化模型,最終賦予模型對事件進行預測的功能。機器學習算法在醫(yī)療大數(shù)據(jù)分析中發(fā)揮著重要的作用,臨床應(yīng)用的機器學習算法包括淺層機器學習算法,如回歸分析、決策樹、基于內(nèi)核的算法、降低維度的算法等;還包括深度學習算法模型,如卷積神經(jīng)網(wǎng)絡(luò)(CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)、深度信念網(wǎng)絡(luò)(DBN)等[16]。上述算法在分析不同類型的醫(yī)療健康大數(shù)據(jù)、預測不同類型的疾病等領(lǐng)域各有運用。
本文數(shù)據(jù)由美國商業(yè)保險公司哈門那公司(Humana)提供,總計10萬條標簽數(shù)據(jù)。標簽為是否在2017年第1季度被診斷為AMI,若被診斷為AMI,則AMI_FLAG=1;若未被診斷為AMI,則AMI_FLAG=0。指標包括人口學指標、生理學指標、購買藥物行為、接受CMS(美國聯(lián)邦醫(yī)療保險暨補助服務(wù)中心)服務(wù)情況、目前投保情況等。每個大類下的細分類目見表1。
表1 依據(jù)變量分類數(shù)據(jù)
其中,女性人數(shù)與男性人數(shù)的比例為1.31。均為40歲及以上的患者數(shù)據(jù),年齡分布大致呈正態(tài)分布。女性AMI_FLAG=1的人數(shù)占比2.28%,男性AMI_FLAG=1的人數(shù)占比3.31%。總的AMI_FLAG=1的患者數(shù)量為2743,約占比2.8%??梢姅?shù)據(jù)存在嚴重的正負樣本不平衡問題,數(shù)據(jù)處理的第一步即為解決該問題。
圖1 不同性別是否患AMI對比
圖2 數(shù)據(jù)年齡段分布
3.2.1 缺失值處理
針對缺失值較少的變量,直接刪除對應(yīng)數(shù)據(jù),比如直接刪除將沒有性別標簽(SEX_CD)的數(shù)據(jù);針對缺失值占比較高且對因變量可能產(chǎn)生影響的變量,設(shè)置一個新類(如“空類”)。
圖3 數(shù)據(jù)缺失情況
3.2.2 解決正負樣本不平衡問題
Chawla等人2002年提出解決正負樣本不平衡問題的算法,即SMOTE算法?,F(xiàn)實世界中的數(shù)據(jù)集只有一小部分異常示例,同樣的情況下,將異常示例錯誤地分類為正常示例的成本比將正常示例錯誤地分類為異常示例的成本要高得多。Chawla等人通過將過采樣類和前采樣類相結(jié)合的方式,獲得了更好的分類器性能[21]。
基本思想是與原樣本,按照以下公式構(gòu)建新的樣本:
利用SMOTE算法對原樣本中的負樣本進行拓展,保證正負樣本比例達到1:1。
3.3.1 移除低方差特征值
使用方差選擇法,計算各個特征的方差值。根據(jù)事先設(shè)定好的閾值,選擇方差大于閾值的特征。若方差值較小,說明該特征在所有樣本上的值離散程度低,該特征的解釋性不強;若方差較大,則說明該特征在所有樣本上的值離散程度高,該特征的識別能力較強。
本文利用方差選擇法,將242個特征值數(shù)量降低至139個。
3.3.2 單變量特征選擇
利用相關(guān)系數(shù),計算各個特征與目標值的相關(guān)系數(shù),結(jié)合顯著性水平p,對特征值進行進一步的選擇。本文采取的方法為綜合SelectKBest與卡方檢驗方法,即檢驗定性自變量對定性因變量的相關(guān)性,并將計算得到的卡方值從大到小排序,選擇排名前k名的所有特征。
本文選取了排名前20名的特征變量作為模型的輸入變量。
醫(yī)療大數(shù)據(jù)領(lǐng)域多應(yīng)用有監(jiān)督的機器學習方法,即預先知道患者的患病標簽,結(jié)合患者的各項指標,比如生理指標、病史、基因等,對患者患病的可能性進行預測。以下是對醫(yī)療大數(shù)據(jù)領(lǐng)域常用的機器學習算法的簡單總結(jié)。
本文利用醫(yī)療大數(shù)據(jù)領(lǐng)域的常用的幾種有監(jiān)督的機器學習算法,包括邏輯回歸、決策樹、隨機森林、GBDT等,分別構(gòu)建分類模型。70%的數(shù)據(jù)設(shè)為訓練集,其余的30%設(shè)為測試集,并分別計算模型在訓練集和測試集的預測準確性,對比不同模型的預測準確性及模型的泛化能力。
若模型在訓練集的準確性高而在測試集的準確性不高,說明模型可能存在過擬合問題,即泛化能力不強;若在測試集的準確性高而在訓練集的準確性不高,則說明模型可能存在欠擬合的問題,模型的訓練程度不足。表3為選取的幾個模型的訓練集和測試集預測準確性的對比。可見,決策樹模型和隨機森林模型的預測準確性較高,且泛化能力較強,GBDT模型次之,隨機森林最弱。圖4是對主要特征值對模型的影響程度的測試,數(shù)值越高,則說明特征值對模型的影響程度越大。
表2 醫(yī)療大數(shù)據(jù)領(lǐng)域機器學習方法簡介
表3 算法及其準確性
圖4 參數(shù)對模型的影響程度對比
模型模擬結(jié)果表明,可利用患者一段時間的行為(本文采取時間段為1年)行為,預測患者未來一個時間段(本文預測未來一個季度)內(nèi)是否會患AMI。并對比了不同模型預測準確性的高低及泛化能力的強弱,證明基于本文采用的數(shù)據(jù)集,利用決策樹和隨機森林模型,可以得到更高的預測準確性。
本文對于結(jié)合患者生理指標與短期行為進行未來患病可能性的預測有一定的借鑒意義,大多相關(guān)研究是基于患者的生理指標進行患病風險預測,且大多無法預測未來較短時間段內(nèi)患病的風險。另外,本文的研究思想對于保險行業(yè)有一定的參考價值,通過預測潛在投保人未來短期內(nèi)患急性病的可能性,可更好的設(shè)置保險賠付額度、保費等條款。
未來的研究可進一步深入,不局限于二分類問題,預測患者患AMI的類型;另外,算法的準確性與泛化能力存在提升的空間。