摘要 目的:探索將卷積神經(jīng)網(wǎng)絡(luò)技術(shù)應(yīng)用于舌象照片分類任務(wù)的方法,從而實(shí)現(xiàn)機(jī)器學(xué)習(xí)模型對中醫(yī)臨床舌診行為的模擬。方法:使用人工標(biāo)注后的舌象照片數(shù)據(jù)集分別對YOLO和EfficientNet卷積神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練。我們在訓(xùn)練過程中綜合調(diào)試了各類校正算法與超參數(shù),兩模型成功提取圖片數(shù)據(jù)中的模式特征并形成不同特征映射, 使YOLO和EfficientNet分別實(shí)現(xiàn)實(shí)時舌體識別和中醫(yī)學(xué)舌象特征分類的功能。結(jié)果:深度學(xué)習(xí)模型對部分舌象特征典型的舌診照片識別精度較好,對芒刺舌、裂紋舌、齒痕舌的識別精確率分別為0.86、0.75和0.72。結(jié)論:卷積神經(jīng)網(wǎng)絡(luò)模型對幾種特征性舌象的識別能力較好,但對舌色、舌形、津液情況多分類的識別尚不理想,尚需進(jìn)一步改善使用舌診照片訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)模型的方法。
關(guān)鍵詞 中醫(yī)學(xué);人工智能;機(jī)器學(xué)習(xí);深度學(xué)習(xí);卷積神經(jīng)網(wǎng)絡(luò);舌診;舌象
隨著人們保健意識日益增強(qiáng),人們期望能夠隨時隨地了解自己的健康情況,移動醫(yī)療的研發(fā)項(xiàng)目也大量應(yīng)運(yùn)而生。近年來醫(yī)療信息數(shù)據(jù)庫的逐步建立和完善,網(wǎng)絡(luò)傳輸?shù)男畔⑼掏铝刻嵘?,?jì)算機(jī)硬件運(yùn)算能力的提高,數(shù)據(jù)分析(Data Analysis, DA)與機(jī)器學(xué)習(xí)(Machine Learning, ML)算法的更新,都使移動醫(yī)療從概念走進(jìn)現(xiàn)實(shí)。
中醫(yī)藥學(xué)在治未?。▉喗】禒顟B(tài))領(lǐng)域經(jīng)驗(yàn)豐富,在癥狀的識別與保健方法上具有獨(dú)特優(yōu)勢。疾病或亞健康的治療及保健效果都需建立在可靠診斷的基礎(chǔ)上,中醫(yī)診斷中歷來強(qiáng)調(diào)四診合參、辨證論治,也就是說,診斷的確定需建立在望、聞、問、切四種方式獲得的臨床資料之上。舌診是望診的組成部分,醫(yī)生舌診時所見的舌體及舌苔特征稱為舌象,舌診照片保存了舌象全部的資料,是我們本次研究的數(shù)據(jù)來源。醫(yī)生根據(jù)舌象對病情判斷的準(zhǔn)確度與判讀人員的經(jīng)驗(yàn)、知識水平和視覺敏感度相關(guān),不同醫(yī)生對同一舌象的判讀結(jié)果可存在較大差異0。對主觀因素對臨床資料解讀影響程度的評估方法,一直是中醫(yī)診斷客觀化的難題。
本次研究嘗試通過將DA與ML等數(shù)據(jù)處理技術(shù),對舌診照片中潛在的數(shù)據(jù)特征進(jìn)行識別和提取,計(jì)算機(jī)圖像處理研究人員發(fā)現(xiàn),卷積運(yùn)算可保證圖像中淺層特征充分識別和提取的前提下,大幅降低計(jì)算復(fù)雜度,現(xiàn)已成為計(jì)算機(jī)視覺常用的圖像特征提取方法。人工智能近年來的突破都與人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network, ANN)的發(fā)展密切相關(guān),ANN由大量的人工神經(jīng)元聯(lián)結(jié)、計(jì)算有關(guān),ANN在輸入數(shù)據(jù)信息后,不斷自適應(yīng)地根據(jù)輸入數(shù)據(jù)的統(tǒng)計(jì)學(xué)特征非線性地改變內(nèi)部權(quán)重,構(gòu)造出局部或全局最優(yōu)的模型。本研究以ANN與卷積運(yùn)算結(jié)合后的卷積神經(jīng)網(wǎng)絡(luò)(convolution neural network,CNN)為基礎(chǔ),通過有監(jiān)督的ML數(shù)據(jù)建模。因此,用于圖片對象識別和分類任務(wù)的模型權(quán)重調(diào)整不僅依賴于圖像語義特征的運(yùn)算結(jié)果,還會受人工標(biāo)注者主觀因素的影響。模型訓(xùn)練完畢后,我們將評估卷積神經(jīng)網(wǎng)絡(luò)模型自主舌診圖片識別和分類的精確度,分析不足之處,為進(jìn)一步完善模型的配置和訓(xùn)練方式奠定基礎(chǔ)。
近年來,中醫(yī)藥學(xué)與卷積神經(jīng)網(wǎng)絡(luò)技術(shù)結(jié)合應(yīng)用于舌診機(jī)器分類的試驗(yàn)研究已獲得一定進(jìn)步,董競方0通過將CNN網(wǎng)絡(luò)ResNet50應(yīng)用于對442例腫瘤患者舌象圖片的學(xué)習(xí),獲得齒痕舌、瘀斑舌自動識別模型,F(xiàn)-1達(dá)到91.88%。劉夢0通過Faster R-CNN與微調(diào)(fine tune)技術(shù)應(yīng)用于構(gòu)建齒痕舌、裂紋舌識別模型,對裂紋舌識別F-1為97.1%,對齒痕舌識別F-1為85.1%。
1 資料
研究的舌象照片來自網(wǎng)絡(luò)爬蟲程序,共計(jì)6373張。將全部照片分為兩個數(shù)據(jù)集,分別用于舌體識別模型與舌象分類兩個模型的訓(xùn)練與測試。識別模型數(shù)據(jù)集3500張,分類模型數(shù)據(jù)集共2873張。
2 方法
2.1數(shù)據(jù)預(yù)處理
2.1.1標(biāo)準(zhǔn)化 為了保證全部圖片符合CNN模型輸入尺寸要求,我們對舌象照片給予等比例縮放,并對照片的留白部分灰色填充。
2.1.2歸一化 為保證模型的穩(wěn)定性和訓(xùn)練效率,我們對圖片數(shù)據(jù)進(jìn)行歸一化處理,參考ImageNet圖庫中的統(tǒng)計(jì)數(shù)據(jù),RGB三個通道均值為0.485、0.456、0.406,標(biāo)準(zhǔn)差為0.229、0.224、0.225。
2.1.3數(shù)據(jù)擴(kuò)增 為了降低模型權(quán)重對訓(xùn)練集中數(shù)據(jù)的過擬合風(fēng)險(xiǎn),增加其泛化能力,可對數(shù)據(jù)集中數(shù)據(jù)進(jìn)行多重處理,增加圖片中信息的離散性,使訓(xùn)練集中數(shù)據(jù)更加貼近現(xiàn)實(shí)的情況。
2.1.4數(shù)據(jù)集分割 我們采取打亂數(shù)據(jù)集中圖片順序后,按比例分割的方法對數(shù)據(jù)集分割為訓(xùn)練集、驗(yàn)證集和測試集。舌體識別模型訓(xùn)練集:驗(yàn)證集為17:3,舌象分類模型訓(xùn)練集:驗(yàn)證集:測試集為4:1:1。
2.2 CNN模型 YOLO-v4和EfficientNet模型是當(dāng)前先進(jìn)的圖像處理卷積神經(jīng)網(wǎng)絡(luò)模型,其架構(gòu)先進(jìn),與多種先進(jìn)算法適配,無論在性能和精度上均處于先進(jìn)水平。其中,YOLO-v4模型運(yùn)算速度快,分類精度差,適用于舌體識別,EfficientNet-B2模型分類精度高,運(yùn)算速度慢,可用于舌象分類。CNN可以很好地對圖像信息的特征進(jìn)行提取和層層處理后,計(jì)算某圖片對不同分類的多重Logistic回歸結(jié)果,從而獲得概率估值,估值與閾值結(jié)合后判斷圖片的分類結(jié)果。
2.3 模型訓(xùn)練 為了提高訓(xùn)練效率并充分利用模型初始權(quán)重所包含的預(yù)訓(xùn)練集數(shù)據(jù)信息,訓(xùn)練過程聯(lián)合使用轉(zhuǎn)移學(xué)習(xí)與凍結(jié)學(xué)習(xí)的方法,YOLO-v4模型訓(xùn)練的第1~10期(epoch)凍結(jié)淺層,第11~200期解凍全層。
2.4 超參數(shù)設(shè)置
批量(batch size)是數(shù)據(jù)集每次批量輸入模型的一次性樣本量,每次迭代模型內(nèi)權(quán)重更新的方向和參數(shù)受每批數(shù)據(jù)信息影響,批量較大時模型權(quán)重調(diào)整更準(zhǔn)確,批量較小時,損失函數(shù)可能出現(xiàn)難收斂的問題。在滿足計(jì)算機(jī)元件滿載運(yùn)行的前提下,適當(dāng)提高批量至合適的大小。損失函數(shù)(loss function)是用來計(jì)算評估所建立數(shù)學(xué)模型與現(xiàn)實(shí)世界數(shù)據(jù)間差距的函數(shù)。優(yōu)化算法(optimization algorithm)是通過調(diào)整模型參數(shù)使損失函數(shù)逐步逼近最優(yōu)解的計(jì)算方法,包括對前次迭代模型參數(shù)數(shù)據(jù)的處理以及新參數(shù)調(diào)整幅度的計(jì)算。為了保證收斂和效率的平衡,本次試驗(yàn)對兩個模型均應(yīng)用余弦退火法(cosine anealing)的學(xué)習(xí)率調(diào)整策略(learning rate scheduler),利用余弦函數(shù)曲線特點(diǎn),使學(xué)習(xí)率隨訓(xùn)練迭代次數(shù)而改變,呈先緩、再速、終緩的速率變化特點(diǎn)。
2.5 訓(xùn)練結(jié)束 經(jīng)反復(fù)調(diào)試,將第115期的模型權(quán)重作為最終權(quán)重。
2.6 判定閾值 一般來說,輸入圖片對某分類的Logistic回歸結(jié)果越高,圖片更可能歸屬于該分類,概率閾值一般定為0.5。為了保證圖片在各分類維度下都有明確的歸類,本研究將各分類維度下的最高概率值定為分類閾值。
3 結(jié)果
3.1 測試指標(biāo) 為了評估模型對訓(xùn)練集外舌診照片的分類精度,反映模型對現(xiàn)實(shí)數(shù)據(jù)集的分類精度,我們對比了模型與普通醫(yī)生在測試集分類結(jié)果上的差異性。精確率(precision)越高,我們對分類陽性結(jié)果的把握越大;召回率(recall)越高,我們對陰性分類結(jié)果的把握越大,F(xiàn)-1是精確率、召回率的調(diào)和平均數(shù),用于綜合評估模型分類準(zhǔn)確度。
3.2 分類標(biāo)簽 以中醫(yī)診斷學(xué)中的類型劃分標(biāo)準(zhǔn)為基礎(chǔ),同時考慮到中醫(yī)臨床辨證的需求后,對舌診照片的分類標(biāo)簽設(shè)置為兩層,第一層分類將舌象特征劃分為幾個維度,分別為舌色、舌形、苔色、苔厚度、津液情況、齒痕舌、裂紋舌、芒刺舌8種。第二層分類在第一層的基礎(chǔ)上進(jìn)一步劃分,舌色分為淡白舌、淡紅舌、紅舌、絳舌、青紫舌5種;舌形分為痩薄舌、正常舌、胖大舌3種;津液情況分為燥苔、潤苔、滑苔3種;苔厚度分為厚苔與薄苔;苔色分為黃苔與白苔;齒痕舌、裂紋舌和芒刺舌均分為有、無兩類0。
3.3 測試結(jié)果
EfficientNet-B2模型對五分類精確率最差,三分類精確率次之,二分類項(xiàng)目精確率最好。模型對舌色分類淡紅舌的識別最好(F-1為0.53),但無法識別淡白舌。模型對舌形分類胖大舌的識別最好(F-1為0.59),痩薄舌較差(F-1為0.23)。模型對津液分類潤苔的識別最好(F-1為0.86),燥苔、滑苔的識別均不足(F-1分別為0.14和0.18);模型對苔厚度分類的厚苔識別較好(F-1為0.70)。模型對苔色分類黃苔識別較差(F-1為0.57)。模型對齒痕舌、裂紋舌的識別較好(F-1分別為0.72和0.73),對芒刺舌的識別略差(F-1為0.60)。
4 分析與討論
根據(jù)模型不同分類測試結(jié)果的差異,分析可能影響結(jié)果精確度的因素。
4.1 數(shù)據(jù)不均衡 模型對舌色、舌形、津液多分類的精確率不足,三分類維度下,模型對淡紅舌、正常舌形、潤苔的分類精確率都相對較高,這與訓(xùn)練數(shù)據(jù)集中各分類的樣本量分布情況基本一致(圖2~4)。根據(jù)CNN模型訓(xùn)練原理,訓(xùn)練數(shù)據(jù)集中占多數(shù)的分類會對模型權(quán)重產(chǎn)生較多影響,因此導(dǎo)致訓(xùn)練后模型對樣本量偏大類別的精確率高于其他分類。
4.2 數(shù)據(jù)預(yù)處理 模型對舌色、苔色的分類精度不理想,這可能是舌色、舌苔圖像信息相互干擾的結(jié)果。舌診照片來源廣泛,受拍攝時光源、拍攝角度、圖片采集設(shè)備影響,大量噪聲無法避免,模型對數(shù)據(jù)特征的提取難度增大。有研究0000顯示,舌體分割與苔質(zhì)分離技術(shù)可顯著提高舌象照片的分類精度,未來模型優(yōu)化時,可將舌體分割與苔質(zhì)分離技術(shù)用于舌象照片的預(yù)處理,降低圖像信息信噪比,改善模型分類精確率。
4.3 訓(xùn)練
圖5中兩數(shù)據(jù)集曲線隨迭代次數(shù)震蕩分離,說明模型對兩數(shù)據(jù)集的分類精確率不同,我們考慮可能存在過擬合(overfitting)。為了使模型對訓(xùn)練集外數(shù)據(jù)能有較好泛化性,應(yīng)在訓(xùn)練時同時監(jiān)測模型對驗(yàn)證集的損失函數(shù),必要時提前停止訓(xùn)練,避免模型對訓(xùn)練集過擬合。但是,提前停止又有模型欠擬合的風(fēng)險(xiǎn)。我們共迭代訓(xùn)練200期,最后選擇第115期模型的權(quán)重,損失函數(shù)為0.5744。
4.4 閾值設(shè)置 模型對測試集中照片舌色分類時,訓(xùn)練集和測試集中共140張人工標(biāo)注的淡白舌照片,沒有1張被成功識別,回顧訓(xùn)練后模型對標(biāo)注為淡白舌照片的Logistic回歸結(jié)果,其概率一直在0.05左右震蕩,遠(yuǎn)低于其他舌色的閾值,因此無法被正確歸類。造成這種結(jié)果的原因很多,舌色分類維度下的不同舌色設(shè)定不同閾值可能是解決方法之一。
5. 展望
根據(jù)試驗(yàn)數(shù)據(jù)結(jié)果,可以發(fā)現(xiàn)將ML和AI技術(shù)應(yīng)用于舌診照片分類任務(wù)是存在可行性的,目前模型對舌象照片二分類任務(wù)的精確率是相對可靠的。在此基礎(chǔ)上,學(xué)習(xí)與借鑒AI的最新技術(shù),可不斷改進(jìn)舌診分類AI模型的訓(xùn)練方法包括:確保數(shù)據(jù)集類別的均衡,使用舌體切割與苔質(zhì)分離技術(shù)對舌診照片數(shù)據(jù)集預(yù)處理,監(jiān)測模型訓(xùn)練過程中的損失函數(shù)與權(quán)重變化,避免訓(xùn)練的過擬合與欠擬合,使用優(yōu)化算法重新設(shè)定閾值。相信在不遠(yuǎn)將來,必將獲得精確率更高的舌診分類模型。
參考文獻(xiàn):
[1]石強(qiáng),王憶勤, 郎慶波,等. 13名中醫(yī)師對69例被觀察者苔色觀察結(jié)果的分析[C]// 全國辨證論治研討會. 中華中醫(yī)藥學(xué)會, 2004.
[2]董競方、黃金昶、王建云.卷積神經(jīng)網(wǎng)絡(luò)算法在腫瘤患者舌象識別中的應(yīng)用[J]. 北京中醫(yī)藥, 2020, v.39(11):106-109+115.
[3]劉夢,王曦廷, 周璐,等.基于深度學(xué)習(xí)與遷移學(xué)習(xí)的中醫(yī)舌象提取識別研究[J]. 中醫(yī)雜志, 2019, 60(10):30-35.
[4]覃海松.舌診定量化中圖像處理相關(guān)方法研究[D]. 中南大學(xué), 2014.
[5]邵尤偉.基于深度學(xué)習(xí)的智能舌診方法研究[D]. 2018.
[6]劉國正.卷積神經(jīng)網(wǎng)絡(luò)在中醫(yī)舌象分類模型中的應(yīng)用研究[D].
[7]李宗潤.基于深度學(xué)習(xí)技術(shù)的舌體分割模型研究與舌象智能化應(yīng)用探索[D].成都中醫(yī)藥大學(xué),2020.
[8]杜春慧.中醫(yī)舌質(zhì)特征的機(jī)器學(xué)習(xí)模型研究[D].電子科技大學(xué),2020.
作者簡介:于飛(1984.4-)男,漢族,北京,醫(yī)學(xué)AI研究員,碩士,研究方向:中醫(yī)文獻(xiàn)學(xué)。
(深圳市予恩智能科技有限公司?廣東深圳?518000)