李萬虎 吳麗麗
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò);AlexNet;中藥材;圖像識別
中圖分類號:TP391 文獻標志碼:A
0 引言(Introduction)
我國是中藥材的發(fā)源地,藥材資源豐富,并且95%以上的中藥材為植物藥材。中藥歷經(jīng)數(shù)千年發(fā)展,展現(xiàn)了它強大的生命力和我國醫(yī)藥特色優(yōu)勢。新型冠狀病毒感染暴發(fā)以來,中醫(yī)藥一直在抗擊感染中發(fā)揮了重要作用,一些中醫(yī)藥療法在病例的救治和康復(fù)中起到良好效果。因此,我們要堅定不移地推動中醫(yī)藥的發(fā)展。
目前,傳統(tǒng)圖像處理和卷積神經(jīng)網(wǎng)絡(luò)均可用于中藥材識別。孫鑫等[1]通過構(gòu)建白薇等50種常見中藥飲片圖像數(shù)據(jù)庫,運用Softmax損失訓(xùn)練網(wǎng)絡(luò)模型,平均識別精度達到70%。屈凌波等[2]利用人工神經(jīng)網(wǎng)絡(luò)對中藥進行模式識別,預(yù)測率最高能達到93.7%。劉勍等[3]介紹了圖像處理技術(shù)對中藥材的檢驗過程,然后對中藥材圖像鑒定與識別技術(shù)面臨的問題及發(fā)展前景做了探討與展望。徐飛等[4]通過正交試驗優(yōu)化卷積神經(jīng)網(wǎng)絡(luò),其圖像識別準確率為90.9%。劉加峰等[5]建立的中藥飲片圖像檢測識別系統(tǒng),平均識別率高于80%,但只能識別三種中藥飲片。
分析以上研究可知,在對中藥材識別分類研究上,上述方法在特定的中藥鑒定場景中取得了較好的效果,但對細節(jié)特征的關(guān)注度不高,鑒別準確度仍然不足。同時,網(wǎng)絡(luò)模型設(shè)計復(fù)雜,難以遷移,其鑒定結(jié)果不可量化,與實際應(yīng)用存在差距。本文提出的基于改進型AlexNet的中藥材圖像識別模型可以解決以上問題。
1 材料與方法(Materials and methods)
1.1 數(shù)據(jù)集
本研究以百部(Radix stemonae)、白芍(Paeonia lactiflorapalls)、枸杞(Wolfberry)、黃精(Rhizoma polygonati)、姜黃(Turmeric)、蒲黃(Cattail pollen)、蛇床子(Fructus cnidii)、益母草(Motherwort)、郁金(Curcuma turmeric)、枳殼片(Aurantiumaurantium)共10種中藥材為對象,數(shù)據(jù)集通過Python爬蟲算法爬取百度圖片里的相關(guān)關(guān)鍵字,每一類選取500張,共5 000張構(gòu)成數(shù)據(jù)集,按照占圖像總數(shù)量的80%、10%、10%的比例劃分出訓(xùn)練集4 000張、驗證集500張、測試集500張,將該數(shù)據(jù)集命名為CMM,如圖1所示[6]。
1.2 數(shù)據(jù)增強
由于數(shù)據(jù)量較小,為了避免訓(xùn)練過擬合,因此需要對原始數(shù)據(jù)進行增強處理。本研究使用Keras(由Python編寫的開源人工神經(jīng)網(wǎng)絡(luò)庫)中的ImageDataGenerator函數(shù)對圖片進行隨機縮放、隨機剪切、水平翻轉(zhuǎn),對數(shù)據(jù)進行擴增,再經(jīng)過數(shù)據(jù)篩選和數(shù)據(jù)分布均衡調(diào)整,最終構(gòu)成每類1 000張,共10 000張圖片的新數(shù)據(jù)集,增強后的數(shù)據(jù)集命名為CMM1,按照各占圖像總數(shù)量的比例進行劃分,訓(xùn)練集占比為80%,即8 000張,驗證集占比為10%,即1 000張,測試集占比為10%,即1 000張,如表1所示。
1.3 AlexNet模型
目前,有多種網(wǎng)絡(luò)模型可用于圖像分類,例如AlexNet卷積神經(jīng)網(wǎng)絡(luò)、VGGNet卷積神經(jīng)網(wǎng)絡(luò)、ResNet殘差卷積神經(jīng)網(wǎng)絡(luò)等。查閱相關(guān)文獻,分析評估參數(shù)量、可用性、計算資源需求量、易用性等因素,最終將AlexNet網(wǎng)絡(luò)模型作為本研究的基礎(chǔ)模型,其模型結(jié)構(gòu)如圖2所示。
1.5 AlexNet網(wǎng)絡(luò)的改進設(shè)計
為了構(gòu)建準確率高和收斂快的網(wǎng)絡(luò)模型,本文提出了改進型AlexNet的中藥材圖像識別的網(wǎng)絡(luò)模型,具體的改進設(shè)計介紹如下。
1.5.1 加入嶺回歸分析
我國的中藥材中有95%以上是植物藥材,它們的圖像特征等信息有很多的相似之處,如果使用傳統(tǒng)模型訓(xùn)練,就會出現(xiàn)過擬合現(xiàn)象,導(dǎo)致識別準確率較低。為了解決該問題,本文研究引入嶺回歸分析,它可以在一定程度上弱化過擬合問題,對多重共性信息的數(shù)據(jù)具有較好的分析能力。
1.5.2 改進AlexNet模型
通過文獻[11]發(fā)現(xiàn),原AlexNet網(wǎng)絡(luò)模型提取特征能力最強的是第三層和第四層,為了提高分類的精確度,對模型的改進和優(yōu)化重點集中在這兩層。經(jīng)過多次實驗發(fā)現(xiàn),可以在第三層之后插入一層,即新的第三層(如圖3所示),新的第三層與原來的第三層結(jié)構(gòu)一致,由于增加了卷積操作,因此可以過濾更多的有效特征,因此特征提取能夠更精確。新的第三層卷積核的大小為3*3,數(shù)量為192×2=384個,步長為1,使用ReLU激活函數(shù)。輸入特征圖像先擴展一個像素,大小為15×15;輸出特征圖像大小為(15-3)/1+1=13,即13×13×384。
1.5.3 引入遷移學習
為了進一步加快訓(xùn)練速度,使模型更快收斂,同時為了提高模型識別的精確度,本研究在模型訓(xùn)練時,引入遷移學習的訓(xùn)練方法。遷移學習可以使用其他大批量數(shù)據(jù)訓(xùn)練所得模型用于訓(xùn)練新數(shù)據(jù),由于大部分數(shù)據(jù)和任務(wù)間存在相關(guān)性,因此可以減少訓(xùn)練步驟,縮短訓(xùn)練時間,并增加數(shù)據(jù)量,達到降低過擬合程度的目的。
2 結(jié)果驗證(Result verification)
2.1 實驗平臺
本研究基于PyTorch平臺搭建,PyTorch主要用于自然語言處理,它是一個基于Torch的Python開源機器學習庫,不但能夠?qū)崿F(xiàn)GPU加速,而且能支持動態(tài)神經(jīng)網(wǎng)絡(luò)。實驗所用的軟硬件環(huán)境如下:Windows 10操作系統(tǒng),AMD i5-10210u,16GB內(nèi)存,Python 3.8,JetBrains PyCharm 2018.3.7 x64,GPU 租用AutoDL AI算力云,配置的CPU為14 核2.00 GHz,Intel(R)Xeon(R)Gold 6330,內(nèi)存為30 GB。
2.2 實驗驗證
本文將每個類別800張,共10個類別,總數(shù)量為8 000張中藥材圖像輸入改進后的AlexNet網(wǎng)絡(luò)模型中進行訓(xùn)練,如圖4所示,橫坐標迭代次數(shù)代表權(quán)重更新的次數(shù),左側(cè)縱坐標為訓(xùn)練過程中真實值與預(yù)測值之間產(chǎn)生的損失值,右側(cè)縱坐標為Top1值。模型訓(xùn)練輸入的batch_size 為128,圓圈曲線代表Top1值,倒三角曲線代表損失值。損失值向0.0趨近,Top1 值向1.0趨近。在訓(xùn)練過程中,就總體趨勢而言,隨著Top1值的不斷增大,損失值不斷減小,在部分階段雖然有反彈的趨勢,但是隨著訓(xùn)練迭代次數(shù)的增加,模型最終克服了局部最優(yōu)的局面,向全局最優(yōu)的趨勢發(fā)展。損失值和Top1值最終變得平緩并趨于穩(wěn)定。
3 網(wǎng)絡(luò)模型對比實驗(Comparison experimenton network models)
為了驗證改進型AlexNet網(wǎng)絡(luò)模型性能的優(yōu)越性,采用損失值圖[如圖5(a)所示]和Top1值圖[如圖5(b)所示]與AlexNet原網(wǎng)絡(luò)模型和ResNet50網(wǎng)絡(luò)模型進行對比。圖5(a)中圓圈代表改進后的AlexNet,黑色填充正方形代表AlexNet原網(wǎng)絡(luò)模型,菱形代表ResNet50網(wǎng)絡(luò)模型,三個網(wǎng)絡(luò)模型都采用相同的訓(xùn)練參數(shù)。從圖5可以清晰地看出,本實驗提出的改進型AlexNet網(wǎng)絡(luò)的平均識別準確率優(yōu)于原AlexNet網(wǎng)絡(luò)模型和ResNet50網(wǎng)絡(luò)模型,這證明了改進型AlexNet網(wǎng)絡(luò)模型具有一定的優(yōu)越性。
為了進一步評估改進后的AlexNet網(wǎng)絡(luò)模型、AlexNet原網(wǎng)絡(luò)模型和ResNet50網(wǎng)絡(luò)模型三個網(wǎng)絡(luò)模型的表現(xiàn),又選取準確率指標對三個網(wǎng)絡(luò)模型進行評優(yōu)。如圖6所示,正方形代表改進后的AlexNet,三角形代表AlexNet原網(wǎng)絡(luò)模型,圓圈代表ResNet50網(wǎng)絡(luò)模型,選取測試數(shù)據(jù)集中10%的圖片作為實驗評估時選用的數(shù)據(jù)集,劃分數(shù)據(jù)集時先打亂數(shù)據(jù)集后再劃分,從而確保實驗的說服力。在驗證時共設(shè)置100個迭代輪數(shù),每經(jīng)歷5個輪數(shù)開啟一次驗證。由圖6可以看出,改進型AlexNet網(wǎng)絡(luò)模型應(yīng)用于中藥材圖像識別較AlexNet原網(wǎng)絡(luò)模型和ResNet50網(wǎng)絡(luò)模型更具優(yōu)勢。
完成模型評估后,開始對訓(xùn)練好的模型進行測試,測試集是數(shù)據(jù)集總數(shù)的10%,測試結(jié)果以十行十列混淆矩陣的形式展現(xiàn),如圖7所示,橫坐標為每一類中藥材預(yù)測的分類百分比,縱坐標為真實分類百分比。橫坐標百分比相加結(jié)果應(yīng)為1,代表對每一類中藥材圖像正確預(yù)測與錯誤預(yù)測之和。圖7中橫縱坐標重合處對角線代表分類正確的結(jié)果,顏色越深,表示分類準確率越高。
為了進一步驗證訓(xùn)練模型的有效性與準確性,除使用混淆矩陣,還引入Precision(精度)、Recall(召回率)、F1 Score(平衡F分數(shù))三個指標評價模型,結(jié)果見表2。
4 結(jié)論(Conclusion)
本研究以百部等10種中藥材為研究對象,構(gòu)建了10種中藥材數(shù)據(jù)集,通過改進AlexNet原網(wǎng)絡(luò)模型,得到了一種用于百部、白芍、枸杞、黃精、姜黃、蒲黃、蛇床子、益母草、郁金和枳殼片等中藥材圖像識別的卷積神經(jīng)網(wǎng)絡(luò)模型,圖像識別準確率為95.4%,同時解決了模型難以遷移和鑒定結(jié)果不可量化的問題。下一步,計劃繼續(xù)提高AlexNet網(wǎng)絡(luò)模型的訓(xùn)練速度和識別精度,主要從兩個方面入手,一是增加本研究構(gòu)建的AlexNet網(wǎng)絡(luò)模型的中藥材識別品種,二是繼續(xù)探索增加新的卷積層數(shù),并優(yōu)化卷積層與池化層之間的連接。
作者簡介:
李萬虎(1990-),男,碩士生。研究領(lǐng)域:圖像識別,人工智能與數(shù)據(jù)挖掘。
吳麗麗(1979-),女,博士,副教授。研究領(lǐng)域:圖像識別,人工智能與數(shù)據(jù)挖掘。本文通信作者。