天天看點

深度學習處理醫學問題時,會面臨這些尴尬

ai掘金志(公衆号):雷鋒網旗下隻專注于報道ai商業化與落地的垂直内容頻道。助力“ai技術輸出者”尋找商業潛力大的落地場景,服務“ai技術消費者”選擇适合自身的技術供應商。

ai掘金志主要推送兩類文章:

1.深入挖掘ai公司與傳統機構的合作案例。

2.剖析各地醫院、銀行、制造企業、零售商、政府部門等傳統機構對ai的需求與實際應用情況。

雷鋒網按:本文轉載于肖恩大俠的個人公衆号:肖恩大俠(id:xiaoendaxia1)。

深度學習處理醫學問題時,會面臨這些尴尬

人工智能,路在何方?今天,帶來某醫療行業人工智能創業公司的部分思考。供大家參考。

最近幾個月,無論是媒體中人工智能第n次戰勝人類醫生,跨國科技巨頭挺進醫療人工智能,ai創業公司宣布高額融資,還是政府發文鼓勵人工智能相關的醫療器械發展,醫療人工智能方面的新聞鋪天蓋地襲來。

單以醫學圖像為例,ct、核磁、超聲、病理、内窺鏡、眼底等,都可以開發人工智能。醫療圖像的計算機處理向來是一個很大的産業,計算機輔助診斷(cad)也不是一個新概念,隻是人工智能技術手段的進步賦予了這個行業更多可能性。當然,我們要承認20世紀60年代發展的模式識别技術其實也解決了一些醫學圖像計算機輔助診斷方面的問題。

由于新聞報道的真實性不好評估,我們僅在學術論文層面來讨論醫學圖像人工智能的臨床價值。過去幾個月以來比較受人矚目的學術成果,也就是在高分學術期刊上發表的醫學圖像人工智能的部分論文有:

1. 《美國醫學會雜志》,谷歌:糖尿病視網膜病變的定級

《development

and validation of a deep learning algorithm for detection of diabetic

retinopathy in retinal fundus photographs》,

發表于2016年12月的美國醫學會期刊jama上。作者使用12.8萬張的眼底照片訓練了模型,主要的測試資料是來自4997名病人的9963張眼底照片集eyepacs-1。敏感度為90.3%時特異度為98.1%,敏感度為97.5%時特異度為93.4%。

深度學習處理醫學問題時,會面臨這些尴尬

2. 《自然》,斯坦福:兩種皮膚病變的診斷

《dermatologist-level

classification of skin cancer with deep neural networks》,

發表于2017年1月的nature期刊。作者使用12.9萬張含有兩千多種病竈的臨床皮膚照片訓練出模型,在分類上皮癌變和黑色素瘤兩種目标的任務上與21位皮膚病專家的表現一緻。與病理結果比較,作者分别測試了200-1000+張照片,獲得的敏感度與特異度繪制的roc曲線的auc均大于0.94

(auc是曲線下面積,敏感度和特異度均逼近100%時,auc逼近1)。

當然還有其他領域的科研進展,我在這裡就不逐一分析了。

無論是識别病竈還是判斷癌變程度,最基本的,是要同時讨論敏感度和特異度,前者代表正确的識别陽性的能力,反映了系統的漏診率;後者代表正确的判定陰性的能力,反映了系統的誤報率。當然,醫學論文也經常直接使用平均每幀誤報數這個名額來反映系統的特異度。

這和計算機工程領域的精确率precision和召回率recall說的是一個事情,并非是醫學界特有的評價名額,但是偏偏在很多軟文中有一些嘩衆取寵的表達,比如“精确率已經達到了95%,完美pk掉了人類醫生”。那麼我們讓一個國中生寫一段程式,對所有的輸入都報陽性,精确率肯定是100%。是以,任何單談敏感度或者特異度的成果釋出,都是在耍流氓。

由于筆者早些年對谷歌的深入密切了解和在斯坦福的經曆,對這兩家機構領先的技術和嚴謹的态度非常認可,這兩篇學術成果的發表也是實至名歸。然而,具體到臨床思考,這兩項人工智能輔助診斷的成果并沒有涉及能讓人完全信服的臨床驗證。

谷歌,“further

research is necessary to determine the feasibility of applying this

algorithm in the clinical setting”;斯坦福,“further research is necessary to

evaluate performance in a real-world, clinical setting, in order to

validate this technique across the full distribution and spectrum of

lesions encountered in typical practice.”

這兩篇頂級學術文章的自謙雖說有些客套,筆者認為臨床驗證的确可以在下述方向上努力。

更大的測試規模

谷歌和斯坦福的兩篇論文都使用了接近13萬張的訓練樣本,分别測試了不到一萬張和一千張左右。前者看似絕對數量不少,但實際上比起訓練樣本數量,僅僅不到8%。計算機輔助診斷的臨床驗證是要證明算法具有推斷力,至少應該滿足測試集與訓練集規模相當,這樣才能規避算法過拟合的風險。

從商業的角度思考,醫生标注了近13萬張訓練樣本資料,那麼做出的成果至少應該在更大規模的測試集上驗證有效,才能說明人工智能的開發成本與醫生勞動付出在商業上是可以打平的。筆者認為,臨床的測試集是幾倍于訓練樣本時,會很有說服力。

百度百科:前瞻性研究(prospective study)是把研究對象標明,研究方式預定好,相關的影響因素納入統計範圍,在這些條件下,根據這些因素去做持續的追蹤研究,分析判斷,最後在原訂計劃的時間内做出評估,把符合原來設計的方法的所有例子都要列入統計,(這個階段,不隻是選有效的來統計),全部結果都要呈現出。最終,選擇的結果經過計算,得出納入統計範圍中,相關影響波動有效的因素構成重點目标,繼而對這些因素進行深入研究,這就是前瞻性研究。

這兩篇論文都不是前瞻性研究,驗證人工智能算法的效果,采用前瞻性研究的方法并不會增加多少成本和複雜度,但臨床意義将凸顯。從計算機工程的角度出發,很多人工智能算法成果的開發,包括谷歌在上述科研中,是預先標明了測試集,然後不停的增加訓練樣本數量,直至得出在測試集上優秀的表現。這個方法在實際操作層面與前瞻性研究是有一定距離的。

臨床産品化的現實可行性

谷歌該團隊的産品經理在一次公開演講中表示,“現在的瓶頸主要在硬體層面,如何做一個輕量級的模型可以放在硬體裝置裡”(而不是靠雲計算)。斯坦福論文中展望了未來在手機等移動終端應用的場景,但是從公開資料上看,這個團隊并沒有像谷歌一樣從産品角度繼續工作。

總之,人們腦補的人工智能替代醫生,哪怕僅僅是輔助,在産品層面尚未出現。

認識深度學習本身的局限性。

神經網絡不是“神經”,那隻是一個個節點的分段線性函數;深度學習也不是“學習”,那隻是一個強大的拟合函數。從數學角度去看,卷積神經網絡是一組表達能力很強的函數,它可以用來拟合很多資料對象,當然,包括圖像。

1.  什麼是拟合?

 百度百科:所謂拟合是指已知某函數的若幹離散函數值{f1,f2,…,fn},通過調整該函數中若幹待定系數f(λ1,λ2,…,λn),使得該函數與已知點集的差别(最小二乘意義)最小。比如平面中有幾個點,可以用直線來拟合,可以用二次函數來拟合,當然也可以用五角星,甚至用奧特曼來拟合。
深度學習處理醫學問題時,會面臨這些尴尬

拟合函數的解釋(直線-曲線.-五角星)

選擇不同函數來拟合這些已知點集,會産生完全不同的結果,而這個選擇就是在揭示問題的抽象本質;反觀現在很多論調,用深度學習來解決一切問題,其實是做了一個很不科學的假設:所有問題的本質都可以用分層網絡結構的拟合函數來表達,而且這個網絡的每個節點都是簡單的分段線性函數。

2.  是不是資料量足夠就一定可以拟合出好用的模型?

答案當然是否定的,否則就不會有一個概念:過拟合(overfitting)。拟合一個特定的函數,會有對應的資料量區間能夠比較準确的呈現這個函數。而函數本質還不确定的時候,比如不清楚拟合目标是線性函數、抛物線還是奧特曼,完全靠拟合來生成一種函數表達,過拟合的風險是普遍存在的。

與過拟合相對,還有個概念叫欠拟合(underfitting),很多所謂人工智能的從業者其實并沒有能力判斷欠拟合和過拟合,是以往往在識别結果不達預期的時候,唯一的判斷是,需要加訓練樣本資料量(欠拟合)。而當随着訓練樣本增多,識别效果不升反降的時候,他們會說,是訓練樣本的标注品質出了問題(過拟合了一些錯誤樣本)。殊不知,是拟合本身的問題。

3.  正确對待深度學習這種拟合函數

揭示事物的本質、并用以計算機工程實作為有價值的産品離不開數學模組化。并非所有的數學工具都是拟合,也并非所有表達能力強的函數都是深度學習。真正的算法開發在于剖析問題本質來設計數學模型,而不是在深度學習這個拟合函數的範疇内去調參數。

我們不妨可以把深度學習叫做“深度拟合”,這樣可以減少大家對“學習”這兩個字的錯覺。

從“學習”的角度說開去,一個三歲小孩學習辨識男女,識别貓狗,以及認出七大姑八大姨,是很正常的;這個孩子長到十幾歲的時候,一眼分辨出奔馳和寶馬應該不難,也許可以一眼分辨奧迪a6和a8;可如果成長為一名優秀的醫生,他需要接受若幹年的知識學習和臨床實踐,拿下博士學位并在崗訓練幾年,也許才能夠算合格。

識别貓狗,辨識車輛,和做醫學判斷,這個學習的過程是有本質差別的,前兩者都可以通過不斷重複來訓練(可能分辨奧迪a6和a8需要一點點知識);而醫學,本身就是有強知識結構的學科,醫科專業不是誰都能考上的,也不是誰都能輕易拿到醫學博士的,這個過程必然不是靠機械重複的訓練。醫學知識相關的抽象思維體系的建立是臨床實踐的前提。

1. 醫學問題的難度和縱深

如果說深度學習神經網絡是一定程度模拟了人的視神經構造,那也隻在純視覺領域,比如識别人臉貓狗等,取得了不錯的識别效果。同樣的邏輯并不适合其它一切識别對象。對醫學對象性質的判别,包含非常複雜的邏輯分析和對抽象概念的了解,與判别貓狗等所需的對視覺特征的統計歸納有本質差別。受過良好基礎訓練的醫生,并不需要多麼海量的病例就能準确判别。而基礎比較差的醫生,并不能靠接觸病例多而提高其判别的準确率。

脫離醫學的邏輯知識體系,即使人的神經也無法正确拟合經驗對象進而達到正确的預測,更不要說幾層分段線性函數了。醫學識别的是對象的性質,而非對象的外觀的相似性,大量的情況是外觀形态相似但性質迥異,或外觀差距很大但性質一緻。例如如何讓計算機時而精确地抓住顯著的視覺特征,時而忽略那些顯著特征而抓住細節,就不是單純照搬識别貓狗的方法論能夠實作的。

2. 醫學資料的相對稀缺性

與人臉、貓狗、車輛動辄幾十萬上百萬的訓練樣本相比較,如果考慮了醫學問題的難度和複雜的次元,即使是在中國這樣的醫療資料大國,拿出的資料量恐怕也是不夠一根筋的深度學習神教來揮霍的。這個過程中,獲得大量精确标注也是耗時費力的事情,而沒有依照合适的數學模型設計的标注工作,其實也浪費了大量的醫療資源。

從問題本身入手,發掘其内在邏輯,而不是手裡拿着一個榔頭的時候,看什麼都像釘子。若幹年以後,大家回望深度學習的感覺,也許就像現在看待模式識别。開發醫學圖像的人工智能輔助診斷的算法和系統要尊重臨床指南,将具體問題中知識邏輯的部分和統計拟合的部分區分開,讓深度學習去完成它最擅長的工作。

讓上帝的歸上帝,凱撒的歸凱撒。

更多關于人工智能更新傳統行業的文章,請關注雷鋒網(公衆号:雷鋒網)ai商業化垂直微信公衆号:ai掘金志(id:healthai)。

本文作者:張利

繼續閱讀