









摘 要:自動化的醫學影像報告生成可以提高影像醫生的工作效率。傳統的醫學影像報告生成方法大多數基于判別式和圖像描述生成式,在準確性、流暢性、多樣性方面存在不足。基于大語言模型微調的醫學影像生成技術有望改善以上問題。在預訓練多模態大語言模型基礎上,提出一種判別增強的微調方法——MedVLM。以影像診斷作為輔助的判別目標,引入低秩自適應微調法、提示微調法以及凍結微調法,來微調多模態大語言模型的特征提取模塊、視覺-語言轉換模塊以及大語言模型模塊,使其能夠準確診斷肺部CT影像的疾病,并生成準確性更高的肺部CT影像報告。所提方法的BLEU@4得分率為40.85%(40.41%~40.94%),METEOR得分率為70.56%(70.37%~70.8%),生成報告的肺炎診斷準確率為87.67%(86.06%~87.39%)。顯著超越傳統的圖像描述方法。判別增強大語言模型微調的醫學影像報告生成方法,可以顯著提高肺部CT影像報告生成的準確性,具有廣泛的應用潛力。
關鍵詞:醫學影像報告生成;大語言模型;微調;判別增強
中圖分類號:TP391.1"" 文獻標志碼:A"" 文章編號:1001-3695(2025)03-016-0762-08
doi:10.19734/j.issn.1001-3695.2024.08.0303
Medical imaging report generation via multi-modal large language
models with discrimination-enhanced fine-tuning
Qian Qian1,2,Sun Liping1,Liu Jialin1,2,Du Huijiang1,Ling Chen1
(1.College of Medical Instrumentation,Shanghai University of Medicine amp; Health Sciences,Shanghai 201318,China;2.School of Health Sciences amp; Engineering,University of Shanghai for Science amp; Technology,Shanghai 200093,China)
Abstract:Automated medical imaging report generation significantly enhances the work efficiency of radiologists.Most traditional methods for generating medical imaging reports rely on classification or image caption models,which exhibit deficiencies in accuracy,fluency,and diversity.Fine-tuning techniques with large language models are a promising way to address these issues.This paper proposed a discrimination-enhanced fine-tuning method called MedVLM,based on a pre-trained multi-modal large language model.It used classification labels for specific diseases serve as auxiliary targets in fine-tuning.Fine-tuning techniques such as low-rank adaptation,P-Tuning V2,and freeze refined the feature extraction,vision-language conversion,and large language model modules.These approached enable accurate diagnosis of diseases in lung CT images and facilitates the generation of higher-quality reports.MedVLM achieves a BLEU@4 score of 40.85%(range 40.41%~40.94%), an METEOR score of 70.56%(range 70.37%~70.8%),and a pneumonia diagnosis accuracy rate of 87.67%(range 86.06%~87.39%),significantly surpassing traditional image caption methods.The discriminate-enhanced fine-tuning method for large pre-trained multi-modal language models significantly improves the accuracy of lung CT image report generation and demonstrates broad application potential.
Key words:medical imaging report generation;large language model;fine-tuning;discrimination enhancement
0 引言
在臨床上,醫學影像報告提供了患者在醫學影像中所暴露出癥狀的客觀描述和診斷信息,對患者治療方案的制定有極為重要的意義。醫學影像報告的撰寫是放射科醫生重要的工作,臨床醫生不僅需要具備專業的知識和判斷力,還需要對醫學影像進行細致觀察,更需要到對患者病史和癥狀的綜合深入理解[1]。然而,放射科醫生數量年增長數量遠遠比不上醫學影像數據的增長量,放射科醫生缺口較大。醫院迫切需要智能化的影像分析及報告生成輔助工具來減輕醫生的負擔和壓力,因此醫學影像報告生成技術是當前醫學人工智能研究的熱點問題。
當前,醫學影像報告生成方法主要有基于標簽或模板的判別式方法、基于圖像描述(image caption)的生成式[2~8]方法,以及基于預訓練多模態大語言模型的微調方法[9,10]三類。
判別式方法依賴于結構化、半結構化的標簽或模板,該方法原理較為簡單,但不同部位、不同類型的醫學影像所對應的報告模板數據結構差異很大,具體的疾病需要設計特定的模板,導致靈活性、多樣性缺失。基于圖像描述的生成式方法[2~8]雖然能夠生成自然語言形式的文本報告,但生成影像報告的準確性有待進一步提高。
當前,多模態大預言模型在跨模態生成方面的能力廣受關注。多模態大語言模型在海量數據上以自監督方式掌握了通用領域中圖像與文本的語義對齊關系,通過微調遷移學習,能夠充分利用其已有的跨模態語義理解能力。此外,預訓練大語言模型所輸出的文本更接近自然語言的表達形式,流暢性和多樣性更好。因此,在醫學影像報告生成領域中,基于多模態大語言模型已有的知識,通過小數據集微調,可以提高影像報告生成的準確性、流暢性、多樣化。此外,預訓練大模型也有極強的可擴展性,可以以增量學習的方式快速遷移到其他疾病的影像報告生成問題。在撰寫影像報告時,放射科醫生遵循一套系統化的工作流程,以確保診斷的準確性和全面性。以胸部CT影像報告撰寫為例:在讀片階段,醫生會切換不同的窗寬窗位以進行CT圖像中特定器官和解剖細節的詳細觀察。在肺窗和軟組織窗下,醫生檢查肺部及軟組織的影像特征,尋找解剖結構的異常,推斷出潛在的病變。最終通過讀片所獲取的異常以及人工判別的病變信息,撰寫出詳盡的影像報告,最終得出影像結論,如圖1所示。
在影像報告撰寫過程中,臨床醫生會對發現的特定解剖結構異常進行潛在病變的判別。這個判別過程存在相關關系:詳細的影像異常可以推導出可能的病變,而可能的病變又可以反推其影像異常。因此,融入對影像中病變信息的診斷判別,能夠更有效地理解影像異常與潛在病變之間的關系。該思路應用到影像報告生成的大模型中,可以使大模型更精確地識別影像異常,進而提供更為準確的病變信息,從而提升所生成的影像報告的準確性。
為提高自動化生成影像報告的準確性,本文借鑒了臨床醫生的工作流程,提出了一種基于判別增強的大語言模型微調方法MedVLM(medical vision language model),應用于肺部CT影像報告生成。MedVLM基于開源的VisualGLM-6B架構,使用小規模胸部CT影像報告數據進行微調。在胸部CT影像報告生成任務上取得了較好的結果。簡而言之,本文的主要貢獻如下:
a)提出了一種基于微調多模態大語言模型的影像報告生成方法MedVLM。該方法基于開源的VisualGLM-6B模型,引入LoRA等參數高效微調方法,對影像特征提取模塊、視覺-語言轉換模塊,以及語言模型模塊進行微調,并比較不同模塊微調的效果。
b)借鑒臨床醫生的工作過程,利用影像報告生成和影像診斷任務之間的相關性,在多模態大語言模型VisualGLM-6B的影像特征提取模塊和視覺-語言轉換模塊之間融入影像診斷的判別增強模塊,利用判別任務來約束生成任務,提高影像報告生成的準確性,同時增強了大語言模型的影像診斷能力。
c)實驗中,基于臨床的700多條胸部“CT影像-報告文本”的成對標簽數據進行監督微調。結果顯示,融入判別增強模塊后,VisualGLM-6B生成的胸部CT報告在文本生成評估指標(BLEU、METEOR)上有較大幅度的提升。同時,影像報告中對于胸部CT影像中肺炎診斷結論的準確率也有顯著提高。
1 相關工作
早期,醫學影像報告生成的目標文本大多是結構化或半結構化的模板或標簽,而非自然文本。Kisilev等人[11]使用支持向量機(support vector machine,SVM)來預測醫學影像的屬性。Shin等人[12]采用基于卷積神經網絡(convolutional neural network,CNN)與循環神經網絡(recurrent neural network,RNN)的框架來預測胸部X射線圖像的標簽(例如位置、嚴重程度等)。雖然結構化、半結構化的數據更容易被算法程序理解和判別,但其可能在某一種特定身體部位的醫學影像中適用,而在另一種模態的醫學影像或不同身體部位上失效。需要重新設計新的模板,也需要重新訓練模型。因此,生成的影像報告靈活性、多樣性較差。
隨著深度生成模型的發展[13,14],圖像描述(image caption)[15,16]技術被引入醫學影像報告生成問題。大量工作采用了其典型工作的編碼器-解碼器架構。Jing等人[2]通過CNN提取對應影像的特征圖,并通過一個分層的長短時記憶網絡(long short-term memory network,LSTM)作為解碼器來生成影像報告。Wang等人[3]提出了基于CNN-RNN變體的報告生成網絡TieNet,該網絡融入了多級注意力來突出顯示有意義的文本單詞和圖像區域來幫助生成報告。為了進一步提高模型生成報告的準確性,一些工作采用了Transformer來替代LSTM網絡。Chen等人[4]通過改進Transformer,在Transformer中增加能夠記錄關鍵信息的模塊以增強報告生成網絡的性能。Wang等人[17]在每層視覺Transformer編碼器中加入了多個專家token來學習關注不同的影像區域,通過添加正交損失來使得每個專家token捕獲可靠并且互補的視覺信息,最終使得生成效果提升。除了對神經網絡地基礎單元進行改進,通過融入內部或外部的額外信息也能有效提升生成報告的質量。Li等人[18]通過融入外部醫學教材知識來提高生成報告的準確性。Yang等人[19]在模型中加入了一個可訓練的知識庫組件來使得模型能夠更好地學習有利于報告生成的影像學知識。Tanida等人[20]使用目標檢測技術提取解剖區域的視覺特征,使得模型能夠生成針對每個解剖區域的獨立描述句子,從而實現報告的完整性和一致性。除此之外,也有一些研究采用強化學習的方式來訓練生成模型。Li等人[21]結合了檢索和生成報告的模型架構,模型在檢索和生成的報告片段之間進行選擇并拼接成為完整的報告,并通過強化學習來進行訓練。Xu等人[22]融合了可以學習多維高階特征交互的M-Linear注意力模塊,并采用強化學習來生成影像報告。
總的來看,在醫學影像報告生成領域,缺乏大量有標簽的公開訓練數據。其次,基于深度生成式方法在通用數據集上學習到的圖像特征和解碼模式,因為其參數量較小的原因,這些圖像特征和解碼模式在應對數據偏移量較大的醫學影像數據中表現不佳。再次,由于成像方法和人體組織本身的原因,不同檢測者的同一種醫學影像具有高度的相似性,描述正常區域的句子可能會在每個數據集中重復出現,這會導致模型無法描述特定的關鍵異常。
為了解決傳統深度生成式的影像生成報告方法的不足,微調預訓練大模型的影像報告生成方法被提出。Zhou [23]發現大模型如ChatGPT可以生成連貫、全面和臨床相關的醫療報告,但也存在局限性,缺乏對影像數據的處理手段,后續工作彌補了該缺陷。CLIP(contrastive language-image pre-training)[24]利用對比學習方法和大量圖像-文本對數據進行預訓練,使得模型能夠將圖片與其描述文字相匹配。Endo等人[10]使用預訓練的CLIP模型,在大型數據集的多個報告中檢索句子來生成影像報告,取得了較好的效果。此外,BLIP(bootstrapping language-image pre-training)[25]使用了多目標訓練的方法,融合對比學習、圖像文本匹配和掩碼語言建模三個不同的目標損失進行訓練,在圖像描述任務中取得了更好的性能。Li等人[26]在BLIP的基礎上提出了BLIP-2。通過將提取的圖像特征對齊到凍結的大語言模型的輸入空間,利用預訓練大語言模型強大的零樣本學習能力來進行推理,在幾個不同的下游任務上表現出了不錯的效果。Selivanov等人[27]通過結合大語言模型和傳統生成式模型,在醫療影像報告生成任務上取得了較好的性能。智譜清言團隊使用來自于CogView數據集[28]的30 M高質量中文圖文對,與300 M經過篩選的英文圖文對進行預訓練,得到了視覺語言大模型VisualGLM,該模型在中文圖像和語料數據上表現優異。在影像報告生成任務中,Wang等人[9]使用高效的視覺對齊模塊將卷積層抽取的視覺特征與大型語言模型的詞嵌入空間對齊,生成相應的放射科影像報告。以上研究表明,基于多模態大語言模型微調的方法在醫學影像報告生成領域具有很大的優勢。
2 方法:判別增強的微調
2.1 模型結構
2.1.1 整體結構
本文提出的影像診斷報告生成模型(MedVLM)包括影像特征提取模塊、判別增強模塊、圖像-語言轉換模塊和大語言模型模塊,如圖2所示。在模型推理過程中,CT影像首先通過影像特征提取層,獲得對應的影像特征;其次,影像特征在判別增強模塊中融入相應的判別標簽信息,變為融合特征;再次,視覺-語言轉換模塊將融合特征轉換為大語言模型所能接收的文本向量,并與預設的文本提問拼接;最后,大語言模型模塊接收輸入,最終生成相應的影像報告。
圖中淡綠色背景的虛線框內為模型的主要微調模塊,它們所使用的微調方法在其上方進行了標注;藍色背景的模型塊在實際訓練中不會更改其參數;黃色背景的模型塊在部分微調過程中,會改變其參數;紅色背景是新增模塊——判別增強模塊(見電子版)。本文所做的主要創新工作在判別增強模塊,具體細節將在3.2節展示。
2.1.2 大語言模型
MedVLM使用的大語言基座模型是ChatGLM-6B,它是一個開源的、支持中英雙語的對話語言模型,具有62億參數。ChatGLM-6B的文本生成性能在6B大小的中文大語言模型中有較好的表現。大語言模型接收文本編碼作為輸入,輸出文本概率值。輸入的文本編碼由兩部分組成:一部分由文本提問根據大語言模型的詞匯表轉換而來;另一部分由融合特征通過視覺-語言轉換模塊轉換而來。在訓練中,生成文本的概率值與真實影像報告計算交叉熵損失并更新模型參數,在推理過程中,文本概率值通過查閱大語言模型的詞匯表得到影像報告。為了使生成的文本更加符合下游任務——影像報告生成任務需要對大語言模型進行微調,MedVLM分別采用了低秩自適應微調法、提示微調法和凍結微調法。由于預訓練大模型的前幾層主要學習到的是前一個模塊輸出的特征表示,而后幾層則是用于特定下游任務的特征表示,所以主要的微調工作聚焦于ChatGLM-6B的第0和14層,即首層和尾層。
2.1.3 影像特征提取
影像特征提取模塊采用預訓練的視覺Transformer來提取影像特征,其權重來自于EVA-ViT-G[29]。原始視覺Transformer是在通用領域圖像數據集訓練的,因此其在提取醫學影像領域相關圖像特征時效果不佳。為更有效地提取醫學影像領域相關的特征圖,以便提高影像報告生成質量,本文對其進行凍結法微調。在特征提取模型中,越接近輸出層的模塊,輸出越低級的圖像特征。為了使這些最基礎的圖像特征表示能夠更適配醫學影響領域,對其最后一層視覺Transformer進行凍結法微調,以在通用領域訓練的基礎上獲得更接近醫學影像領域的特征圖。
2.1.4 視覺-語言轉換
MedVLM采用VisualGLM自帶的query-Transformer作為視覺-語言轉換模塊,該模塊的主要功能是將輸入的影像特征對齊為大語言模型可以處理的文本嵌入。query-Transformer來自于BLIP-2[26]提出的架構,由Transformer和可學習的查詢矩陣Q組成,查詢矩陣Q可以學習到視覺特征和語言特征之間的特定關系,因此通過訓練查詢矩陣Q的參數可以縮小視覺特征與語言特征之間的差距。它是影像報告生成模型的重要橋梁,若影像特征能夠有效對齊為語言模型能夠理解的文本特征,生成的影像報告準確性能夠大幅提升。考慮到其重要性,及其相比其他模塊而言較小的參數量,在訓練過程中,使用凍結法微調其全部參數。
2.2 判別增強模塊
受Conditional-GAN[30]等方法的啟發,MedVLM將影像的分類標簽作為判別目標,增加判別增強模塊。通過該方法,使得生成的影像報告能夠更加符合疾病診斷的預期,能夠更加貼近真實的疾病狀況。圖3為判別增強模塊的具體細節,該模塊接收影像特征作為輸入,影像特征通過預訓練的影像分類標簽判別模塊,將醫學影像特征轉換為分類標簽,再通過標簽嵌入層將分類標簽轉換為標簽嵌入,與原始影像特征進行特征拼接,并輸入至投影層進行維度變換,最終輸出與原影像特征維度一致的融合特征。判別模塊由全連接層和激活函數層組成,其參數在微調過程中固定。
判別增強模塊的影像分類標簽判別模塊由全連接層和激活函數層組成。在訓練過程中,該判別模塊所接收的影像特征由MedVLM的影像特征提取模塊所抽取,利用了COV-CTR數據集進行了遷移學習,最終在驗證集上的準確率為99.32%。在隨后的微調實驗中,該影像分類標簽判別模塊全程凍結參數,不進行調整,僅利用其提取特征圖中新冠肺炎分類信息的能力。
判別增強模塊通過預訓練醫學影像分類器將影像特征轉換為分類標簽,該標簽為是否感染新冠肺炎的二分類標簽。隨后將該分類標簽融入特征圖中,能夠使得生成的報告更加符合原始報告的數據分布,在文本生成指標和肺炎診斷準確率上均有所提升;同時,以分類標簽作為判別目標,能夠使得生成的影像報告更貼近該標簽,這意味著文本生成可以通過特定的分類任務進行控制性的生成。
在訓練和推理的過程中,預訓練影像分類標簽判別模塊的具體運算過程包含了一個矩陣乘法、一個矩陣加法和一個激活函數,輸入的影像特征Xfeat通過參數矩陣Wclf和Bclf得到對應的輸出,并使用ReLU激活函數將其轉換為標簽概率L,運算過程如下:
L=ReLU(Wclf*Xfeat+Bclf)
(1)
隨后標簽概率L與標簽嵌入層E的參數矩陣WE相乘,并加上其偏置矩陣BE,轉換為條件嵌入ec,并與特征圖Xfeat進行拼接,得到整體嵌入e:
ec=L*WE+BE
(2)
e={ec,Xfeat}
(3)
最終通過投影層Proj進行維度變換,輸出帶有標簽信息的融合特征Xfus,該融合特征隨后將被傳遞至大語言模型模塊中:
Xfus=Proj(e)
(4)
2.3 微調方法
由于大語言模型的參數量巨大,全量微調方法難以實施,所以,參數高效微調技術應運而生。參數高效微調技術能固定大部分預訓練參數,僅微調少量或額外的模型參數,從而顯著減少計算的需求。本文所采用的預訓練權重來自于VisualGLM。在預訓練階段,模型已經通過大量數據學習到了豐富的語言知識和圖像特征表示。這些預訓練知識可以被有效地應用于各種下游任務。通過僅微調其部分參數,模型可以在保持預訓練知識的基礎上,快速適應特定的下游任務要求。
MedVLM采用影像特征提取模塊、圖像-語言轉換模塊和大語言模型模塊三種參數高效微調的方法對模型的不同部分進行微調。其中,在影像特征提取模塊和視覺-語言轉換模塊上使用了凍結微調法,在大語言模型模塊使用了低秩自適應微調法、提示微調法和凍結微調法。三種微調方式原理如圖4所示,圖4中的三種微調策略能夠有效降低需要的顯卡計算資源。圖4(a)為凍結(freeze)微調法,該微調方式包含了凍結的模型層和可訓練的模型層;圖4(b)為低秩自適應微調法(low-rank adaptation,LoRA),該方法通過增加旁路低秩矩陣進行微調;圖4(c)為提示微調法(prompt-tuning V2),該方法通過訓練每一層輸入前添加的提示詞前綴來微調模型。
2.3.1 凍結微調
最簡單且行之有效的參數高效微調方法便是凍結部分參數,即凍結微調法[9]。在凍結微調法中,將模型的權重分為需要微調的權重矩陣θ0和不需要微調的權重θ1兩個部分。以線性層為例,模型運算可以表示為
2.3.2 提示微調
Prefix-Tuning[31]對模型增加一小段可訓練的虛擬詞向量作為前綴,不需要優化整個模型的參數,能夠在下游任務中得到更好的性能且大幅降低訓練的參數量。Liu等人[32]提出了prompt-tuning方法,通過在輸入層增加一個prompt編碼器對額外增加的虛擬詞向量進行編碼學習,能夠得到更好的輸入詞向量模板;P-tuning V1僅在第一層Transformer層加入prompt編碼器。prompt-tuning V2[33]方法在此基礎上進行改進,將prompt編碼器加入到模型的每一個Transformer層中,使用prompt-tuning V2進行微調,使得模型在不同規模的任務中性能得到更大提升。
例如要把一篇電影評論x=“了不起的電影!”分類為正面或負面,大多數研究者自然會想到在評論中附加一個提示——“它是[MASK]”,并將生成的[MASK]被預測為好或壞的條件概率作為分類。在這種情況下,提示詞{“它(it)”、“是(is)”、“[MASK]”}都屬于模型的單詞表v,而輸入嵌入序列將為
其中:α為縮放因子;r為降維矩陣降維后的大小,兩者相除作為縮放因子。LoRA微調時只需通過梯度下降更新B與A。推理時可直接將W0矩陣同BA矩陣合并,就像LoRA模塊不存在一樣。因此這也是LoRA模塊的一個優勢,它并不會帶來推理延遲。
3 實驗和結論
3.1 數據集
本文在COV-CTR數據集上進行模型的訓練和評估,該數據集在COVID-CT數據集[35]的基礎上,增加了放射科醫生的專業標注,總共包含了726張新冠肺炎CT圖像以及其對應的影像所見、影像結論、匹配的疾病術語以及新冠肺炎的二分類標簽。數據集實例如圖5所示,其中,新冠肺炎陽性的數據為335條,陰性數據391條。數據集被按照8∶2的比例隨機拆分為訓練集和測試集。
圖5所展示的數據由肺部CT影像和醫生撰寫的醫學影像報告兩部分組成,每一張CT影像圖對應一份醫學影像報告。除此之外,每一張CT影像也有對應的其他數據,例如:是否感染了新冠肺炎的二分類標簽,本文將該標簽用于訓練提取標簽信息的判別模塊。
3.2 評價指標
為了評估每個訓練的醫學影像報告生成模型的效果,使用文本生成任務和臨床診斷準確兩種不同的評估指標。
本文采用的文本生成任務指標包括了BLEU和METEOR。BLEU(bilingual evaluation understudy)是雙語評估替補。替補是指代替人進行翻譯結果的評估。盡管這項指標是為翻譯而發明的,但它可以用于評估一組自然語言處理任務生成的文本。
bleun=∑c∈can∑n-gcountclip(n-g)∑c′∈can∑n-g′count(n-g′)
(11)
神經網絡生成的候選句是can(candidate),給定的標準譯文是ref(reference)。分子上第一個求和符號是統計所有生成的候選句個數;第二個求和符號則是統計在生成的候選句中,長度為n的單詞切片(n-gram,n-g)在標準譯文中出現的個數;分母的第一個求和符號與分子相同,而后一個求和符號則是統計候選句的所有長度為n的單詞切片的個數。故BLEU指標越高,則生成的文本與譯文越相近。
METEOR算法首先計算單個單詞的(1-gram)情況下的準確率P和召回率R(計算方式與BLEU、ROUGE類似),得到調和均值F值。
F=(α2+1)PR+αP(α=1)
(12)
METEOR將詞序納入評估范疇,如果生成句子中有很多與參考譯文所匹配的單詞(matched),但這兩個句子的詞序可能有很大的不同,句子被分成很多小的單詞切片(chunks)時才能找到相同的匹配單詞,因此設立基于詞序變化的罰分機制,當生成的候選句詞序與參考譯文不同時,進行適當的罰分,METEOR的懲罰項P通過式(13)得出。
P=γ(chunksmatched)θ(γ=0.5,θ=3)
(13)
最后,METEOR分數通過懲罰項和調和均值F值計算得出:
Meteor=(1-P)×F
(14)
除此之外,本文通過訓練一個單獨的文本分類模型clfbert來評估報告生成模型的肺炎診斷準確率(accuracy)。該模型是一個判定新冠肺炎的BERT[36]分類模型。clfbert采用了在大型中文數據集上預訓練的bert-base-Chinese參數,在COV-CTR數據集上微調,其在訓練集和驗證集集上分別取得了99.8%和98.6%的準確率,故將其采用作為肺炎診斷準確率的判定模型。具體統計肺炎診斷準確率(accuracy)的計算為
f(x,y)=1 clfbert(x)=y0 clfbert(x)≠y
(15)
Accuracy=∑ni=1f(candidatei,labeli)n
(16)
3.3 訓練過程
本文方法MedVLM在PyTorch 2.1.1框架上實現,運行服務器CPU為24核的AMD Ryzen Threadripper 3960X 24-core,內存為128 GB。通過一塊顯存為24 GB的NVIDIA RTX4090 GPU加速訓練。預訓練大模型微調6 000個訓練步,學習率設置為1E-4,數據批量大小為4,并采用了余弦退火學習率改變策略,使用Adam優化器在交叉熵損失下進行訓練。在推理過程中為了消除隨機性導致的影響,選取了固定的隨機種子。
其他的對比模型為了能夠得到更好的效果,在訓練時用到了更多的訓練步;除此之外,因為模型難以收斂的問題,在訓練CNN-Transformer模型時在數據集中加入了Flicker8K-CN數據進行補充。
3.4 實驗結果
3.4.1 微調策略比較
表1展示了通過不同微調手段訓練后模型生成影像報告的評估結果。評估數值包含了兩個部分,上半部分為全部測試集的均值統計數據,下半部分為通過使用Bootstrap的重采樣方法,在95%置信水平的條件下所估計的置信區間。表1顯示對于大語言模型不同模塊微調的效果有較大的差異。總體看來,凍結微調query-Transformer模塊效果最明顯,這是由于微調query-Transformer可以更好地將醫學影像的語義信息和大語言模型的文本嵌入對齊。此外,增加融入標簽信息的判別增強模塊可以全面提高每個模塊的微調效果。表1也顯示了加入該模塊前后的模型表現,通過增加判別增強模塊,雖然在對特征提取層最后一層進行凍結微調的基礎上融合標簽判別模塊,會導致肺炎診斷準確率略有下降,但幾乎所有的微調方法都在評估指標上有較大提升,特別是在文本生成指標上,這表明了增加判別增強模塊對于報告生成任務有巨大的幫助作用。
除此之外,在對大語言模型進行微調的幾個方法中,利用低秩自適應微調和提示微調法得到的效果都不是很好,采用凍結微調和融入判別增強的方法最好,但是凍結微調會導致大語言模型的參數改變,使其預訓練的部分能力失效,產生不可逆轉的災難性遺忘,使得大語言模型無法用于其他任務當中,可擴展性降低。凍結微調視覺Transformer加入判別增強的方法同樣也表現出不錯的結果,但其肺炎診斷準確率的指標為81.51%(79.67%~81.53%),較加入信息前的準確率有所下降,這是因為凍結微調視覺Transformer也會導致災難性遺忘,預訓練的醫學影像分類器十分依賴于視覺Transformer的輸出特征,但該方法對視覺Transformer的參數進行了調整,分類器的參數卻沒有隨之改變。故最終選擇凍結微調query-Transformer并加入判別增強的方法作為本文方法(MedVLM)。該方法在本文的四個評估指標中取得了最佳的效果,在肺炎診斷準確率的指標上表現最好,為87.67%(86.06%~87.39%)。
3.4.2 與傳統模型比較
本文將Show and Tell[15]、Show Attend and Tell[16]等模型所使用的CNN-RNN與CNN-Transformer的模型結構作為基線模型,并將MedVLM與其進行了比較。表2顯示了這些模型在COV-CTR測試數據集上的性能。文本生成任務指標和肺炎診斷準確率的結果一致表明,通過增加判別模塊來提取標簽信息可以幫助影像報告生成,MedVLM可以在醫學影像報告生成任務上比其他基線模型做得更好。
除此之外,微調預訓練大模型的方法所生成的結果更加魯棒,其他的模型在小樣本數據上進行訓練或多或少都產生了過擬合或欠擬合的現象。這是因為對于醫學領域來說,算法研究人員難以獲取大量公開的圖像報告對數據,除此之外,醫學影像報告是結構化的、具有大量的模板語言,所以模型從頭開始訓練時,模型容易學到捷徑解,這些捷徑解會十分類似醫生撰寫報告的模板語句;其次,大量的模板語言、單一的領域也會導致訓練模型前構建的詞匯表的詞匯量較小,這也會導致生成文本的多樣性銳減,最終也會導致模型的過擬合,產生捷徑解。
在訓練CNN-RNN和CNN-Transformer架構的兩種模型時,一開始僅采用了COV-CTR數據集進行訓練,CNN-RNN模型學到了捷徑解,所有測試集圖像數據生成的報告均相同;類似地,CNN-Transformer經過該數據集訓練后生成的文本包含了大量詞匯表中的〈unk〉單詞。為了解決數據缺少導致的基線模型效果差的問題,本文在COV-CTR數據集中加入了Fliker8K-CN數據集的全部數據來訓練基線模型。
大語言模型的參數是通過范圍廣、數量大、質量高的公開數據集訓練的,MedVLM通過微調的方式能夠很好地將大模型的文本生成能力遷移到對應的特定領域中,有效避免了過擬合和產生捷徑解的問題。凍結微調預訓練大模型的方法Med-VLM以及CNN-Transformer模型的部分影像報告生成效果如圖6所示。
在圖6中,下畫線的句子是與真實情況中的原始病變相匹配的病變描述。所選的CT切片圖像均來自于測試數據集。MedVLM的表現比CNN-Transformer方法更優,能夠匹配到更多與原始報告相似的描述。除此之外,CNN-Transformer的模型參數中記錄了一些錯誤的模板信息,例如“縱隔居中”“紋理增強”這種表述。
胸廓對稱,縱隔心影居中,縱隔內未見腫大淋巴結影,雙肺紋理增強,雙肺下葉見彌漫分布小圓形低密度影,雙側胸腔內未見異常密度影胸廓對稱,縱隔心影居中,縱隔內未見腫大淋巴結影,雙肺紋理增強,雙肺下葉見多發小結節影,其周圍見低密度影;雙側胸腔內未見異常密度影胸廓對稱,縱隔居中,縱隔腫大淋巴結影,紋理增強,下葉見多發小低密度影,邊緣清楚,支氣管通暢,胸腔內未見異常密度影
胸廓對稱,縱隔心影居中,縱隔內未見腫大淋巴結影,雙肺紋理增強,雙肺內未見異常密度影;葉段支氣管通暢,雙側胸腔內未見異常密度影,增強后肺內及縱隔內未見異常強化影。胸椎椎板旁見金屬影及其偽影胸廓對稱,縱隔心影居中,縱隔內未見腫大淋巴結影,雙肺紋理增強;葉段支氣管通暢,雙側胸腔內未見異常密度影。強化處見金屬影胸廓對稱,縱隔居中,縱隔腫大淋巴結影,紋理增強,內未見異常密度影;支氣管通暢,胸腔內未見異常密度影,增強后肺內及縱隔明確異常強化影
胸廓較對稱,縱隔心影居中,縱隔內未見腫大淋巴結影,雙肺胸膜下見網格影及磨玻璃影,邊緣較模糊,葉段支氣管通暢,雙側胸腔內未見異常密度影胸廓對稱,縱隔心影居中,縱隔內未見腫大淋巴結影,雙肺紋理增強,雙肺下葉見網格影及磨玻璃影,邊緣不清;其內見多發低密度影,范圍較廣,其內見小低密度影,葉段支氣管通暢,雙側胸腔內未見異常密度影胸廓對稱,縱隔居中,縱隔腫大淋巴結影,紋理增強,下葉胸膜磨玻璃影,邊緣,雙不大,支氣管通暢,胸腔內未見異常密度影
3.4.3 問題模板的效果
MedVLM方法中,大語言模型所接收的文本輸入包含了兩部分,即一部分圖像特征轉換而來的文本嵌入,另一部分是問題模板的文本嵌入,因此在文本輸入這里可以加入人工設定的問題模板。文本輸入為
〈img〉[Vec]〈/img〉Q:[Vec]A:
(17)
為了能夠更好地對齊到預訓練大語言模型的語義空間,本文在COV-CTR數據集的基礎上增加了對應的人工問題模板,如表3所示。通過增加人工問題模板,將該數據集構建成一個視覺問答(VQA)數據集。每一條數據的影像所見作為回答(answer),CT影像切片圖作為視覺圖像(visual),從人工問題模板中選取的模板作為問題(question)。式(17)中,被圖像標簽〈img〉〈/img〉包圍的[Vec]是MedVLM的影像特征提取模塊、判別增強模塊對CT影像切片圖運算后得到的嵌入向量,后續的Q和A分別代表question和answer,是問題模板的重要組成部分,中間的[Vec]則是問題模板中隨機抽取的問題經過語言模型的分詞器轉換而來的詞向量。
增加問題模板,是為了對齊模型預訓練參數所采用的問答數據集的語義空間。為了探究該方法是否有效,在使用問題模板和不使用問題模板的前提下各對MedVLM進行了一次實驗,具體的實驗結果如表4所示。表4顯示,MedVLM方法在增加了問題模板后,在所有指標上均有所提升,在診斷準確指標上有將近一倍的提升。因此,在訓練數據當中增加問題模板可以使模型的性能有所提升。
4 結束語
本文提出了一種基于微調預訓練大模型并融合判別增強的肺部CT影像報告生成方法——MedVLM。MedVLM充分利用了大語言模型的優勢,并借鑒了臨床醫生的工作流程,在模型中融入了影像分類標簽判別模塊,利用判別任務來約束生成任務,使得生成的影像報告更加準確和流暢。
在實驗過程中,對預訓練多模態大語言模型的不同模塊進行了微調,并新增了影像分類標簽判別模塊。凍結微調影像特征提取模塊、圖像-語言轉換模塊、大語言模型模塊的方法在多個指標上分別取得了最好的效果。但是凍結微調法會對原始參數造成影響,這會導致影像特征提取模塊和大語言模型模塊造成災難性遺忘,失去其原有的能力。在效果差異較不顯著的情況下,為避免災難性遺忘,以及更好地將醫學影像的語義信息對齊到大語言模型的文本嵌入,選擇微調圖像-語言轉換模塊的query-Transformer是最好的選擇。
盡管MedVLM方法能夠生成更加準確和流暢的影像報告,但這項工作仍然有一些不足之處。首先,醫學影像報告的價值在于能夠從中提取出相關的疾病信息,但目前缺乏對疾病信息準確性的專業評估手段,因此它所生成的報告未被完全信任;其次,微調模型時僅采用了單目標訓練的方法,單目標訓練可能導致模型對單一目標的過度擬合,使得模型在面對多變的實際情況時缺乏適應性和靈活性,多目標訓練則能夠解決該問題,使得模型更加魯棒。
未來可從以下幾個方面來改進MedVLM,進一步提高影像報告生成的質量:
a)融入信息量更大的先驗信息,通過知識圖譜(knowledge graph,KG)或是檢索增強生成(retrieval-augmented generation,RAG)[37]獲得醫學影像相關的額外信息融入生成過程。知識圖譜是一種結構化的語義知識庫,用于以圖結構來表達實體之間的關系,通過知識圖譜能查詢到與特定實體最相關的知識;檢索增強生成使用檢索技術從大量數據中找到與當前生成文本最相關的知識。通過這兩種方法,能夠查詢到有效幫助報告生成的醫學影像知識,使得模型生成的影像報告受到醫學知識的約束,更加準確和可靠。
b)構建醫學影像報告生成基準測試來測驗模型的性能。模型的性能不單單體現于生成單一種類影像報告的準確性,應當在多種類影像及其報告上經受測驗,除了肺部CT影像、胸部X射線外,需要構建包含乳腺超聲圖、心電圖、腦部核磁共振圖像等影像數據的數據集來進行基準測試。此外,生成報告的準確性也不僅體現在客觀指標上,除了利用相應的生成指標來評判影像報告的準確性,還應當邀請相關領域專家來進行評分。
c)通過組合圖像文本匹配、圖像文本對比學習、文本生成等任務,使用多目標的方式來進行模型的訓練,使得模型更加魯棒,且能夠適用于更多與醫學影像相關領域的任務。
參考文獻:
[1]Goergen S K,Pool F J,Turner T J,et al.Evidence-based guideline for the written radiology report:methods,recommendations and implementation challenges[J].Journal of Medical Imaging and Radiation Oncology,2013,57(1):1-7.
[2]Jing Baoyu,Xie Pengtao,Xing E.On the automatic generation of medical imaging reports[C]//Proc of the 56th Annual Meeting of the Association for Computational Linguistics.Stroudsburg,PA:Association for Computational Linguistics,2018:2577-2586.
[3]Wang Xiaosong,Peng Yifan,Lu Le,et al.TieNet:text-image embedding network for common thorax disease classification and reporting in chest X-rays[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Piscataway,NJ:IEEE Press,2018:9049-9058.
[4]Chen Zhihong,Song Yan,Chang T H,et al.Generating radiology reports via memory-driven transformer[C]//Proc of Conference on Empirical Methods in Natural Language Processing.Stroudsburg,PA:Association for Computational Linguistics,2020:1439-1449.
[5]Yan Bin,Pei Mingtao,Zhao Meng,et al.Prior guided transformer for accurate radiology reports generation[J].IEEE Journal of Biome-dical and Health Informatics,2022,26(11):5631-5640.
[6]You Di,Liu Fenglin,Ge Shen,et al.AlignTransformer:hierarchical alignment of visual regions and disease tags for medical report generation[M]//de Bruijne M,Cattin Philippe C,Cotin S,et al.Medical Image Computing and Computer Assisted Intervention.Cham:Sprin-ger,2021:72-82.
[7]Zhang Yixiao,Wang Xiaosong,Xu Ziyue,et al.When radiology report generation meets knowledge graph[C]//Proc of AAAI Conference on Artificial Intelligence.Palo Alto,CA:AAAI Press,2020:12910-12917.
[8]Li C Y,Liang Xiaodan,Hu Zhiting,et al.Knowledge-driven encode,retrieve,paraphrase for medical image report generation[C]//Proc of the 33rd AAAI Conference on Artificial Intelligence and the 31st Innovative Applications of Artificial Intelligence Conference and the 9th AAAI Symposium on Educational Advances in Artificial Intelligence.Palo Alto,CA:AAAI Press,2019:6666-6673.
[9]Wang Zhanyu,Liu Lingqiao,Wang Lei,et al.R2GenGPT:radiology report generation with frozen LLMs[J].Meta-Radiology,2023,1(3):100033.
[10]Endo M,Krishnan R,Krishna V,et al.Retrieval-based chest X-ray report generation using a pre-trained contrastive language-image model[C]//Proc of Machine Learning for Health.[S.l.]:PMLR,2021:209-219.
[11]Kisilev P,Walach E,Barkan E,et al.From medical image to automatic medical report generation[J].IBM Journal of Research and Development,2015,59(2-3):7.
[12]Shin H C,Roberts K,Lu Le,et al.Learning to read chest X-rays:recurrent neural cascade model for automated image annotation[C]//Proc of IEEE Conference on Computer Vision and Pattern Recognition.Piscataway,NJ:IEEE Press,2016:2497-2506.
[13]Goodfellow I,Pouget-Abadie J,Mirza M,et al.Generative adversarial networks[J].Communications of the ACM,2020,63(11):139-144.
[14]Vaswani A,Shazeer N,Parmar N,et al.Attention is all you need[C]//Proc of the 31st International Conference on Neural Information Processing Systems.New York:ACM Press,2017:6000-6010.
[15]Vinyals O,Toshev A,Bengio S,et al.Show and tell:a neural image caption generator[C]//Proc of IEEE Conference on Computer Vision and Pattern Recognition.Piscataway,NJ:IEEE Press,2015:3156-3164.
[16]Xu K,Ba J L,Kiros R,et al.Show,attend and tell:neural image caption generation with visual attention[C]//Proc of the 32nd International Conference on Machine Learning.[S.l.]:JMLR.org,2015:2048-2057.
[17]Wang Zhanyu,Liu Lingqiao,Wang Lei,et al.METransformer:radiology report generation by transformer with multiple learnable expert tokens[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Piscataway,NJ:IEEE Press,2023:11558-11567.
[18]Li Mingjie,Liu Rui,Wang Fuyu,et al.Auxiliary signal-guided know-ledge encoder-decoder for medical report generation[J].World Wide Web,2023,26(1):253-270.
[19]Yang Shuxin,Wu Xian,Ge Shen,et al.Radiology report generation with a learned knowledge base and multi-modal alignment[J].Medical Image Analysis,2023,86:102798.
[20]Tanida T,Müller P,Kaissis G,et al.Interactive and explainable region-guided radiology report generation[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Piscataway,NJ:IEEE Press,2023:7433-7442.
[21]Li C Y,Liang Xiaodan,Hu Zhiting,et al.Hybrid retrieval-generation reinforced agent for medical image report generation[C]//Proc of the 32nd International Conference on Neural Information Processing Systems.New York:ACM Press,2018:1537-1547.
[22]Xu Zhenghua,Xu Wenting,Wang Ruizhi,et al.Hybrid reinforced medical report generation with M-linear attention and repetition penalty[J].IEEE Trans on Neural Networks and Learning Systems,2023,99:1-15.
[23]Zhou Zeyu.Evaluation of ChatGPT’s capabilities in medical report generation[J].Cureus,2023,15(4):e37589.
[24]Radford A,Kim J W,Hallacy C,et al.Learning transferable visual models from natural language supervision[C]//Proc of the 38th International Conference on Machine Learning.[S.l.]:PMLR,2021:8748-8763.
[25]Li Junnan,Li Dongxu,Xiong Caiming,et al.BLIP:bootstrapping language-image pre-training for unified vision-language understanding and generation[C]//Proc of International Conference on Machine Learning.[S.l.]:PMLR,2022:12888-12900.
[26]Li Junnan,Li Dongxu,Savarese S,et al.BLIP-2:bootstrapping language-image pre-training with frozen image encoders and large language models[C]//Proc of International Conference on Machine Learning.[S.l.]:JMLR.org,2023:article No.814.
[27]Selivanov A,Rogov O Y,Chesakov D,et al.Medical image captioning via generative pretrained transformers[J].Scientific Reports,2023,13(1):4171.
[28]Ding Ming,Yang Zhuoyi,Hong Wenyi,et al.CogView:mastering text-to-image generation via Transformers[C]//Advances in Neural Information Processing Systems.Red Hook,NY:Curran Associates Inc.,2021:19822-19835.
[29]Fang Yuxin,Wang Wen,Xie Binhui,et al.EVA:exploring the limits of masked visual representation learning at scale[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Pisca-taway,NJ:IEEE Press,2023:19358-19369.
[30]Dai Bo,Fidler S,Urtasun R,et al.Towards diverse and natural image descriptions via a conditional GAN[C]//Proc of IEEE International Conference on Computer Vision.Piscataway,NJ:IEEE Press,2017:2989-2998.
[31]Li X L,Liang P.Prefix-Tuning:optimizing continuous prompts for ge-neration[C]//Proc of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing.Stroudsburg,PA:Association for Computational Linguistics,2021:4582-4597.
[32]Liu Xiao,Zheng Yanan,Du Zhengxiao,et al.GPT understands,too[J].AI Open,2024,5:208-215.
[33]Liu Xiao,Ji Kaixuan,Fu Yicheng,et al.P-Tuning:prompt tuning can be comparable to fine-tuning across scales and tasks[C]//Proc of the 60th Annual Meeting of the Association for Computational Linguistics.Stroudsburg,PA:Association for Computational Linguistics,2022:61-68.
[34]Hu J E,Shen Yelong,Wallis P,et al.LoRA:low-rank adaptation of large language models[EB/OL].(2021-06-17).https://arxiv.org/abs/2106.09685.
[35]Zhao Jinyu,Zhang Yichen,He Xuehai,et al.COVID-CT-Dataset:a CT scan dataset about COVID-19[EB/OL].(2020-05-30)[2024-08-04].https://arxiv.org/abs/2003.13865.
[36]Devlin J,Chang M-W,Lee K,et al.BERT:pre-training of deep bidirectional Transformers for language understanding[C]//Proc of Conference of the North American Chapter of the Association for Computational Linguistics:Human Language Technologies.Stroudsburg,PA:Association for Computational Linguistics,2019:4171-4186.
[37]Lewis P,Perez E,Piktus A,et al.Retrieval-augmented generation for knowledge-intensive NLP tasks[C]//Proc of the 34th International Conference on Neural Information Processing Systems.New York:ACM Press,2020:9459-9474.