許葉圣 ,孔鳴 ,謝文加,段潤平 ,方鉦清 ,林宇蕭 ,朱強 ,湯斯亮 ,吳飛 ,*,姚玉峰 ,*
a Department of Ophthalmology, Sir Run Run Shaw Hospital, School of Medicine, Zhejiang University, Hangzhou 310016, China
b College of Computer Science and Technology, Zhejiang University, Hangzhou 31002, China
通常來說,角膜疾病的診斷是由醫(yī)生通過觀察,結(jié)合個人的經(jīng)驗和知識得出的。近年來,使用深度卷積神經(jīng)網(wǎng)絡(luò)(CNN)的深度學習算法在醫(yī)療圖像處理領(lǐng)域大放異彩。疾病分類和診斷算法已在各醫(yī)學成像技術(shù)領(lǐng)域得到了應(yīng)用與驗證,包括計算機斷層掃描(CT)、磁共振成像(MRI)、眼底照相、光學相干斷層掃描(OCT)和病理圖像等[1]。這得益于醫(yī)學成像技術(shù)可以非常自然地導出豐富的圖像數(shù)據(jù),商業(yè)化的醫(yī)學成像技術(shù)對這些醫(yī)學圖像設(shè)定了統(tǒng)一的標準,可以在短時間內(nèi)從單個或多個醫(yī)學中心收集這些圖像。
然而大多數(shù)臨床疾病的診斷并不需要商業(yè)化的醫(yī)學成像技術(shù),因此許多醫(yī)療機構(gòu)在臨床診療中不進行圖像記錄保存,導致這類疾病圖像數(shù)據(jù)的收集主要靠各醫(yī)療中心的歷史積累,但針對這些臨床疾病開發(fā)機器學習診斷系統(tǒng)也同等重要。針對皮膚病變良惡性分類的研究[2]是在非傳統(tǒng)醫(yī)療圖像領(lǐng)域的一次成功嘗試。角膜疾病分類也可以效仿這種方式。角膜病是世界上最常見的致盲原因之一[3,4]。保守估計,世界上約有450萬人因罹患角膜病導致角膜混濁,從而蒙受中到重度的視力損傷[4]。感染性角膜炎是最常見的角膜病[5]。正常的角膜擁有獨有的透明性,感染性角膜炎最顯著的特點是病原體在角膜內(nèi)生長,導致角膜局灶性團塊混濁和粗糙,不可避免地使每種病原微生物在組織內(nèi)生長并呈現(xiàn)獨特的特點[6]。感染性角膜炎的診斷主要取決于眼科醫(yī)生對角膜感染性病變視覺特征的鑒別。臨床上,眼科醫(yī)生通常依靠裂隙燈顯微鏡來觀察角膜是否異常。除了用作觀察工具外,裂隙燈顯微鏡還可以用于拍攝照片并同時記錄每位患者的角膜狀態(tài),從而有助于開發(fā)出具有優(yōu)質(zhì)標注的人工智能(AI)數(shù)據(jù)集,為感染性角膜炎的識別和分析打下基礎(chǔ)。
從1998年開始,我們積累了一個大型且擁有正確標注的裂隙燈顯微圖像數(shù)據(jù)集,該數(shù)據(jù)集來自10 609名角膜疾病患者,總共115 408張圖像?;谶@個數(shù)據(jù)集我們設(shè)計出一種基于深度學習的方法,以端到端的方式進行感染性角膜炎的診斷。為了直觀地模擬眼科醫(yī)生診斷感染性角膜炎的方式,我們提出了一種特征學習機制,通過學習序列特征來識別不同的視覺模式,其中蘊含著豐富的視覺信息。對于一張臨床圖像,從感染病灶區(qū)域的中心到邊緣的樣本子塊被重新排列,組成一個序列有序集(SOS),并輸入神經(jīng)網(wǎng)絡(luò)進行特征學習。我們提出的序列特征學習機制可以利用感染性病變區(qū)域子塊之間的空間關(guān)系,并且可以分離出數(shù)據(jù)樣本中蘊含的值得探索的差異性因素。此外,該數(shù)據(jù)集提供了一個潛在的策略以實現(xiàn)更可靠、有效、準確的診斷。使用該數(shù)據(jù)集對我們的模型進行評估,獲得了比400名眼科醫(yī)生更高的診斷準確率。
多年來,電子病歷(EMR)積累了大量的醫(yī)學數(shù)據(jù),這使研究人員從中發(fā)現(xiàn)了許多隱藏知識。 數(shù)據(jù)挖掘方法被廣泛應(yīng)用于醫(yī)學數(shù)據(jù),以發(fā)現(xiàn)隱藏的知識,并利用提取的知識來輔助各種有害疾病的預(yù)測、診斷和治療。
疾病預(yù)測對于預(yù)防疾病的發(fā)生和減少疾病的損傷具有重要意義。Yang等[7]使用患者的健康記錄來預(yù)測糖尿病潛在并發(fā)癥,同時發(fā)現(xiàn)了并發(fā)癥與實驗室類型之間的隱含關(guān)系。He等[8]使用EMR數(shù)據(jù)集預(yù)測肺癌術(shù)后并發(fā)癥,并同時從數(shù)據(jù)集中提取關(guān)鍵變量。
具有預(yù)測診斷標簽和藥物信息的EMR可幫助自動助理預(yù)測疾病診斷并為醫(yī)生提供快速診斷參考。Nee等[9]使用大型EMR文本數(shù)據(jù)集對每種疾病的EMR上下文進行建模,并在EMR中執(zhí)行準確的疾病診斷預(yù)測。Wright等[10]使用數(shù)據(jù)挖掘方法從醫(yī)學數(shù)據(jù)集中獲取有用的關(guān)系和規(guī)則集,以預(yù)測接下來要開哪些藥。
傳統(tǒng)的醫(yī)學圖像使用手工構(gòu)造特征,通過淺模型進行分類與分割。Scott等[11]在2003年使用梯度取向、拐角和邊緣強度檢測雙能量X射線圖像中的椎骨。此外,區(qū)域劃分和合并也是基于區(qū)域的方法中的較為知名的技術(shù)。Manousakas等[12]應(yīng)用區(qū)域劃分和合并技術(shù),試圖克服在MRI中使用均勻性測量時遇到的困難。Zhao等[13]介紹了形態(tài)學的基本數(shù)學理論和操作,并提出了一種新穎的形態(tài)學邊緣檢測方法,以區(qū)分帶有椒鹽噪聲的CT圖像中的肺部邊緣。實驗結(jié)果表明,與2006年最佳邊緣檢測方法相比,該方法在醫(yī)學圖像降噪和邊緣檢測方面均更有效。除此之外,K-means聚類也曾被Kaus等[14]應(yīng)用在心臟MRI中進行自動左心室的分割。Cordes等[15]通過使用分層聚類來衡量MRI的連通性,該方法可以檢測到低頻波動的相似性,結(jié)果表明,類似于已知神經(jīng)元連接的層次聚類能夠檢測心臟連通模式。2006年,Pohl等[16]提出了一種將有符號距離圖嵌入線性對數(shù)優(yōu)勢空間的方法,可以解決建模問題。上述方法專注于區(qū)域、邊緣和聚類等簡單手段,所以它們在現(xiàn)實世界數(shù)據(jù)上往往性能有限[17]。
在計算機輔助診斷中,深度學習現(xiàn)已廣泛用于醫(yī)學圖像識別[18,19]。深度學習的基本結(jié)構(gòu)是CNN,它的結(jié)構(gòu)有三層,即卷積層、池化層和全連接層。為了開發(fā)基于CNN的強大AI算法,我們通常需要大量帶標注的數(shù)據(jù)。
醫(yī)學圖像的標準化收集并不像收集一般自然圖像那樣容易。但是,如今幾個公共醫(yī)學圖像數(shù)據(jù)庫和多中心數(shù)據(jù)收集可以幫助解決該問題。某些類型的醫(yī)學圖像數(shù)據(jù)可以被大量收集,如X射線圖像、CT、心電圖和病理圖像。通過使用這些大數(shù)據(jù),基于CNN的AI算法可以對CT圖像進行解剖結(jié)構(gòu)分割[20],對胸部X射線圖像正?;虍惓=Y(jié)果進行分類[21],對肺癌或乳腺癌進行篩查[22,23],檢測出顱腦CT掃描中的危險情況[24],使用基于生成對抗網(wǎng)絡(luò)(GAN)的模型對肝臟病變進行分類[25],進行心臟病篩查[26,27],以及在病理圖像中探測淋巴結(jié)轉(zhuǎn)移等[27,28]。
在眼科領(lǐng)域,由于眼底照相和OCT圖像易于收集,因此基于CNN的AI算法主要應(yīng)用領(lǐng)域是探查視網(wǎng)膜疾病,如糖尿病性視網(wǎng)膜病變、年齡相關(guān)性黃斑變性和青光眼[29-31]。
當前,人工智能輔助的醫(yī)學診斷系統(tǒng)主要應(yīng)用于醫(yī)學成像領(lǐng)域。如果疾病的診斷需要依賴自然觀察,則其主要取決于醫(yī)生的個人經(jīng)驗。皮膚病損是一個例子,當前的AI算法可以將數(shù)碼皮膚照片中的惡性黑色素瘤與良性病變區(qū)分開[2]。角膜病也是一個例子,眼科醫(yī)生可以使用裂隙燈顯微鏡來獲得正確的診斷,但迄今為止,還沒有有關(guān)利用AI來提高角膜病的診斷準確性的研究。
經(jīng)機構(gòu)倫理委員會批準,此研究的圖像數(shù)據(jù)集包括了1998年5月至2018年在浙江大學醫(yī)學院附屬邵逸夫醫(yī)院眼科通過裂隙燈顯微鏡獲得的115 408張臨床數(shù)字圖像,這些圖像來自10 609例89種角膜病患者。臨床圖像由兩種類型的裂隙燈顯微鏡拍攝,即蔡司裂隙燈顯微鏡SL 130(德國卡爾·蔡司公司),集成了SL Cam for Imaging模塊,每個圖像的分辨率為1024×768像素;以及附帶數(shù)碼相機Unit DC-1的Topcon裂隙燈顯微鏡(日本拓普康公司),其圖像分辨率為1740×1536像素或2048×1536像素。
在數(shù)據(jù)集中,拍攝的活躍期角膜感染的圖像,包括細菌性角膜炎(BK)、真菌性角膜炎(FK)和單純皰疹病毒基質(zhì)性角膜炎(HSK)的圖像,被選擇用于算法分類的訓練或測試集。來自角膜感染患者的所有圖像均帶有明確的臨床診斷標注,至少有以下證據(jù)中的兩種:①角膜感染的臨床表現(xiàn)如圖1(a)所示。②通過相關(guān)的診斷性單藥或聯(lián)合藥物治療,影響和終止了角膜感染的進展,從而最終治愈。③感染部位樣本的病原體鑒定:在細菌和真菌感染中,通過顯微鏡檢查涂片或生物培養(yǎng)確認病原診斷;在病毒感染中,通過聚合酶鏈反應(yīng)(PCR)評估淚液或角膜刮片組織樣本進行病原診斷。除了角膜感染的類別外,患有具有相似視覺特征的其他角膜病患者的圖像被歸類為“其他”類別。此類別包括各種角膜變性、泡性角結(jié)膜炎、各種角膜腫瘤、角膜乳頭狀瘤、角膜退行性變,甚至還包括棘阿米巴角膜炎。每個類別的代表性圖像如圖1(a)所示。
最終數(shù)據(jù)集包含來自867例患者的2284幅圖像。訓練集包括來自747例患者的387張隨機選擇的BK圖像、519張FK圖像、488張HSK圖像和528張其他角膜病圖像。測試集由120例患者隨機選擇的86張BK圖像、97張FK圖像、51張HSK圖像和128張其他診斷圖像組成。為了評估眼科醫(yī)生的疾病分類表現(xiàn),選擇測試集中每位患者的首次診斷圖像以構(gòu)建評估眼科醫(yī)生診斷水平的數(shù)據(jù)集(即總共使用了120張圖像來評估眼科醫(yī)生的表現(xiàn))。
圖1. 典型裂隙燈顯微圖像與我們提出的四類角膜疾病的SOS模型中嵌入特征的t-分布隨機鄰域嵌入(t-SNE)的表示可視化。(a)細菌性角膜炎(BK)、真菌性角膜炎(FK)、單純皰疹病毒基質(zhì)性角膜炎(HSK)和其他角膜炎(上述三類角膜疾病之外的角膜炎)的典型裂隙燈顯微圖像。不同類別的疾病或同一類別疾病的不同階段表現(xiàn)出不同的視覺特征。(b)SOS模型通過t-SNE嵌入每種疾病類別的二維空間獲得的深度序列特征。t-SNE用于可視化高維數(shù)據(jù),這些數(shù)據(jù)是經(jīng)過診斷驗證的攝影測試集的SOS模型中的特征表示(362幅圖像)。彩色的點云代表疾病的不同類別,顯示了算法如何將疾病分組為不同的簇。插圖顯示了與各個點相對應(yīng)的圖像。
如前所述,我們發(fā)明了一種使用圖像序列特征的感染性角膜炎分類模型訓練方法。為了展示我們提出的這一方法的優(yōu)勢,我們將其與另兩類方法——基于完整圖像特征的學習方法和基于圖像子塊特征的方法——進行了對比。
基于完整圖像特征的深度學習模型接收原始的無標注疾病圖像,直接由CNN進行分類。為解決訓練圖像有限的問題,我們采用了遷移學習的方法[32,33]。在實驗中,我們選擇了如下三種經(jīng)典的圖像分類模型結(jié)構(gòu):VGG-16(由英國牛津大學計算幾何小組提出)[34]、GoogleLeNet-v3(由谷歌公司修改的LeNet模型的第三個版本)[35]以及稠密卷積網(wǎng)絡(luò)(DenseNet)[36]。
在基于圖像子塊特征深度學習模型當中,眼前節(jié)圖像由手工進行初步標注,分割出四塊:角膜感染病灶區(qū)、角膜感染灶旁區(qū)、結(jié)膜充血區(qū)和前房積膿區(qū)。在該類方法中我們同樣使用了三種遷移模型結(jié)構(gòu),即VGG-16、GoogleLeNet-v3和DenseNet。在對圖像的每個子塊完成分類后,通過多數(shù)投票的方法給出整張疾病圖像的分類結(jié)果。
在基于序列的深度學習模型中,對于每張圖片,如果其中存在病變區(qū)域,模型的關(guān)注點就會被設(shè)置在病變區(qū)域上。病變區(qū)的最小外接圓被進一步劃分為由小到大的K個圓環(huán),如圖2所示。落在由內(nèi)到外的第i個圓環(huán)上的所有圖像子塊組成一個子塊集合Si,所有集合組成一個由內(nèi)而外的序列{S1,S2, ...,SK}。為解決標注數(shù)據(jù)不足的問題,在訓練階段,我們通過隨機失活機制來隨機剔除每個集合中的一些元素,這樣我們能夠獲得更多的序列來擴大訓練集多樣性,使得模型的訓練更加穩(wěn)定。
圖2. 采樣以及如何將病變區(qū)域分成K個集合。圓圈代表每個集合的邊界,正方形代表采樣區(qū)域。要注意的是為避免圖片過度重疊,僅顯示了一半的采樣區(qū)域。
我們利用一個深層的殘差CNN(如DenseNet),通過編碼器-解碼器框架[37-39]來提取每個集合中的每個子塊的表征。卷積編碼器能夠?qū)⒌趇個集合中的第j個子塊pij轉(zhuǎn)化為一個能夠表示其性質(zhì)的表征向量fij,得到圖像子塊的表征的集合{F1,F2, ...,FK}。對每個集合Fi,通過最大池化計算獲得整個子塊集合的表征f′i,表示每個集合的整體性質(zhì)。由于病變區(qū)由內(nèi)到外的子塊集合構(gòu)成了一個序列,我們可以使用長短時記憶(long short-term memory, LSTM)模型[37]——一種經(jīng)典的序列學習模型,來將表征序列{f′1,f′2, ...,f′K}轉(zhuǎn)化為最終用于分類的表征。最終的圖像特征可以通過一個全連接層解碼,通過softmax計算得到每個疾病類別的分類概率。圖1(b)展示了每種疾病的圖像表征在二維空間上的分布。圖3展示了整個系統(tǒng)的結(jié)構(gòu)。經(jīng)由獲得的概率分布與真實標簽的損失函數(shù),通過反向傳播精調(diào)模型參數(shù)[40,41]。
我們從全國各地招募眼科醫(yī)生,測試他們基于圖像進行診斷的能力,并將其與已開發(fā)的深度學習方法進行比較。呈現(xiàn)給眼科醫(yī)生的圖像和測試集中每位患者的經(jīng)過診斷驗證的圖像都是從初次就診時隨機選擇的(即總共120張圖像)。所招募的眼科醫(yī)生具有不同的學術(shù)頭銜(從住院醫(yī)生到高年資醫(yī)生,甚至到醫(yī)學院的臨床教授)、工作機構(gòu)(從大學醫(yī)學院的教學醫(yī)院到公立市級醫(yī)院再到社區(qū)診所)和專業(yè)經(jīng)驗(分為1~5年、6~10年、11~15年、16~20年以及20年以上)。我們總共招募了421名眼科醫(yī)生。
圖3. 病變區(qū)域進行深度序列特征學習的過程。對于每張裂隙燈顯微圖像,病變區(qū)域外接圓被劃分為K個圓環(huán)(直觀起見,此處K = 3)。我們從每個圓環(huán)(從最內(nèi)層到最外層)上采樣,采樣的區(qū)域用于生成集合序列。隨后通過最大池化和長短期記憶(LSTM)模型進行序列特征學習。f:采樣區(qū)域的特征;f’:集合的序列特征。
眼科醫(yī)生手動檢視圖像從而進行基于圖像的診斷,主要遵循兩步流程。第一步,眼科醫(yī)生僅依靠圖像進行診斷,將來自測試集中每位患者的首次診斷圖像中的四類角膜病圖像,即BK、FK、HSK和其他角膜病的圖像提供給眼科醫(yī)生,眼科醫(yī)生通過手動選擇為每個圖像做出診斷。第二步,為眼科醫(yī)生提供與每個圖像相關(guān)的其他標準化和結(jié)構(gòu)化的醫(yī)學信息,包括簡短的病史、起病時間、疼痛程度和復(fù)發(fā)情況(如果有)以及藥物使用史。第三步,要求眼科醫(yī)生通過手動檢視并考慮其他醫(yī)學信息,對每個圖像做出診斷決定。所有眼科醫(yī)生均獨立執(zhí)行此程序,沒有時間限制。
鑒于不同的學術(shù)頭銜、工作機構(gòu)和專業(yè)經(jīng)驗導致的置信度不同,使用社會科學統(tǒng)計軟件包(SPSS 18.0版;美國Cary公司)對眼科醫(yī)生的診斷數(shù)據(jù)進行統(tǒng)計分析。眼科醫(yī)生診斷準確度的平均水平以(均值±標準差)%表示。使用Kolmogorov-Smirnov檢驗驗證數(shù)據(jù)的正態(tài)性。根據(jù)數(shù)據(jù)正態(tài)性,使用單因素方差分析(ANOVA)分析了不同醫(yī)院級別和職稱組之間的診斷準確性差異。最小顯著差異法用于參數(shù)變量的事后分析。使用皮爾遜相關(guān)系數(shù)測試了診斷準確性和專業(yè)經(jīng)驗?zāi)曩Y之間的相關(guān)性。采用逐步法進行多元線性回歸分析,從學術(shù)頭銜、醫(yī)院層級和專業(yè)經(jīng)驗?zāi)曩Y等方面分析了統(tǒng)計學因素的影響。進行了配對t檢驗(針對正態(tài)分布的變量)和Wilcoxon符號秩檢驗(針對非正態(tài)分布的變量),以確定在有無附加醫(yī)學信息的情況下,醫(yī)生在診斷準確性上是否存在顯著差異。所有檢驗的顯著性水平設(shè)置為0.05。
完整圖像疾病的深度模型目前在醫(yī)學圖像診斷任務(wù)中非常流行,此類方法直接將原始醫(yī)學圖像交由CNN處理。我們的工作中選擇了VGG-16、GoogleLeNet-v3和DenseNet三種經(jīng)典模型結(jié)構(gòu),并對比了其對BK、FK、HSK的診斷準確率,如表1所示??紤]到直接將完整圖像傳入CNN可能會含有一些無關(guān)的信息,我們進一步基于這三種結(jié)構(gòu)設(shè)計了基于圖像子塊的模型[42,43]。在基于圖像子塊的模型中,圖像包含由人工標注的角膜感染病灶區(qū)、角膜感染灶旁區(qū)、結(jié)膜充血區(qū)和前房積膿區(qū)等區(qū)域信息,我們并不傳入完整的原始圖像,而是使用包含這些區(qū)域的圖像子塊進行分類。三種基于子塊的模型對每個子塊的識別準確率分別能夠達到49.62%、51.52%和60%。在每個圖像子塊分類后,通過多數(shù)投票的方法給出整張圖像的診斷結(jié)果?;趫D像子塊的模型對圖像的分類準確率分別可以達到52.50%、55.52%和66.30%,如表1所示。
最后,我們使用基于圖像序列特征的模型,該方法能夠保持醫(yī)學圖像中潛在的空間結(jié)構(gòu)信息。如前所述,子塊集合序列的表征是通過由內(nèi)而外的順序排列獲得的(即SOS),使用SOS提取特征能達到78.73%的分類準確率。除了產(chǎn)生集合序列外,我們還生成了隨機排序的子塊(ROP)和順序排列的子塊(SOP)來獲得特征序列。ROP通過隨機選擇產(chǎn)生子塊序列,而SOP按照從內(nèi)到外的順序采樣序列(但是沒有將屬于同一圓環(huán)的子塊聚成一個集合)。實驗結(jié)果表面,ROP方法能夠達到74.23%的準確率(BK 75.29%、FK 68.04%、HSK 82.35%)。SOP方法達到75.14%的準確率。這些實驗結(jié)果表明我們基于序列的深度學習模型在基于圖像的角膜病分類診斷任務(wù)上能獲得最好的表現(xiàn)。
表1 不同深度模型在測試集上的診斷能力對比
我們使用數(shù)據(jù)集評估了本文中考慮的所有算法,以比較每種算法與眼科醫(yī)生的表現(xiàn)。表2列出了所有算法的準確性以及該數(shù)據(jù)集(120幅圖像)上眼科醫(yī)生的平均表現(xiàn)。表3列出了眼科醫(yī)生在臨床圖像診斷中的表現(xiàn)。從全國各地共招募421名眼科醫(yī)生參加這項研究。在沒有參考任何額外醫(yī)療信息的眼科醫(yī)生的平均準確度為(49.27 ± 11.5)%(范圍:20.00%~86.67%),遠低于AI深度學習模型所獲得的準確性。例如,SOS算法的診斷準確度達到80.00%,其中BK、FK和HSK的準確度分別為53.33%、83.33%和93.33%(表2)。圖4描繪了受試者工作特征(ROC)曲線、SOS模型的混淆矩陣以及眼科醫(yī)生的表現(xiàn)。ROC曲線是分類模型的一種可視化。曲線下的面積(AUC)是性能的衡量,最大值為1。如果眼科醫(yī)生的敏感度-特異性點位于分類模型的曲線下方,則該模型可達到優(yōu)于眼科醫(yī)生的性能。
表2 在樣本量為120的測試集上眼科醫(yī)生與深度模型的對比
表3 根據(jù)醫(yī)院級別、工作年限和眼科醫(yī)生的專業(yè)職稱的平均分類準確率
對于工作地點對眼科醫(yī)生診斷水平的影響,教學醫(yī)院的眼科醫(yī)生的表現(xiàn)比市級醫(yī)院和社區(qū)診所的要好(P< 0.001),而市級醫(yī)院和社區(qū)診所之間沒有統(tǒng)計差異(P= 0.226)。專業(yè)級別較高的眼科醫(yī)生在診斷臨床圖像時具有更高的準確性,如高級職稱和中級職稱醫(yī)師的表現(xiàn)優(yōu)于住院醫(yī)師(分別為P< 0.001和P= 0.003),但高級職稱和中級職稱之間差異無統(tǒng)計學意義(P= 0.071)。在執(zhí)業(yè)年資和診斷準確性之間未發(fā)現(xiàn)顯著相關(guān)性(P=0.084)。
綜合考慮醫(yī)院等級和醫(yī)生等級的因素,教學醫(yī)院的高級職稱眼科醫(yī)生的表現(xiàn)[準確性為(57.08 ± 12.02)%,范圍:33.33%~86.67%]好于社區(qū)診所的住院醫(yī)生[準確性為(41.99 ± 10.51)%,范圍:22.50%~63.33%]。逐步多元回歸分析得出影響診斷準確性的三個模型。模型1(R2= 0.062)僅具有醫(yī)院水平的因素(β= 0.254,P<0.001);模型2(R2= 0.100)具有醫(yī)院水平(β= 0.239,P< 0.001)和專業(yè)職稱(β= 0.200,P< 0.001)的因素;模型3(R2= 0.109)具有所有三個因素:醫(yī)院水平(β= 0.227,P< 0.001)、專業(yè)職稱(β= 0.326,P< 0.001)和工作年限(β= ?0.164,P= 0.024)。
當進一步為眼科醫(yī)生提供每張圖像的附加醫(yī)學信息時,包括簡短的病史、發(fā)病時間、疼痛程度和復(fù)發(fā)發(fā)作(如果有)以及用藥史,平均總診斷準確性從49.27%提高到57.16%,差異具有統(tǒng)計學意義(Wilcoxon符號秩檢驗,P< 0.001)。詳細而言,附加醫(yī)學信息后,BK的診斷準確性從46.55%提高到55.55%(P< 0.001),F(xiàn)K從45.56%提高到56.28%(P< 0.001),HSK從65.01%提高到73.25%(P< 0.001),404名醫(yī)生的平均總準確性提高了8.28%,9名醫(yī)生的準確性下降了2.13%,其他8名醫(yī)生的準確性保持不變。
圖4. SOS模型與眼科醫(yī)生表現(xiàn)的ROC曲線及混淆矩陣對比圖。(a)SOS模型的ROC曲線;(b)、(c)在用于診斷水平測試的數(shù)據(jù)集上眼科醫(yī)生與SOS模型的混淆矩陣;(d)~(f)對應(yīng)的BK、FK與HSK等各子類的ROC曲線。
一般而言,人類通過視覺、聽覺、觸覺、味覺和嗅覺對事物進行判斷,并以此對事物進行適當?shù)姆诸怺44]。其中視覺感知發(fā)揮著最重要的作用[45],視覺知識可以描述空間形狀、大小和相關(guān)性以及顏色和紋理之間的關(guān)系[46]。醫(yī)生對疾病的診斷主要依靠觀察和推理。在所有人類疾病中,角膜病具有最直接、最顯著的視覺感知變化;因為健康角膜具有完全透明的獨特特征,這與病理狀況下角膜內(nèi)外圖像的變化形成鮮明對比。人類專家通過對圖像的理解和分析來進行角膜病的診斷決策,這可能是AI輔助人類最合適的任務(wù)。
一般而言,深度學習是由大量帶標注的數(shù)據(jù)驅(qū)動的[47,48]。然而,尚不清楚有多少臨床圖像訓練數(shù)據(jù)足以被開發(fā)用于診斷臨床疾病的AI系統(tǒng)。我們中心收集和記錄具有臨床圖像的角膜病例已有20余年,但是,如果按照每種疾病類別對所有圖像進行標注,那么在最常見的疾病類別中可以有數(shù)千張臨床圖像,而某些罕見疾病類別中只有少數(shù)臨床圖像。每個角膜病類別中帶標注數(shù)據(jù)的不平衡性導致我們將注意力集中在最常見的疾?。ㄈ绺腥拘越悄げ。┥?,以初步開發(fā)本研究中的AI診斷系統(tǒng)。
在本研究中,我們證明了通過裂隙燈顯微鏡拍攝的臨床圖像,通過CNN進行的深度學習可以用于角膜感染性疾病的臨床診斷。我們共評估了3組9種深度學習架構(gòu),以開發(fā)用于角膜感染性疾病的圖像診斷系統(tǒng)。從圖像級別和圖像子塊級別模型的結(jié)果可以看出,盡管只有4個類別,但這仍是一個困難的任務(wù),尤其是對于VGG-16和GoogLeNet-v3。這兩種結(jié)構(gòu)在圖像子塊分類中均表現(xiàn)不佳,圖像子塊之間的投票并未顯著改善其性能。相比之下,DenseNet的圖像子塊分類達到60%,投票后達到66.3%。研究表明,如果模型在圖像子塊分類中表現(xiàn)得足夠好,那么從感染性病變區(qū)域著眼于圖像子塊可以產(chǎn)生比著眼于圖片整體更高的性能。ROP方法可被視為除表決之外組合圖像子塊特征的另一種方法。結(jié)果表明,即使沒有空間信息,采用適當?shù)慕M合方法也可以進一步改善圖像子塊級模型。我們發(fā)現(xiàn),總體而言SOS是用于角膜病中僅依賴圖像進行診斷的最有前景的方法。SOS比其他方法更好的一個可能原因是在這種深度學習模型中,直接實現(xiàn)了對臨床圖像空間結(jié)構(gòu)的適當利用。SOP表現(xiàn)不佳,是因為它沒有考慮病變區(qū)域的環(huán)形結(jié)構(gòu)。據(jù)我們所知,本研究首次提出了一種角膜病分類深度學習模型,該模型在僅依靠圖像進行診斷時比人類眼科醫(yī)生具有更高的準確性。在本研究中,一般眼科醫(yī)生在僅依賴圖像的角膜病診斷中的表現(xiàn)要比AI系統(tǒng)差。毫無疑問,錯誤的診斷可能造成長期使用不適當?shù)乃幬?,導致識別特征變得更為模糊,使醫(yī)生診斷更加困難[6]。我們研究中的多元回歸分析表明,就職稱、工作機構(gòu)和年資而言,這3個統(tǒng)計學因素對診斷性能會有影響,但3個模型中的確定系數(shù)較低。這表明上述因素可能無法如實全面地決定眼科醫(yī)生對角膜病的診斷準確性,或者影響診斷性能的因素可能非常復(fù)雜,無法通過上述3個因素簡單地準確總結(jié)。因此,如果AI可以幫助臨床醫(yī)生以更高的診斷準確性顯著提高臨床能力,那么這將極大地使角膜病患者受益,同時節(jié)省了醫(yī)療資源并減輕社會負擔。目前全世界仍有450萬人正遭受由角膜病引起角膜混濁導致的中度至重度視力障礙,特別是在發(fā)展中國家。提高診斷準確性可有兩種途徑,一是完善醫(yī)師培訓體系,加強醫(yī)師專業(yè)教育和培訓;另一種即開發(fā)實用的AI系統(tǒng)以協(xié)助診斷。我們的研究表明,通過使用臨床圖像來開發(fā)AI系統(tǒng)以提高角膜病診斷準確性是切實可行的。在測試眼科醫(yī)生的表現(xiàn)時,我們發(fā)現(xiàn)當向醫(yī)生提供圖像和病史時,診斷準確性比單純提供圖像有所提高(從49.27%增至57.16%,P< 0.001)。該結(jié)果表明,其他信息可以幫助進一步提高診斷表現(xiàn),AI診斷系統(tǒng)也可能如此。研究表明,將數(shù)據(jù)驅(qū)動的機器學習與人類知識相結(jié)合可以有效地開發(fā)出可解釋、強大且通用的AI [49];諸如病史之類的信息可能包含類似于人的常識,可以使模型利用有限的訓練數(shù)據(jù)來解決許多不同的任務(wù)。為了改善我們的AI診斷系統(tǒng)以提高準確性,在未來的工作中可能需要設(shè)計一種多模態(tài)學習模型(即視覺和非視覺信息的有效組合),或是一個更合適的序列學習模型。
不可否認的是,在現(xiàn)階段我們的AI診斷準確性只能由我們所收集的有限圖像數(shù)據(jù)來證實[50],并通過與使用相同臨床圖像的眼科醫(yī)生進行對比。這種AI系統(tǒng)在輔助醫(yī)生臨床實踐中的實際應(yīng)用,需要在將來進行更大規(guī)模的深入臨床評估[51]。
傳染性角膜炎是最常見的眼科疾病,可能導致失明。眼科醫(yī)生通過觀察裂隙燈圖像診斷疾病,利用計算機輔助圖像分析算法方便診斷。在這項工作中,我們提出了一個序列水平的深部模型,端到端診斷傳染性角膜炎。具體地說,利用深度卷積網(wǎng)絡(luò)良好的特征提取性能,首先提取角膜區(qū)域的細節(jié)模式,然后將局部特征分成符合空間結(jié)構(gòu)的有序集合,學習角膜圖像的全局表示并進行診斷。我們收集了超過10 000名患者的110 000張圖像。在此基礎(chǔ)上,充分的實驗對比結(jié)果表明,該模型是一種更為可行的結(jié)構(gòu),比傳統(tǒng)的CNN具有更好的診斷性能。另外,通過與400多位專業(yè)眼科醫(yī)生的診斷結(jié)果進行對比發(fā)現(xiàn),我們的模式可以大大超過專業(yè)人士的平均水平,達到頂級眼科醫(yī)生的水平表現(xiàn)。據(jù)我們所知,這是第一個關(guān)于感染性角膜炎診斷的研究,我們的研究有力地證明了使用人工智能進行這些類型疾病的臨床輔助診斷的潛力。
致謝
本研究得到了浙江省衛(wèi)生健康委員會(WKJZJ-1905、2018ZD007)、浙江省重點研究開發(fā)項目(2018C03082)和國家自然科學基金(61625107)的支持。感謝張仲非教授的意見和建議。
Compliance with ethics guidelines
Yesheng Xu, Ming Kong, Wenjia Xie, Runping Duan,Zhengqing Fang, Yuxiao Lin, Qiang Zhu, Siliang Tang, Fei Wu, and Yu-Feng Yao declare that they have no conflict of interest or financial conflicts to disclose.