0
本文作者: 李雨晨 | 2017-12-21 10:27 |
雷鋒網(wǎng)消息,醫(yī)學(xué)影像是人工智能重要的發(fā)展方向之一,業(yè)界爭相入局的同時也吸引了很多知名學(xué)者參與其中,并已出現(xiàn)了很多引人注目的成果。一年以來,國內(nèi)外很多團隊都聲稱自己利用AI技術(shù)在疾病診斷的正確率超越人類,斯坦福大學(xué)吳恩達等人提出的 CheXNet 算法便是其中之一。此前,雷鋒網(wǎng)對該團隊研究成果進行過相關(guān)報道:《吳恩達團隊發(fā)布最新醫(yī)學(xué)影像成果,用 CNN 算法識別肺炎》。團隊曾表示,該算法在識別胸透照片中肺炎等疾病上的準確率上超越了人類專業(yè)醫(yī)師。
然而,另一群學(xué)者對目前的一些研究成果產(chǎn)生了懷疑。本文作者 Luke Oakden-Rayner 就是其中之一,他是阿德萊德大學(xué)的放射科在讀博士。他認為,目前的 ChestXray14 數(shù)據(jù)集不適用于訓(xùn)練醫(yī)學(xué)人工智能系統(tǒng)進行診斷工作。(ChestX-ray14 是目前最大的開放式胸透照片數(shù)據(jù)集,包含 14 種疾病的 10 萬張前視圖 X-ray 圖像)
為了證明自己的觀點,Luke Oakden-Rayner博士將在本文中討論了以下幾個問題:標簽的準確度;標簽的醫(yī)學(xué)意義;標簽對于圖像分析的重要性。
雷鋒網(wǎng)對Luke Oakden-Rayner博士的文章進行了不改變原意的選譯
ChestXray14 數(shù)據(jù)集來自于論文《ChestX-ray8: Hospital-scale Chest X-ray Database and Benchmarks on Weakly-Supervised Classification and Localization of Common Thorax Diseases》,自首次發(fā)布以來,該數(shù)據(jù)集的論文和支持文檔已經(jīng)更新過多次。
在我看來,該論文需要花更多的時間解釋數(shù)據(jù)集本身,因為該數(shù)據(jù)集的大量使用者是計算機科學(xué)研究人員,在缺乏臨床知識的情況下,這種需求就顯得尤為重要了。然而,這篇論文主要介紹的是文本挖掘和計算機視覺任務(wù),其中有一個圖表展示了數(shù)據(jù)集中標簽的準確性。
其中展示的原始結(jié)果(上半部分)是在公開的 OpenI 數(shù)據(jù)集上進行測試的,不僅包括報告,也有人工打上的完整標簽。而列表中下面的部分是 ChestX-ray14 自己的數(shù)據(jù)。研究人員隨機選擇了 900 份報告,并由兩位注釋者進行標注,他們共同分類了其中的 14 種疾病。據(jù)我所知,這些注釋者并沒有直接檢查圖像。
數(shù)據(jù)體量的限制會讓誤差變大(如果一個類別中的樣例數(shù)量為 10-30,只有一個錯誤,那么 95% 置信區(qū)間的陽性預(yù)測值會在 75%-88%)。但如果允許一些偏差值,每個標簽看起來準確度都在 85-99%,至少準確反映了報告結(jié)果。
但不幸的是,似乎標簽無法準確地反映病況。NIH 團隊沒有表明他們看過這些圖像,他們通過測試標簽是否匹配報告文本來判斷圖像標注過程的優(yōu)劣。我認為這種分離導(dǎo)致了我所提出的標簽質(zhì)量問題。
有很多方式可以在不需要圖像的情況下構(gòu)建圖像標簽。如 ICD 編碼,或者從報告或其他免費文本中提取標簽;還可以使用增補數(shù)據(jù)(follow-up data)。在深度學(xué)習(xí)中,我們查看訓(xùn)練曲線、檢驗梯度、嘗試在沒有正則化的情況下訓(xùn)練來測試是否產(chǎn)生過擬合。查看這些圖像是放射學(xué)的完整性檢查——查看圖像,確保它們和期望的一樣。
我通常 10 分鐘看完 200 張圖像以完成“完整性檢查”的初級階段。
接下來要說的是一堆基于數(shù)據(jù)集標簽的圖像。它們是隨機選取包含 18 張圖像的序列集。
我的標簽并不完美,其他放射科醫(yī)生可能對其中的一些標簽有疑惑。但是必須明確一點,我的標簽和論文/附錄中的結(jié)果有極大的不同。
我通常喜歡硬數(shù)據(jù),因此我盡力量化標簽準確率。事實上我發(fā)現(xiàn)其中的很多標簽都很難定義,因此下表中未列出。我查看了每個類別中的 130 多張圖像,根據(jù)我的視覺判斷計算原始標簽的準確率。這個數(shù)據(jù)量比較適合使用,因為95%的置信區(qū)間可能再擴大/縮小5%,所以我的誤差率可能達到 20% 左右。
我的視覺分析 vs. 論文中的文本挖掘結(jié)果
我再次懷疑我的標簽到底對不對,尤其是和胸部放射科醫(yī)生的判斷結(jié)果相比,但是如上表所示,差別也太大了。我認為上表中的數(shù)據(jù)證明這些標簽無法匹配圖像中顯示的疾病。
也有辦法解釋這種現(xiàn)象。比如最初幫助解釋圖像的放射科醫(yī)生具備圖像以外的信息。他們具備臨床經(jīng)驗、之前的診療結(jié)果等。這些信息非常有用,尤其是在區(qū)分類似疾病的時候。
如果人類專家無法僅從圖像中做出診斷,那么 AI 系統(tǒng)很可能也無法診斷。AI 可能能夠找出一些人類忽略的細微證據(jù),但是憑借這些就可以產(chǎn)生性能上的巨大差異并不合理??傮w來看,我們需要標簽和圖像包含同樣的信息。
第二部分:標注在醫(yī)學(xué)上意味著什么?
標注實際上代表什么?它們能夠反映臨床實踐嗎?我認為答案是否定的。
我認為最難解析的標簽是固結(jié)/滲透/肺不張/肺炎集聚等。這些醫(yī)學(xué)影像還存在其它問題,與任務(wù)的臨床價值有關(guān),例如滲出(Effusion)、氣胸(Pneumothorax)、纖維化。例如,氣胸在 X 光影像上非常微小,經(jīng)常會被人忽略掉,或者纖維化的標注準確率非常低。實際上還有多種其它非圖像臨床問題,例如:
肺炎、肺氣腫和大多數(shù)纖維化都是臨床診斷問題而不是醫(yī)療影像問題。
X 射線會漏掉多達 50% 的囊腫,因此我們可能會懷疑報告所采用的囊腫標注。
沒有人關(guān)心間斷性疝氣,所以它們只是有時候進行診斷。
找到那些優(yōu)秀的數(shù)據(jù)集或正確的標簽來學(xué)習(xí)高效的醫(yī)療任務(wù)是十分困難的。同樣,我們還是需要專家查看這些影像來進行醫(yī)療診斷。
放射學(xué)的深度學(xué)習(xí)應(yīng)用有一個大問題,如果不查看圖像,后果將非常嚴重。如果這些標簽很不準確,并且標簽的意義也不可靠,那么建立在這個數(shù)據(jù)集上的模型是如何達到不錯結(jié)果的呢?模型學(xué)習(xí)的到底是什么?
實際上,我們在尋找可以學(xué)習(xí)正確地在測試集上輸出真實結(jié)果的模型,即使所謂的真實結(jié)果在視覺上毫無意義。
來自 CheXNet 的結(jié)果:使用深度學(xué)習(xí)模型(Rajpurkar and Irvin et al.)在胸透圖上進行放射專家級的肺炎檢測,在測試集上獲得了不錯的性能。
隨機噪聲可以作為不錯的正則化項,甚至還可以在某些設(shè)置中提升性能(這種技術(shù)被稱為標簽平滑或軟標簽)。結(jié)構(gòu)化噪聲不一樣,它添加了完全不同的信號,而模型將嘗試學(xué)習(xí)這些信號。
在一個包含壞標簽的訓(xùn)練集中,神經(jīng)網(wǎng)絡(luò)將把這些標簽看成同等有效的肺炎樣本。如果模型學(xué)習(xí)了這些標簽,例如,「毛茸茸」是肺炎的一個信號,然后模型將應(yīng)用這個信號到胸透圖中,輸出無法預(yù)測的結(jié)果。
模型將使用部分從狗類圖像中學(xué)習(xí)的特征,并應(yīng)用到胸透圖中,盡管這和問題本身無關(guān)。
如果你的目標是性能最優(yōu)化,那么結(jié)構(gòu)化噪聲總會帶來負面影響。噪聲甚至不需要很明顯(其中的關(guān)系是非線性的),而偏差標簽將降低模型的準確率。
Rolnich 等人《Deep learning is robust to massive label noise》的結(jié)果表明,結(jié)構(gòu)化噪聲破壞了標簽,并使得性能下降。當(dāng)噪聲與實際數(shù)據(jù)來源相同時,這個問題可能更麻煩,因為模型會混淆噪聲與類別。這可以類推到 ChestXray14 數(shù)據(jù)集中,它們的標簽同樣遭到了破壞。
所以,這些標簽會損害模型的性能。那么為什么在 ChestXray14 上訓(xùn)練的模型有非常好的性能?難道是這些模型可以補償數(shù)據(jù)噪聲而變得魯棒性嗎?
我并不這樣認為,我們需要關(guān)注更多的方面。其實在為數(shù)據(jù)集構(gòu)建一組新標簽的過程中,我通過創(chuàng)建一個“opacity”類和一個“no finding”類來簡化涉及的任務(wù)。我用原來的標簽設(shè)置了新創(chuàng)建的標簽,“opacity”是肺不張、肺炎、固結(jié)和滲透標簽的組合,然后在上面訓(xùn)練一個模型。
我只需要采用一個在 ImageNet 預(yù)訓(xùn)練的 ResNet,并在新的數(shù)據(jù)集中訓(xùn)練后部分的網(wǎng)絡(luò)。我并沒有調(diào)整超參數(shù),只是在一個合理的時間里訓(xùn)練模型,最后模型的性能還是比較優(yōu)秀的。
盡管 AUC 是 0.7,但與標簽錯誤率一致,我們的分類性能非常糟糕。該模型無法忽略錯誤的標簽,輸出合理的預(yù)測,它對標簽噪聲不具備魯棒性。最重要的是,AUC 值沒有反映診斷性能,這是一個很大的問題。
這一 AI 系統(tǒng)學(xué)習(xí)可靠地輸出無意義的預(yù)測。它學(xué)習(xí)圖像特征的方式使“opacity”的案例變得幾乎沒有模糊性,而“no opacity”的案例被判斷為嚴重不正常的肺。
這就是問題,因為除非你看了圖像,不然就會以為結(jié)果很棒。每個團隊的模型性能都越來越好,AUC 分越來越高,看起來它們似乎正在“解決”一項嚴肅的醫(yī)療任務(wù)。
我認為其有多個原因;醫(yī)療圖像很大又復(fù)雜,擁有很多普遍元素。但是,自動挖掘標簽的方法沒有引入不準確的隨機噪聲。文本挖掘的編程本質(zhì)會導(dǎo)致持續(xù)、意料之外的數(shù)據(jù)依賴或分層。
同樣,斯坦福大學(xué)皮膚科的 Novoa 博士最近也在媒體上討論過這個問題:
當(dāng)皮膚科醫(yī)生查看一種可能是腫瘤的病變時,他們會借助一把尺子——就是你在小學(xué)時用的那種——來準確測量它的大小。皮膚科醫(yī)生這樣做是為了查看病灶。因此,在一組活檢圖像中,如果圖像中有尺子,算法更可能將其判斷為惡性腫瘤,因為尺子的存在與病癥癌變的可能性相關(guān)。不幸的是,Novoa 強調(diào),該算法不知道為什么這種相關(guān)性是有道理的,所以很容易誤解為一把隨機的尺子是診斷癌癥的根據(jù)。
深度學(xué)習(xí)非常強大,如果給它輸入帶有偏見標簽的復(fù)雜圖像,它可以學(xué)習(xí)對這些類別進行分類,盡管它們毫無意義。你可以完美擬合訓(xùn)練集中的隨機標簽,但這一結(jié)果僅僅表明深層網(wǎng)絡(luò)足夠強大,能夠記憶訓(xùn)練數(shù)據(jù)。他們沒有展示測試數(shù)據(jù)的泛化,相反,他們展示了噪音損害的性能。
我確實在 ChestXray14 數(shù)據(jù)中通過隨機標簽做了一個快速測試(另一個完整性檢查),發(fā)現(xiàn)與 Zhang et al. 的相同結(jié)果;并且該模型沒有泛化到測試集。
結(jié)構(gòu)化噪聲不僅存在于訓(xùn)練數(shù)據(jù)中。整個測試數(shù)據(jù)中的標簽誤差也是一致的。這意味著如果模型學(xué)習(xí)做出不良的醫(yī)療預(yù)測,那也許它可能會獲得更佳的測試表現(xiàn)。這種情況可能僅針對通過自動“數(shù)據(jù)挖掘”方法生成的標簽,但是我也發(fā)現(xiàn)了人工標簽導(dǎo)致放射科數(shù)據(jù)分層的多種方式。
放射學(xué)報告不是客觀的、事實上的圖像描述。放射學(xué)報告的目的是為他們的推薦人(通常是另一位醫(yī)生)提供有用的、可操作的信息。在某些方面,放射科醫(yī)師猜測推薦人想要的是什么信息,并且剔除那些不相關(guān)信息。
這意味著根據(jù)臨床情況、過往歷史以及放射科醫(yī)師是誰,相同圖像的兩份報告可以被貼上不同的“標簽”。影響放射學(xué)報告的因素有很多,所有因素都會給放射學(xué)報告帶來結(jié)構(gòu)性噪音。每個小案例都可能有獨特的可學(xué)習(xí)的圖像特征。
還有很多其他視覺元素可將患者分成幾組,包括圖像質(zhì)量(根據(jù)患者是門診病人、住院病人、重癥監(jiān)護等而不同)、導(dǎo)入裝置如起搏器或心電圖導(dǎo)聯(lián)的存在、身體習(xí)性等等。這些因素都不是“診斷性的”,但它們很可能與標簽有不同程度的相關(guān)性,深層網(wǎng)絡(luò)要找的很可能就是這樣的東西。
醫(yī)學(xué)研究人員長期以來一直在處理臨床數(shù)據(jù)的分層管理。像年齡、性別、收入、飲食這些因素都會導(dǎo)致“隱藏”分層。我們還需要粗略地知道整個群組的視覺外觀分布是相似的,這意味著你需要查看圖像。
以上的問題并不意味著深度學(xué)習(xí)對于醫(yī)學(xué)影像是毫無價值的。深度學(xué)習(xí)最重要的一點是它奏效。雖然我們現(xiàn)在還不明白為什么,但是如果深層網(wǎng)絡(luò)擁有很好的標簽和足夠的數(shù)據(jù),它將優(yōu)先為這些類別學(xué)習(xí)有用的特征,而不是無意義的瑣碎特征。
與人類視覺評估相比,ChestXray14 數(shù)據(jù)集中的標簽不準確、不清楚,并且經(jīng)常描述醫(yī)學(xué)上的次要發(fā)現(xiàn)。
這些標簽問題在數(shù)據(jù)之中是“內(nèi)部一致的”,這意味著模型可以展示“良好的測試集性能”,同時仍然產(chǎn)生不具有醫(yī)學(xué)意義的預(yù)測。
以上問題表明,目前定義的數(shù)據(jù)集不適合訓(xùn)練醫(yī)療系統(tǒng),對數(shù)據(jù)集的研究不能在沒有附加正當(dāng)理由的情況下生成有效的醫(yī)療聲明。
查看圖像是圖像分析的基本的“完整性檢查”。如果你構(gòu)建數(shù)據(jù)集時,沒有能夠理解你數(shù)據(jù)的人在查看圖像,那么期望數(shù)據(jù)集奏效將讓你失望。
醫(yī)學(xué)圖像數(shù)據(jù)充滿分層元素;有用的特征幾乎可以學(xué)到任何東西。查看你的模型是否每一步都照常運行。只要標簽足夠好,深度學(xué)習(xí)就可以在這個數(shù)據(jù)集中工作。
原文鏈接:https://lukeoakdenrayner.wordpress.com/2017/12/18/the-chestxray14-dataset-problems
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。