以前,醫(yī)療行業(yè)研究人員需要手動收集和分析大量的數(shù)據(jù)以進行疾病的預(yù)測和治療,面對龐雜的數(shù)據(jù)信息,相關(guān)的數(shù)據(jù)分析工作挑戰(zhàn)十分巨大。隨著人工智能領(lǐng)域的發(fā)展,醫(yī)生在見到患者的同時獲得基于實驗室檢查結(jié)果,家族病史,臨床試驗數(shù)據(jù)等生命統(tǒng)計數(shù)據(jù)的實時分析報告將成為現(xiàn)實。本文將以重癥監(jiān)護醫(yī)學(xué)領(lǐng)域的人工智能應(yīng)用為例,講述如何使用DarwinML來輔助醫(yī)療行業(yè)數(shù)據(jù)科學(xué)家進行自動建模。
DarwinMLDataFusion數(shù)據(jù)抽取平臺
該平臺幫助醫(yī)療行業(yè)數(shù)據(jù)科學(xué)家將原始數(shù)據(jù)自動轉(zhuǎn)換為可以被模型使用的特征數(shù)據(jù),功能通過數(shù)據(jù)流形式實現(xiàn),研究者可以通過修改參數(shù)和拖拽節(jié)點靈活改變特征抽取過程。下圖是一個數(shù)據(jù)流示意圖。
DarwinMLStudio自動建模平臺
從數(shù)據(jù)導(dǎo)入和清洗為起點,DarwinML可自動建模并給出模型多方位評估結(jié)果,數(shù)據(jù)科學(xué)家只需要重點關(guān)注模型評估結(jié)果。研究者根據(jù)研究目標(biāo),自行返回去調(diào)整最初的數(shù)據(jù)清洗方案和模型設(shè)置,多次建模,選擇符合研究需要的最終模型。
DarwinML自動建模平臺全流程如下:
1)數(shù)據(jù)清洗:均衡樣本分布,填補缺失值,消除特征異常值,文本特征數(shù)值化等。
2)模型設(shè)計:根據(jù)數(shù)據(jù)自身特性,以及研究者的參數(shù)設(shè)定,自動構(gòu)建搜索空間內(nèi)的最優(yōu)網(wǎng)絡(luò)結(jié)構(gòu)。網(wǎng)絡(luò)結(jié)構(gòu)會在平臺中顯示如下。
3)
超參調(diào)優(yōu):對最優(yōu)網(wǎng)絡(luò)結(jié)構(gòu),結(jié)合數(shù)據(jù)特性,給出相匹配的最優(yōu)超參組合,比如下圖所示的“超參數(shù)”列中XGBClassifiler的learningRate和nEstimators等。
4)模型訓(xùn)練:使用最優(yōu)網(wǎng)絡(luò)及超參組合,實際訓(xùn)練模型。
5)模型評估:給出查全率,查準(zhǔn)率,AUC等基礎(chǔ)指標(biāo)值,并且從模型角度,給出重要列分析結(jié)果,從樣本角度,給出單個樣本的重要特征分析。
同時可以根據(jù)需要,DarwinML自動建模平臺也支持只使用部分功能。比如可以導(dǎo)入一組新患者的檢查數(shù)據(jù),使用上次訓(xùn)練好的模型,只做模型評估,來對這一組新患者的患病幾率做預(yù)判。
案例:重癥感染綜合征(又名敗血癥,Sepsis)預(yù)后研究
根據(jù)其較早期的檢查指標(biāo),我們使用DarwinML為重癥監(jiān)護室(ICU)患者預(yù)警感染重癥感染綜合征(又名敗血癥,Sepsis)的可能性,以及是哪些指標(biāo)以何種方式導(dǎo)向這一結(jié)果。從而讓醫(yī)療領(lǐng)域數(shù)據(jù)科學(xué)家可以盡早地根據(jù)患者的各項檢查指標(biāo)來判斷Sepsis病癥的預(yù)后。研究者通過模型預(yù)警提前介入,用藥治療挽救生命。
步驟一:數(shù)據(jù)抽取
根據(jù)研究需要,我們的特征抽取目標(biāo)是,從620萬條檢查記錄中,涉及約20,000名患者的70項檢查,抽取出進入ICU之后符合一定條件的記錄,生成特征值用于模型。
DarwinML數(shù)據(jù)抽取平臺在這一過程中,可以幫助研究者完成三件事情:
1.數(shù)值化指標(biāo)值:由于醫(yī)療設(shè)備各有差異,同一項指標(biāo)的結(jié)果記錄不一致。比如:白蛋白(Albumin)指標(biāo),在部分檢查結(jié)果中記錄為數(shù)值0.5,1.9,2.9等,但有些檢查結(jié)果使用分段記錄“LESSTHAN0.3”,“LESSTHAN1.0”等,需要統(tǒng)一化處理為數(shù)值,用于模型訓(xùn)練;
2.截取數(shù)據(jù):研究者可以通過色設(shè)置參數(shù),來對關(guān)注的部分進行數(shù)據(jù)截取。比如在本次案例中,研究者希望探究是否有可能在患者進入ICU72小時內(nèi)給出感染Sepsis的預(yù)判,則研究者設(shè)定如下參數(shù)值來實現(xiàn)。
3.生成模型特征:由于患者的各項檢查時間不連續(xù),檢查間隔不穩(wěn)定,導(dǎo)致70項指標(biāo)的缺失值平均高達86.88%,具有高稀疏性特點。平臺可以對620萬條檢查記錄進行特征生成,轉(zhuǎn)換為被模型直接使用的20,000條患者記錄,也就是每位患者一條特征數(shù)據(jù)。
上述步驟將在DarwinMLDataFusion,以數(shù)據(jù)流形式在1小時內(nèi)處理結(jié)束。數(shù)據(jù)流的運行進展可以通過頁面日志實時查看,也可以在數(shù)據(jù)流實時顯示。
步驟二:數(shù)據(jù)清洗
DarwinML自動建模平臺會在數(shù)據(jù)導(dǎo)入后給出當(dāng)前數(shù)據(jù)每一列的具體清洗建議。比如:是否需要填充缺失值,填充值取多少合適;這一列的數(shù)據(jù)是否有嚴(yán)重偏移,是否需要消除異常值;這一列是否是字符串列,模型無法直接使用,如何做數(shù)值化處理,是映射為0,1,2...,還是做ICA編碼提取語義等。當(dāng)然,研究者可以選擇信任推薦的清洗方案,也可以自定義清洗方案。
下圖給出了DarwinML對不平衡數(shù)據(jù)分布自動做均衡化之后的結(jié)果,原本7:1的嚴(yán)重偏移分布(左圖),轉(zhuǎn)換為可以更好被模型擬合的2:1分布比例(右圖)。
“Hours0-72_Alkalinephosphate_min”數(shù)據(jù)由于含有異常值,數(shù)據(jù)分布呈現(xiàn)嚴(yán)重正偏態(tài),如下左圖,DarwinML自動推薦等距分箱,清洗后,如下右圖,消除了偏態(tài)分布。
在數(shù)據(jù)清洗完成后,DarwinML自動建模平臺會給出最終的數(shù)據(jù)寬表(如下圖)供反查。如果有不符合預(yù)期的處理,可以選擇“再次清洗”實現(xiàn)。
步驟三:模型設(shè)計、超參調(diào)優(yōu)、模型訓(xùn)練
DarwinML自動完成。
步驟四:模型評估
在DarwinML完成自動建模后,研究者可以查看模型評估結(jié)果來進行分析。比如:當(dāng)我們完成了一個模型,看到ROC曲線如下,AUC約等于0.9249,模型整體準(zhǔn)確率較高。
但當(dāng)我們進一步查看模型重要列分析,發(fā)現(xiàn)模型給出重要性較高的指標(biāo)是Diastolicbloodpressure(舒張壓)等體征指標(biāo),而研究者更為關(guān)注的是各項病理檢查指標(biāo)。
為了排除影響,我們選擇再次清洗數(shù)據(jù),把體征指標(biāo)從數(shù)據(jù)中剔除掉,再次自動建模。
剔除體征指標(biāo)后,得到一個新的模型,AUC約等于0.9094,略有降低,但模型的實際功能更符合研究需要。
接下來,我們可以查看評分卡結(jié)果,并對來患病幾率選擇一個門限,比如0.3,這時查準(zhǔn)率大約為0.94。在實際使用中,當(dāng)模型給出的患病幾率超過門限0.3,我們就可以初步判斷這位患者易感,需要重點關(guān)注。
結(jié)語
本文主要以重癥感染綜合征(又名敗血癥,Sepsis)的一次預(yù)后研究為例,對DarwinML自動建模平臺展開介紹。DarwinML同時支持時間序列、圖像分類、圖像目標(biāo)識別、OCR等任務(wù),兼容研究者自定義的模型應(yīng)用。在輔助醫(yī)療行業(yè)數(shù)據(jù)科學(xué)家進行自動建模過程中實現(xiàn)了自動化、人性化、專業(yè)化等極具應(yīng)用價值的目標(biāo)。
本?為探智立?與廣州市婦女兒童醫(yī)療中心李麗娟博?合作研究案例
申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!