編者按:機(jī)器學(xué)習(xí)本質(zhì)上是門工程學(xué),把實(shí)驗(yàn)室里的算法、技術(shù)帶入實(shí)際應(yīng)用,這是很多科研人員、數(shù)據(jù)科學(xué)家的夢(mèng)想。美國(guó)灣區(qū)有一個(gè)培訓(xùn)機(jī)構(gòu)insight,它專門招收名校PhD,通過(guò)短期強(qiáng)化課程把初出茅廬的學(xué)生培養(yǎng)成符合企業(yè)需求的數(shù)據(jù)工作者,而在這個(gè)過(guò)程中,這些接收培訓(xùn)的學(xué)生也留下了一些非常有價(jià)值的應(yīng)用。
本文介紹的Carlos Atico Ariza是2018年秋季的insight health研究員,在加入insight之前,他在一家公司擔(dān)任數(shù)據(jù)科學(xué)顧問(wèn),負(fù)責(zé)構(gòu)建端到端機(jī)器學(xué)習(xí)解決方案,比如無(wú)需人為監(jiān)督的異常檢測(cè)系統(tǒng)。雖然從事的是數(shù)據(jù)方面的工作,但Ariza在大學(xué)獲得的學(xué)位是化學(xué)和生物工程博士,他一直想為醫(yī)學(xué)領(lǐng)域作出貢獻(xiàn)。
在insight培訓(xùn)期間,Ariza部署了一個(gè)WebApp,能利用圖像分析技術(shù)診斷患者是否患有瘧疾,并列出治療優(yōu)先等級(jí)。這個(gè)應(yīng)用成功讓臨床醫(yī)生的瘧疾診斷工作量降低了85%。
微小而致命的敵人
對(duì)世界上超過(guò)半數(shù)的人來(lái)說(shuō),蚊子遠(yuǎn)不僅僅是一種滋擾:除了會(huì)引發(fā)皮膚瘙癢、敏感和失眠,它們也是瘧疾、登革熱等疾病的傳播媒介。以瘧疾為例,這是一種由瘧原蟲引起傳染病,當(dāng)感染子孢子經(jīng)蚊蟲叮咬進(jìn)入人體血液后,它們會(huì)在肝細(xì)胞內(nèi)進(jìn)行裂體增殖,然后釋入血液感染紅細(xì)胞……借助蚊子強(qiáng)大的繁殖能力,2015年,全球已經(jīng)有2億多人新感染瘧疾,每年因此死亡的人數(shù)超過(guò)40萬(wàn)!
瘧疾診斷的瓶頸
在諸多瘧疾診斷方法中,鏡檢法是許多醫(yī)院的支柱,它的具體流程是先把患者血液涂抹在載玻片上,用造影劑染色以區(qū)分血紅細(xì)胞內(nèi)的寄生蟲,然后經(jīng)專業(yè)訓(xùn)練的臨床醫(yī)生再在100倍的顯微鏡下,從5000個(gè)細(xì)胞里一個(gè)個(gè)計(jì)數(shù)包含寄生蟲的血紅細(xì)胞數(shù)(WHO方案)。
厚血涂片制作流程
可以想象,手動(dòng)計(jì)數(shù)5000個(gè)細(xì)胞絕對(duì)會(huì)是個(gè)緩慢的過(guò)程,這對(duì)醫(yī)療人員來(lái)說(shuō)也是個(gè)沉重的負(fù)擔(dān),尤其是在瘧疾爆發(fā)的地區(qū)。面對(duì)這種情況,Ariza認(rèn)為圖像分析和機(jī)器學(xué)習(xí)會(huì)有很大的應(yīng)用前景。
什么是F-beta
考慮到醫(yī)療領(lǐng)域?qū)z測(cè)準(zhǔn)確率的嚴(yán)格要求,如果機(jī)器要自動(dòng)化瘧疾診斷過(guò)程,它絕不能從看似不含寄生蟲的樣本中遺漏哪怕一個(gè)寄生蟲。為了降低誤診(假陰性)人數(shù),Ariza希望模型在輸出最終結(jié)果前,能重復(fù)進(jìn)行三次檢查:如果第一遍沒(méi)發(fā)現(xiàn),每隔8小時(shí)再采集一份厚血涂片并計(jì)數(shù)細(xì)胞數(shù);如果三次都沒(méi)發(fā)現(xiàn)寄生蟲,則判定患者未受感染。
現(xiàn)在,這個(gè)任務(wù)就有了一個(gè)很直接的目標(biāo):減少假陰性。
事實(shí)上,假陰性不止能被作為降低誤診率的一個(gè)度量,它也能充當(dāng)監(jiān)督機(jī)器的指標(biāo)。試想一下,如果我們訓(xùn)練了一個(gè)模型,它在實(shí)際進(jìn)行圖像分析時(shí)準(zhǔn)確率奇低,這時(shí)醫(yī)生就不得不需要抽更多時(shí)間來(lái)手動(dòng)檢查機(jī)器預(yù)測(cè)結(jié)果。在機(jī)器學(xué)習(xí)領(lǐng)域,我們有一些能評(píng)估分類器分類性能優(yōu)劣的指標(biāo),這里我們先回顧兩個(gè)概念:
精確率(Precision):被分類器判定為正類的樣本中,真正屬于正類樣本的比例
召回率(Recall):被分類器正確判定為正類的樣本數(shù)占正類樣本總數(shù)的比例
精確率越高,召回率越低;反之,召回率越高,精確率越低。而平衡精確率和召回率的指標(biāo)就是F-beta(Fβ)。這里β的取值意味著兩者在分類器性能評(píng)估中的相對(duì)重要性,在瘧疾診斷這個(gè)問(wèn)題中,Ariza設(shè)β=2,即最小化假陰性的重要性是假陽(yáng)性的2倍。
細(xì)胞開源數(shù)據(jù)
這個(gè)WebApp能成功的關(guān)鍵是Ariza幸運(yùn)地找到了一個(gè)優(yōu)質(zhì)數(shù)據(jù)集,里面包含27,558幅經(jīng)醫(yī)學(xué)專家手動(dòng)注釋的單細(xì)胞圖像,感染的/未感染的各占一半。這些細(xì)胞來(lái)自200名患者,每四名患者中有三名患有瘧疾。圖像都分割自顯微鏡視野原始圖像,而且都是手機(jī)拍攝,沒(méi)有用需要連接到顯微鏡的特制相機(jī)。
數(shù)據(jù)集地址:ceb.nlm.nih.gov/repositories/malaria-datasets/
可解釋的特征工程
有了任務(wù)目標(biāo),有了數(shù)據(jù)集,之后就是大家常常忽視的特征工程環(huán)節(jié)。提到構(gòu)建圖像分類器,每一個(gè)學(xué)過(guò)機(jī)器學(xué)習(xí)的人都知道CNN是最好的。但是在實(shí)際應(yīng)用中,構(gòu)建模型的正確做法是先從一個(gè)簡(jiǎn)單的模型開始,然后根據(jù)模型性能快速迭代。
所以Ariza首先做的是著眼于視覺(jué)上的顯著特征,用一個(gè)簡(jiǎn)單模型測(cè)量特征與整體分類的相關(guān)性。
利用OpenCV API提取Blob特征:染色的寄生蟲為Blob
他設(shè)計(jì)了一系列能指示細(xì)胞顏色、面積、凸度和圓度的特征,還創(chuàng)建了一些用來(lái)確定寄生蟲是否在細(xì)胞中可見(jiàn)的特征。由于寄生蟲的顏色和細(xì)胞質(zhì)不一樣,這時(shí)它們可以被看作是圖像中的Blob。由于一個(gè)細(xì)胞內(nèi)可能有多個(gè)寄生蟲,每個(gè)細(xì)胞包含的Blob數(shù)可以被記入特征集。
所謂Blob,指的是圖像中的一組連接像素,它們共享一些共同屬性(例如灰度值)。OpenCV提供了一種檢測(cè)Blob的便捷方法,能按顏色、大小和形狀過(guò)濾我們想要的Blob類型,只需設(shè)置相應(yīng)參數(shù)。
構(gòu)建模型
完成特征工程后,Ariza保留了20%的數(shù)據(jù)用于測(cè)試,并對(duì)剩余的80%進(jìn)行了3折交叉驗(yàn)證。之后,他又比較了四個(gè)機(jī)器學(xué)習(xí)分類器,從中選了一個(gè)F2得分為0.8的隨機(jī)森林模型。
流程:從感染(藍(lán))和未感染(橙)單細(xì)胞圖像中提取特征—訓(xùn)練模型—比較模型—選擇
但這不是最終結(jié)果。之前我們提到了,CNN模型在圖像分類上的性能是最好的。Blob檢測(cè)雖然操作方便,但性能卻很一般,如下圖所示,它在細(xì)胞邊緣和周邊位置表現(xiàn)很差。再加有些寄生蟲可能沒(méi)有被造影劑徹底染色,這時(shí)它們和細(xì)胞的顏色差異微乎其微,會(huì)影響分類器的輸出結(jié)果。
被模型錯(cuò)誤分類的感染細(xì)胞(假陰性),其中中間細(xì)胞的右下角有一個(gè)未被徹底染色的寄生蟲
此外,一些受感染的細(xì)胞在圖像上本身就難以表征。比如下面這幅圖,在人類專家眼里,左側(cè)這個(gè)細(xì)胞很可能被感染了,因?yàn)樯厦嬗泻芏嗥婀值陌咨黄穑ㄋ{(lán)圈),它們可能是感染細(xì)胞上才有的黏連結(jié)節(jié)(knob)。
但無(wú)論是不是黏連結(jié)節(jié),當(dāng)前這個(gè)簡(jiǎn)單分類器都難以提取這些指示寄生感染的微妙特征。于是Ariza放棄繼續(xù)手動(dòng)添加特征,轉(zhuǎn)而用CNN生成特征。
讓事情變得更復(fù)雜
他選取的CNN是Inception v3。我們都知道,初始Inception v3已經(jīng)在ImageNet數(shù)據(jù)集上經(jīng)過(guò)訓(xùn)練,能分辨什么是人,什么是狗,但它肯定沒(méi)法分類瘧疾感染細(xì)胞。為了進(jìn)行重新設(shè)計(jì),Ariza刪除了分類層,為每個(gè)圖像生成了2048個(gè)特征,之后又用PCA把特征降維到100個(gè)。在經(jīng)過(guò)3折交叉驗(yàn)證訓(xùn)練、測(cè)試和比較四種ML分類器后,他最后得到了一個(gè)F2得分為0.92的logistic regression分類器(L2正則)。這相比初代的隨機(jī)森林模型顯然是個(gè)巨大進(jìn)步,而性能提升的關(guān)鍵就是用CNN做后端。
把CNN提取的圖像特征用于模型訓(xùn)練
把模型變成WebApp
最后就是模型的部署——Ariza把它稱為“瘧疾英雄”。這個(gè)WebApp的潛在用戶是臨床醫(yī)生和患者,所以當(dāng)他們上傳單個(gè)細(xì)胞圖像后,APP要返回每個(gè)細(xì)胞被歸類為感染或未感染的結(jié)果。我們可以用三個(gè)正則表達(dá)式從每個(gè)圖像中提取元數(shù)據(jù),包括患者ID號(hào),然后將結(jié)果按患者分組并根據(jù)感染率分類。
“瘧疾英雄”界面
根據(jù)Ariza的個(gè)人體驗(yàn)(在校期間培養(yǎng)干細(xì)胞時(shí)的數(shù)細(xì)胞經(jīng)驗(yàn)),“瘧疾英雄”可以在診斷瘧疾時(shí),為臨床醫(yī)生節(jié)省85%的診斷用時(shí)。這意味著按照朝九晚五的工作時(shí)長(zhǎng),每個(gè)醫(yī)生每月可以多接診1400名患者。
手動(dòng)、自動(dòng)速度對(duì)比
由于結(jié)果是根據(jù)感染率進(jìn)行分類的,模型產(chǎn)生的結(jié)果也能幫助臨床醫(yī)生根據(jù)感染率對(duì)患者進(jìn)行優(yōu)先排序,加快對(duì)病情加重的患者的治療。
考慮到瘧疾多發(fā)地都是經(jīng)濟(jì)欠發(fā)達(dá)區(qū)域,優(yōu)質(zhì)醫(yī)療資源非常受限,而“瘧疾英雄”使用的數(shù)據(jù)集圖像都是手機(jī)拍攝的,這個(gè)APP其實(shí)也為“移動(dòng)問(wèn)診”提供了可能性。只要臨床醫(yī)生能拍攝足夠清晰的單細(xì)胞圖像,他就能隨時(shí)隨地高效診斷。同時(shí),一些新臨床醫(yī)生也能利用模型的結(jié)果,進(jìn)一步提高自己的鏡檢水平。
-
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8382瀏覽量
132444 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1205瀏覽量
24649 -
圖像分析
+關(guān)注
關(guān)注
0文章
82瀏覽量
18665
原文標(biāo)題:瘧疾WebApp:用深度學(xué)習(xí)加快瘧疾診斷
文章出處:【微信號(hào):jqr_AI,微信公眾號(hào):論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論