崔浩陽(yáng),丁 偕,張敬誼
萬(wàn)達(dá)信息股份有限公司 數(shù)據(jù)智能部,上海201112
隨著深度學(xué)習(xí)模型、優(yōu)化算法以及高性能GPU 的出現(xiàn),使得組織病理學(xué)中的計(jì)算機(jī)輔助診斷研究得到了快速發(fā)展。具體而言是利用深度卷積神經(jīng)網(wǎng)絡(luò)(CNN)實(shí)現(xiàn)對(duì)組織病理切片圖像的細(xì)胞分割、腺體分割、癌癥分級(jí)、突變鑒定以及預(yù)測(cè)癌癥復(fù)發(fā)等任務(wù)[1-2]。CNN 用于各種任務(wù)并取得一定表現(xiàn)主要取決于從圖像數(shù)據(jù)中自動(dòng)挖掘高維特征的能力,并不依賴于人工創(chuàng)建的組織學(xué)特征。Campanella 等[3]將前列腺穿刺切片作為數(shù)據(jù)集,進(jìn)行訓(xùn)練并測(cè)試CNN 模型鑒別前列腺病灶良惡性。2018年Coudray等[4]利用TCGA數(shù)據(jù)庫(kù)中有關(guān)肺癌的樣本,訓(xùn)練測(cè)試CNN模型鑒別腺癌、鱗癌以及識(shí)別基因突變的準(zhǔn)確率,取得了肺腺癌、鱗癌AUC 為0.97,基因突變的AUC為0.85的結(jié)果。此外,在2015年11月至2016 年11 月舉行的CAMELYON16 大賽[5],進(jìn)一步推動(dòng)了深度卷積網(wǎng)絡(luò)在病理圖像識(shí)別領(lǐng)域的發(fā)展。但由于病理醫(yī)生的診斷依據(jù)主要是根據(jù)病理圖像中異常細(xì)胞的形態(tài)、結(jié)構(gòu)以及空間分布等因素給出最終的病理分析結(jié)果。而傳統(tǒng)CNN處理的源數(shù)據(jù)是具有像素值的結(jié)構(gòu)化二維陣列圖像,這種結(jié)構(gòu)化的二維陣列數(shù)據(jù)形式難以表達(dá)組織病理學(xué)中細(xì)胞之間以及腺體之間的關(guān)系和組織學(xué)特征,也忽略了微觀細(xì)胞之間的空間關(guān)系,因此可能會(huì)丟失提高模型性能的一些關(guān)鍵特征信息。
本文引入基于細(xì)胞的圖結(jié)構(gòu),利用細(xì)胞之間的拓?fù)浣Y(jié)構(gòu)對(duì)組織病理圖像進(jìn)行幾何結(jié)構(gòu)建模[6],使模型學(xué)習(xí)到細(xì)胞本身特征的同時(shí),還學(xué)習(xí)到細(xì)胞之間的空間關(guān)系特征。提出了圖卷積神經(jīng)網(wǎng)絡(luò)的病理圖像癌癥分類方法,通過(guò)提取病理圖中微觀細(xì)胞作為圖結(jié)構(gòu)中的節(jié)點(diǎn),把細(xì)胞之間的空間關(guān)系視為圖結(jié)構(gòu)中的邊。為了準(zhǔn)確獲得節(jié)點(diǎn)的特征信息,本文應(yīng)用了細(xì)胞分割網(wǎng)絡(luò),利用分割出的細(xì)胞提取其外觀特征。為了使節(jié)點(diǎn)融合多尺度信息,引入了GraphSAGE模塊作為圖卷積模塊,由于組織學(xué)圖像中的細(xì)胞數(shù)量眾多,構(gòu)建出的細(xì)胞圖結(jié)構(gòu)會(huì)存在大量的冗余節(jié)點(diǎn),因此,本文將分層池化和全局池化結(jié)合,最終獲得具有代表性的節(jié)點(diǎn)特征作為圖結(jié)構(gòu)的表達(dá)。
圖神經(jīng)網(wǎng)絡(luò)的表示法最早由Gori 等人[7]在2005 年提出,并在2009年由Scarselli等人[8]進(jìn)行了進(jìn)一步闡述,這些早期的研究通過(guò)迭代的方式,利用循環(huán)神經(jīng)結(jié)構(gòu)傳播鄰居信息,直到達(dá)到一個(gè)穩(wěn)定的不動(dòng)點(diǎn),來(lái)學(xué)習(xí)節(jié)點(diǎn)的表示,在此過(guò)程中計(jì)算代價(jià)大。在受到CNN 在計(jì)算機(jī)視覺(jué)領(lǐng)域的啟發(fā)后,為了減少計(jì)算量,利用卷積的概念重新定義了卷積算子,提出了多種圖卷積神經(jīng)網(wǎng)絡(luò)(GCN)[9],其中主要分為基于頻譜的GCN[10-12]和基于空域的GCN[8,13]。頻譜的圖卷積網(wǎng)絡(luò)方法一般處理整個(gè)圖結(jié)構(gòu),難以并行處理和擴(kuò)展,基于空域的圖卷積方法主要通過(guò)聚集節(jié)點(diǎn)信息直接在圖上進(jìn)行卷積,并結(jié)合采樣策略,能夠減少計(jì)算復(fù)雜度。Hamilton[14]提出的Graph-SAGE 方法引入了節(jié)點(diǎn)特征聚合函數(shù)和小批量訓(xùn)練策略提高了模型的泛化能力。為了進(jìn)一步學(xué)習(xí)更好的圖結(jié)構(gòu)中的層次特征并降低計(jì)算復(fù)雜度,已經(jīng)提出了很多不同的圖池化方法,其中常見的方法:簡(jiǎn)單的在最后一層中將所有節(jié)點(diǎn)特征求和;引入一個(gè)連接到圖中所有節(jié)點(diǎn)的虛擬節(jié)點(diǎn)以求平均值;使用深度學(xué)習(xí)框架聚合節(jié)點(diǎn)特征;也有將CNN 中架構(gòu)的通道堆疊的方法應(yīng)用到所有節(jié)點(diǎn)特征中。
GCN 在病理圖像應(yīng)用方面,Lu 等[15]提出一種圖神經(jīng)網(wǎng)絡(luò)的新型模型,將每個(gè)從數(shù)字化病理全切片(Whole-Slide Images,WSI)中裁剪的圖塊作為圖結(jié)構(gòu)中的節(jié)點(diǎn),以此構(gòu)建整張WSI 的圖結(jié)構(gòu),從而避免丟失圖塊與圖塊之間的視覺(jué)信息,但是該方法并未涉及細(xì)胞級(jí)圖結(jié)構(gòu)的構(gòu)建。考慮到內(nèi)存的限制,常規(guī)技術(shù)依賴于切圖塊的方法進(jìn)行CNN訓(xùn)練,但由于癌變區(qū)域會(huì)聚集在一起,這種方法通常會(huì)忽略每個(gè)圖塊之間的空間關(guān)系,因此Konda 等[16]提出在病理圖像中構(gòu)建節(jié)點(diǎn)關(guān)系,將每個(gè)圖塊作為圖結(jié)構(gòu)中的一個(gè)節(jié)點(diǎn),并添加一些人工特征,以此突出GCN 在醫(yī)學(xué)數(shù)據(jù)分析的潛力。Zhang[17]等人嘗試在宮頸癌細(xì)胞分割的工作中應(yīng)用GCN,提出一種全卷積網(wǎng)絡(luò)和圖方法相結(jié)合的分割方法,需要通過(guò)掩碼構(gòu)造圖像的圖結(jié)構(gòu),并以動(dòng)態(tài)編程的方式獲取圖結(jié)構(gòu)中最優(yōu)的全局路徑,實(shí)現(xiàn)過(guò)程復(fù)雜。目前GCN 在病理圖像的應(yīng)用通常是將整個(gè)圖塊作為一個(gè)節(jié)點(diǎn)以構(gòu)建整個(gè)WSI的圖結(jié)構(gòu),因此丟失了微觀細(xì)胞之間的空間關(guān)系特征。本文將細(xì)胞圖結(jié)構(gòu)與圖神經(jīng)網(wǎng)絡(luò)結(jié)合,利用細(xì)胞之間的拓?fù)潢P(guān)系對(duì)病理圖像的幾何結(jié)構(gòu)進(jìn)行建模,使得C-GCN 不但能學(xué)習(xí)到細(xì)胞本身的特征,還學(xué)習(xí)到細(xì)胞之間空間關(guān)系特征,從而增強(qiáng)模型分析判別的能力。
基于細(xì)胞圖卷積的組織病理圖像分類方法主要分為三部分:利用細(xì)胞分割網(wǎng)絡(luò)獲得細(xì)胞掩碼;利用細(xì)胞掩碼獲取細(xì)胞的顏色、形狀、空間結(jié)構(gòu)以及外觀特征構(gòu)建細(xì)胞圖結(jié)構(gòu);利用C-GCN 進(jìn)行圖網(wǎng)絡(luò)訓(xùn)練。技術(shù)路線圖如圖1所示。
圖1 C-GCN總體流程
準(zhǔn)確地分割細(xì)胞是生成可靠節(jié)點(diǎn)特征的關(guān)鍵,因此,本文優(yōu)選高性能的Hover-Net[18]作為細(xì)胞分割網(wǎng)絡(luò),其能準(zhǔn)確地分割出每個(gè)細(xì)胞的邊界,Hover-Net 利用細(xì)胞像素的垂直和水平距離內(nèi)編碼信息等到它們的質(zhì)心,之后利用距離分類聚集的核,預(yù)測(cè)出最后的分割結(jié)果。本文利用Hover-Net獲得的掩碼提取細(xì)胞形狀和外觀特征,選取17 個(gè)具有代表性的特征描述子,分別為:平均核強(qiáng)度、前/背景平均差異、細(xì)胞強(qiáng)度標(biāo)準(zhǔn)偏差、細(xì)胞強(qiáng)度偏度、細(xì)胞強(qiáng)度的平均熵、灰度共生矩陣(GLCM)的差異、灰度共生矩陣(GLCM)的同質(zhì)性、灰度共生矩陣(GLCM)的能量、灰度共生矩陣(GLCM)的角二階矩(ASM)、偏心率、面積、軸的最大值、軸的最小值、周長(zhǎng)、穩(wěn)定性、方向以及質(zhì)心坐標(biāo)。
為了能夠使用GCN,必須將病理圖像轉(zhuǎn)為圖形的表示。一個(gè)圖的定義為G=(V,E),V為節(jié)點(diǎn)的集合,E為邊的集合,對(duì)于每個(gè)節(jié)點(diǎn)i,具有d維的節(jié)點(diǎn)特征xi∈Rd,可用矩陣表示XN×D,其中N表示節(jié)點(diǎn)數(shù),D表示特征向量的維度。ei,j表示節(jié)點(diǎn)i和節(jié)點(diǎn)j的邊,其屬于集合E。
本文以分割出來(lái)的細(xì)胞作為節(jié)點(diǎn),相鄰細(xì)胞之間的歐幾里得距離作為邊的屬性,以此構(gòu)建細(xì)胞圖結(jié)構(gòu)。以歐幾里得距離作為相鄰細(xì)胞之間分配邊的依據(jù),其距離單位為像素,本文采用的實(shí)驗(yàn)數(shù)據(jù)均在20倍率下提取,結(jié)合實(shí)際觀測(cè)經(jīng)驗(yàn)和計(jì)算便捷,選擇距離小于100像素作為分配邊的閾值,能夠較好表達(dá)病理圖像中細(xì)胞之間的關(guān)系,不會(huì)出現(xiàn)過(guò)于稠密或稀疏的細(xì)胞圖結(jié)構(gòu),并將這個(gè)數(shù)值作為超參數(shù),在其他實(shí)驗(yàn)中可根據(jù)具體情況進(jìn)行調(diào)整。圖結(jié)構(gòu)的構(gòu)造分為以下兩步:
(1)分割細(xì)胞,結(jié)合細(xì)胞掩碼提取細(xì)胞的形狀和外觀特征,總共計(jì)算出17個(gè)代表性特征,這些特征用于形成節(jié)點(diǎn)特征矩陣。
(2)在細(xì)胞圖結(jié)構(gòu)中,將圖結(jié)構(gòu)中的邊定義為兩個(gè)細(xì)胞之間的相互作用,本文假設(shè)歐式距離較小的細(xì)胞更可能相互作用,因此在兩個(gè)細(xì)胞之間的距離固定,則在它們之間分配一條邊,此外,為了能夠使節(jié)點(diǎn)融合到更多鄰接節(jié)點(diǎn)的信息,本文將歐式距離小于100像素的兩個(gè)細(xì)胞之間均分配一條邊。
細(xì)胞圖結(jié)構(gòu)構(gòu)建完成后,組織病理圖像的癌癥分類任務(wù)即可視為對(duì)圖的分類問(wèn)題。GCN通過(guò)節(jié)點(diǎn)迭代聚合學(xué)習(xí)節(jié)點(diǎn)特征的表示,在網(wǎng)絡(luò)的隱藏層中計(jì)算新的節(jié)點(diǎn)特征向量[12],整個(gè)圖的表示可以通過(guò)匯集學(xué)習(xí)到的所有新節(jié)點(diǎn)特征獲得。本文采用Hamilton[14]提出具有聚合特征的GraphSAGE 圖卷積模塊,對(duì)于一個(gè)給定的節(jié)點(diǎn),它將第k層的節(jié)點(diǎn)v特征的輸出表示為k-1 層的節(jié)點(diǎn)v特征與第k層節(jié)點(diǎn)v的所有鄰接節(jié)點(diǎn)特征聚合的拼接。
其中,表示在第k層節(jié)點(diǎn)v的所有鄰接節(jié)點(diǎn)的特征聚合,表示在k層節(jié)點(diǎn)v的特征,表示在k-1層節(jié)點(diǎn)v的特征,(,?u∈N(u))表示在k-1 層中節(jié)點(diǎn)v的鄰接節(jié)點(diǎn)u的特征向量,W 表示參數(shù)矩陣。
圖的節(jié)點(diǎn)特征計(jì)算公式可簡(jiǎn)化為:
其中,V 為節(jié)點(diǎn)特征矩陣,A 是鄰接矩陣,SAGEConv是GraphSAGE的卷積運(yùn)算符。為了提高模型的泛化能力,本文引入圖池化模塊,將圖池化過(guò)程分為兩個(gè)部分,在每次GraphSAGE 之后進(jìn)行一次分層池化,減少一定數(shù)量的節(jié)點(diǎn),該過(guò)程的作用與CNN中的池化作用類似,它能夠增加模型的魯棒性并能夠提取具有一般性的節(jié)點(diǎn)特征。在分層池化之后再進(jìn)行一次全局池化,將整個(gè)圖中的所有節(jié)點(diǎn)特征進(jìn)行最大值池化和平均值池化,并將其拼接形成一維特征向量,圖卷積中分層池化的具體工作流程如圖2所示。
圖2 分層池化示意圖
從圖2中看出,分層池化引入了額外的訓(xùn)練參數(shù)投影向量p,節(jié)點(diǎn)特征矩陣Xl與p 矩陣相乘后得到y(tǒng),該過(guò)程是估計(jì)每個(gè)節(jié)點(diǎn)到投影向量的分?jǐn)?shù),可選擇分?jǐn)?shù)最大的k個(gè)節(jié)點(diǎn),再按照節(jié)點(diǎn)的索引idx獲得其在原Xl中的節(jié)點(diǎn)特征矩陣X?并與經(jīng)過(guò)激活函數(shù)Relu激活后的?進(jìn)行點(diǎn)乘,從而獲得進(jìn)攻池化后的節(jié)點(diǎn)特征矩陣Xl+1,其對(duì)應(yīng)新的鄰接矩陣Al+1則按照索引idx在原鄰接矩陣Al中獲得。
全局池化在分層池化之后,將最大值池化和平均值池化進(jìn)行拼接,作為全連接層的輸入,如圖3所示。
圖3 全局池化示意圖
本文的圖卷積網(wǎng)絡(luò)結(jié)構(gòu)如圖4 所示,其中,V 代表節(jié)點(diǎn)矩陣,N為節(jié)點(diǎn)數(shù)量,F(xiàn)為每個(gè)節(jié)點(diǎn)的特征維度,A 代表鄰接矩陣,F(xiàn)C表示全連接層。
Camelyon16 數(shù)據(jù)集[19]來(lái)源乳腺癌患者的前哨淋巴結(jié),是數(shù)字化病理全切片圖像(WSI)。由Radboud UMC和UMC Utrecht兩個(gè)機(jī)構(gòu)提供(https://camelyon16.grand-challenge.org/Data/)。它是由400 張完整的淋巴結(jié)病理圖像組成,分為270 張用于訓(xùn)練和130 張用于測(cè)試,包含醫(yī)生標(biāo)注的輪廓信息。本文使用170個(gè)淋巴結(jié)病理圖像作為訓(xùn)練集,其中100個(gè)正常病理圖像和70個(gè)癌變病理圖像;另外再使用100 個(gè)病理圖像作為測(cè)試集,其中60 個(gè)正常病理圖像和40 個(gè)癌變病理圖像。使用CNN 模型進(jìn)行訓(xùn)練時(shí),將病理圖像進(jìn)行一系列預(yù)處理操作后,裁剪為256×256 大小的圖像塊作為輸入。在使用本文提出的C-GCN 模型進(jìn)行訓(xùn)練時(shí),將病理圖像裁剪1 792×1 792 大小的圖像塊作為輸入。病理圖像裁剪流程如圖5所示,其中病理圖像的具體預(yù)處理操作可參考文獻(xiàn)[20]。表1為在Camelyon16數(shù)據(jù)集上進(jìn)行驗(yàn)證實(shí)驗(yàn)時(shí),訓(xùn)練集與測(cè)試集的樣本數(shù)量分布情況。
圖4 圖網(wǎng)絡(luò)結(jié)構(gòu)圖
表1 Camelyon16數(shù)據(jù)集的圖像塊數(shù)量
結(jié)直腸癌(CRC)數(shù)據(jù)集[16,21]由300 張非重疊圖像組成(https://warwick.ac.uk/fac/sci/dcs/research/tia/data/extended_crc_grading/),尺寸大小為4 548×7 548,在20倍率下提取,并根據(jù)腺體分化程度,病理學(xué)專家將圖像分別標(biāo)記為正常組織、低等級(jí)腫瘤和高等級(jí)腫瘤。由于數(shù)據(jù)量比較少,本文通過(guò)翻轉(zhuǎn)、旋轉(zhuǎn)、平移等簡(jiǎn)單的數(shù)據(jù)增強(qiáng)方法,擴(kuò)充了280 多張圖像。為進(jìn)行公平的比較,將數(shù)據(jù)集分為三部分進(jìn)行交叉驗(yàn)證[21]。由于受內(nèi)存的限制,CNN 是無(wú)法直接對(duì)4 548×7 548 大小的高分率圖像進(jìn)行訓(xùn)練,但是在高分辨率圖像轉(zhuǎn)換為圖結(jié)構(gòu)后,可利用GCN模型對(duì)其進(jìn)行訓(xùn)練,因此,本文將對(duì)4 548×7 548大小的圖像直接進(jìn)行訓(xùn)練和三分類預(yù)測(cè),以驗(yàn)證本文方法的有效性。其中正常、低等級(jí)、高等級(jí)三個(gè)類別在訓(xùn)練集和測(cè)試集的樣本數(shù)量分布如表2所示。
表2 CRC數(shù)據(jù)集的每個(gè)類的數(shù)量
利用PyTorch Germetric(PyG)庫(kù)[22]實(shí)現(xiàn)算法的驗(yàn)證,在訓(xùn)練期間,使用Adam優(yōu)化函數(shù),學(xué)習(xí)率為5E-4,權(quán)重衰減率為1E-4。之后構(gòu)建Camelyon16和CRC兩個(gè)數(shù)據(jù)集對(duì)應(yīng)的細(xì)胞圖結(jié)構(gòu)數(shù)據(jù)集,為C-GCN 提供訓(xùn)練和測(cè)試數(shù)據(jù)。圖6 和圖7 分別為Camelyon16 數(shù)據(jù)集和CRC 數(shù)據(jù)集轉(zhuǎn)換為細(xì)胞圖結(jié)構(gòu)后,將其可視化的部分細(xì)胞掩碼和細(xì)胞圖結(jié)構(gòu)。
圖6 Camelyon16的細(xì)胞圖結(jié)構(gòu)可視化
圖5 病理圖像處理流程示意圖
圖7 CRC的細(xì)胞圖結(jié)構(gòu)可視化
為證明C-GCN 的有效性,本文在Camelyon16 和CRC兩個(gè)數(shù)據(jù)集上分別做兩組實(shí)驗(yàn)。
第一組實(shí)驗(yàn):在Camelyon16上,本文針對(duì)正常病理圖像和腫瘤病理圖像的二分類任務(wù)評(píng)估六種著名的CNN模型并與C-GCN的分類準(zhǔn)確率進(jìn)行對(duì)比。其中六種CNN 分 別 是GoogLeNet[23]、AlexNet[24]、VGG16[25]、ResNet50[26]、MobileNet[27]、Xception[28]。
從表3中可以看出,與CNN模型相比,C-GCN在組織病理圖像的癌癥分類任務(wù)中也能夠獲得較高的分類準(zhǔn)確率。
表3 Camelyon16數(shù)據(jù)上不同模型的評(píng)估結(jié)果
第二組實(shí)驗(yàn):在CRC 數(shù)據(jù)集上采用兩個(gè)分類進(jìn)行準(zhǔn)確率、精確率、召回率和F1 值評(píng)估,分別為癌癥和高等級(jí),在癌癥分類中,將低等級(jí)和高等級(jí)均視為陽(yáng)性類別,而在高等級(jí)分類中,將正常和低等級(jí)均視為陰性類別。準(zhǔn)確率指標(biāo)表示真實(shí)的陽(yáng)性和真實(shí)的陰性之和占總數(shù)的百分比。表4為癌癥分類和高等級(jí)分類的混淆矩陣。
表4 預(yù)測(cè)結(jié)果的混淆矩陣(N=196)
表5 中,C-GCN 模型直接對(duì)4 548×7 548 的高分辨率病理圖像進(jìn)行三分類訓(xùn)練,從評(píng)估指標(biāo)來(lái)看,也獲得了比較高的準(zhǔn)確率,并且癌癥和高等級(jí)的召回率很高,說(shuō)明了本文方法能夠準(zhǔn)確地將癌變病理圖像進(jìn)行區(qū)分,雖然高等級(jí)分類的精確率比較低,只有0.70,這是由于在高等級(jí)分類中,將低等級(jí)分化的癌變也視為了陰性類別,所以在高等級(jí)分類中,誤將某些傾向于高等級(jí)分化的低等級(jí)癌變圖像也預(yù)測(cè)為高等級(jí),從而導(dǎo)致了在高等級(jí)分類的精確率較低。從圖8 的AUC-ROC 曲線來(lái)看,癌癥與高等級(jí)的AUC 值均為0.98,進(jìn)一步證明了模型在分類預(yù)測(cè)中具有較高的穩(wěn)定性和魯棒性。
表5 在CRC數(shù)據(jù)上使用不同的指標(biāo)評(píng)估C-GCN
圖8 ROC曲線注意癌癥類別包括低等級(jí)和高等級(jí)
本文提出了基于C-GCN的組織病理圖像分類預(yù)測(cè)的方法。該方法將高分辨率組織病理圖像中的細(xì)胞作為圖結(jié)構(gòu)的節(jié)點(diǎn),并將細(xì)胞之間的歐氏距離作為邊,以此構(gòu)建細(xì)胞圖結(jié)構(gòu)。這種方法在提取高分辨率組織病理圖像的微觀結(jié)構(gòu)和宏觀結(jié)構(gòu)方面表現(xiàn)優(yōu)異。此外,本文在圖卷積中引入了GraphSAGE 模塊和圖池化模塊,不僅有效地聚合了細(xì)胞形態(tài)和微觀結(jié)構(gòu)信息,也減少了計(jì)算冗余。并在Camelyon16和CRC兩個(gè)數(shù)據(jù)集進(jìn)行充分驗(yàn)證,證明了本文方法在病理圖像分類任務(wù)中的優(yōu)勢(shì)。但是生成的圖結(jié)構(gòu)非常稠密,其中可能會(huì)存在大量的噪聲節(jié)點(diǎn),這些噪聲節(jié)點(diǎn)一方面會(huì)影響最終的分類準(zhǔn)確率,另一方面也增加了網(wǎng)絡(luò)的計(jì)算量,因此需要減少噪聲節(jié)點(diǎn)對(duì)模型的影響,以構(gòu)建稀疏的圖結(jié)構(gòu),進(jìn)一步提升圖網(wǎng)絡(luò)的分類效果。