本發(fā)明涉及圖像分類的,尤其涉及一種基于知識(shí)蒸餾的水稻病害圖像分類方法及其系統(tǒng)。
背景技術(shù):
1、知識(shí)蒸餾是一種有效的模型壓縮和加深深度神經(jīng)網(wǎng)絡(luò)的技術(shù),采取教師-學(xué)生架構(gòu),通過從具有較好性能的大規(guī)模教師中提取知識(shí)改進(jìn)小型學(xué)生網(wǎng)絡(luò),目標(biāo)是將教師網(wǎng)絡(luò)的類概率分布和真實(shí)標(biāo)簽相結(jié)合形成軟標(biāo)簽,來監(jiān)督學(xué)生的預(yù)測(cè)。而自蒸餾是從網(wǎng)絡(luò)中間層或者前訓(xùn)練階段中提取知識(shí)促進(jìn)無教師蒸餾,也即從自身中提取知識(shí)訓(xùn)練自身,不需要其他教師模型的輔助,從而提供有效的增量信息給學(xué)生模型,以提升學(xué)生模型效率。現(xiàn)有的自蒸餾工作通常關(guān)注于通過使用各種策略最小化之間教師和學(xué)生之間的最終預(yù)測(cè)來試驗(yàn)結(jié)果驅(qū)動(dòng)蒸餾,而這些方法忽略了對(duì)自蒸餾也有價(jià)值的特征信息的提取和其結(jié)構(gòu)化關(guān)系的傳遞?,F(xiàn)有的byot方法構(gòu)建附加分類器形成輔助分支實(shí)現(xiàn)最深分類器知識(shí)遷移到附加分類器,從而增強(qiáng)中間模塊的能力。tf-kd模型構(gòu)建標(biāo)簽平滑的軟目標(biāo)中獲得虛擬教師,并從中受益。盡管自蒸餾中有sad方法試圖在網(wǎng)絡(luò)內(nèi)部執(zhí)行自上而下和逐層的注意力蒸餾,以從注意力圖中提取有用的上下文信息來自我學(xué)習(xí)。但是,這個(gè)方法從實(shí)例本身出發(fā)學(xué)習(xí)網(wǎng)絡(luò)內(nèi)不同層的特征知識(shí),模型更傾向于學(xué)習(xí)與對(duì)象無關(guān)的瑣碎解決方案,這些解決方案很難概括,因此容易造成類與類之間特征混淆。
2、因此可以看出,現(xiàn)有技術(shù)中的知識(shí)蒸餾方法存在局限性:1)合適教師的訓(xùn)練成本。傳統(tǒng)的知識(shí)蒸餾采取兩階段蒸餾方式,需要額外訓(xùn)練教師模型,同時(shí)造成了大量的訓(xùn)練成本和存儲(chǔ)需求以尋找更優(yōu)秀的教師。2)未能捕獲豐富的特征信息。具體而言,現(xiàn)有自蒸餾方法僅從自身的模型輸出預(yù)測(cè)中提取知識(shí),而忽視了特征中潛藏的寶貴信息:樣本與相同類別樣本具有較強(qiáng)的相似性,而與不同類別樣本之間具有區(qū)分性。
技術(shù)實(shí)現(xiàn)思路
1、本部分的目的在于概述本發(fā)明的實(shí)施例的一些方面以及簡(jiǎn)要介紹一些較佳實(shí)施例。在本部分以及本技術(shù)的說明書摘要和發(fā)明名稱中可能會(huì)做些簡(jiǎn)化或省略以避免使本部分、說明書摘要和發(fā)明名稱的目的模糊,而這種簡(jiǎn)化或省略不能用于限制本發(fā)明的范圍。
2、鑒于上述現(xiàn)有一種基于知識(shí)蒸餾的水稻病害圖像分類方法及其系統(tǒng)存在的問題,提出了本發(fā)明。
3、因此,本發(fā)明目的是提供一種基于知識(shí)蒸餾的水稻病害圖像分類方法及其系統(tǒng),其為了解決現(xiàn)有的自蒸餾技術(shù)一般使用各種策略最小化之間教師和學(xué)生模型之間的最終預(yù)測(cè)進(jìn)行蒸餾,這些方法忽略了對(duì)自蒸餾也有價(jià)值的特征信息的提取,同時(shí)忽略了同類樣本間更相似的類別關(guān)系的問題。
4、為解決上述技術(shù)問題,本發(fā)明提供如下技術(shù)方案:
5、步驟s1中,獲取樣本數(shù)據(jù);即獲取圖像樣本數(shù)據(jù)及標(biāo)簽數(shù)據(jù);
6、步驟s2,構(gòu)建知識(shí)蒸餾網(wǎng)絡(luò)模型;且知識(shí)蒸餾網(wǎng)絡(luò)模型采取卷積神經(jīng)網(wǎng)絡(luò);
7、步驟s3,構(gòu)建教師-學(xué)生模型;將當(dāng)前訓(xùn)練階段的網(wǎng)絡(luò)模型作為學(xué)生模型,前一訓(xùn)練階段的網(wǎng)絡(luò)模型作為教師模型;
8、步驟s4,提取樣本特征;經(jīng)過預(yù)處理的水稻病害圖像輸入卷積神經(jīng)網(wǎng)絡(luò)中,得到當(dāng)前訓(xùn)練階段的特征和logits輸出,即學(xué)生模型的中間特征和logits輸出,同理前一訓(xùn)練階段得到的特征和logits輸出,則是教師模型的中間特征和logits輸出;
9、步驟s5,構(gòu)建類原型特征;
10、步驟s6,構(gòu)建相似性預(yù)測(cè);
11、步驟s7,構(gòu)建類內(nèi)緊湊逐步蒸餾損失;計(jì)算學(xué)生的相似性預(yù)測(cè)與真實(shí)標(biāo)簽之間的交叉熵?fù)p失;
12、步驟s8,構(gòu)建自適應(yīng)軟標(biāo)簽;軟化教師logits,形成教師的模型預(yù)測(cè),并采取自適應(yīng)策略將其與教師的相似性預(yù)測(cè)相結(jié)合,形成集成教師的預(yù)測(cè),將集成教師的預(yù)測(cè)與真實(shí)標(biāo)簽進(jìn)行自適應(yīng)調(diào)整,形成自適應(yīng)軟標(biāo)簽;
13、步驟s9,構(gòu)建自適應(yīng)自蒸餾損失;計(jì)算自適應(yīng)軟標(biāo)簽與學(xué)生logits的交叉熵?fù)p失;
14、步驟s10,構(gòu)建總損失函數(shù);總損失包括類內(nèi)緊湊逐步蒸餾損失和自適應(yīng)自蒸餾損失;
15、步驟s11,訓(xùn)練當(dāng)前訓(xùn)練階段的網(wǎng)絡(luò)模型;使用總損失函數(shù)訓(xùn)練學(xué)生模型,并反向傳播,更新學(xué)生模型的參數(shù),得到成熟的學(xué)生模型;
16、步驟s12中,水稻病害圖像實(shí)時(shí)分類;獲取實(shí)時(shí)的水稻病害圖像,并將水稻病害圖像輸入學(xué)生模型,學(xué)生模型輸出分類結(jié)果。
17、作為本發(fā)明所述一種基于知識(shí)蒸餾的水稻病害圖像分類方法的一種優(yōu)選方案,其中:所述s1過程中,對(duì)獲取的水稻病害圖像樣本數(shù)據(jù)進(jìn)行預(yù)處理,其中預(yù)處理方式包括:圖像的裁剪,縮放,旋轉(zhuǎn)。
18、作為本發(fā)明所述一種基于知識(shí)蒸餾的水稻病害圖像分類方法的一種優(yōu)選方案,其中:所述s5過程中,構(gòu)建類原型特征,將輸出的中間特征中相同類別的特征進(jìn)行求和平均,得到每個(gè)類的原型特征,當(dāng)前階段的原型特征稱為學(xué)生類原型特征,前一階段的原型特征稱為教師類原型特征,其計(jì)算公式為:
19、
20、其中,yi表示標(biāo)簽,fi表示學(xué)生模型的特征,i(·)是標(biāo)簽匹配的函數(shù),當(dāng)標(biāo)簽為k時(shí),其值為1,反之為0;學(xué)生模型和教師模型的類原型特征構(gòu)建方式相同。
21、作為本發(fā)明所述一種基于知識(shí)蒸餾的水稻病害圖像分類方法的一種優(yōu)選方案,其中:所述s6過程中,構(gòu)建相似性預(yù)測(cè),具體方式為,將學(xué)生中間特征與教師每個(gè)類的原型特征構(gòu)建相似性向量,并將其軟化形成學(xué)生的相似性預(yù)測(cè),即;
22、首先構(gòu)建樣本特征與每個(gè)類原型的相似性;
23、
24、再構(gòu)建相似性預(yù)測(cè);
25、
26、其中,表示教師模型的類原型特征,fi表示學(xué)生模型的特征,||·||是l2范數(shù)(歐幾里得范數(shù)),di=[di,1,di,2,…,di,k]是第i個(gè)學(xué)生樣本的相似性向量,τ是溫度超參數(shù),k為樣本類別的數(shù)量。
27、作為本發(fā)明所述一種基于知識(shí)蒸餾的水稻病害圖像分類方法的一種優(yōu)選方案,其中:所述s7過程中,構(gòu)建類內(nèi)緊湊逐步蒸餾損失,其計(jì)算公式如下:
28、
29、其中,表示學(xué)生相似性預(yù)測(cè)。
30、作為本發(fā)明所述一種基于知識(shí)蒸餾的水稻病害圖像分類方法的一種優(yōu)選方案,其中:所述s8過程中,構(gòu)建自適應(yīng)軟標(biāo)簽,主要由構(gòu)建教師模型預(yù)測(cè)、構(gòu)建集成教師的預(yù)測(cè)和構(gòu)建自適應(yīng)軟標(biāo)簽組成,具體構(gòu)建過程如下;
31、首先構(gòu)建模型預(yù)測(cè);
32、
33、其中,zi=[zi,1,zi,2,…,zi,k]表示logits輸出,pi=[pi,1,pi,2,…,pi,k]表示模型預(yù)測(cè),學(xué)生和教師的模型預(yù)測(cè)構(gòu)建方式相同;
34、再構(gòu)建集成教師的預(yù)測(cè);
35、
36、其中,wi是自適應(yīng)調(diào)整相似性預(yù)測(cè)的權(quán)重;表示教師相似性預(yù)測(cè);表示教師模型預(yù)測(cè);
37、再構(gòu)建自適應(yīng)軟標(biāo)簽;
38、s=(1-εm)y+εm·e;
39、其中,εm是自適應(yīng)調(diào)整當(dāng)前訓(xùn)練階段中集成教師預(yù)測(cè)的權(quán)重。
40、作為本發(fā)明所述一種基于知識(shí)蒸餾的水稻病害圖像分類方法的一種優(yōu)選方案,其中:所述步驟s9過程中,構(gòu)建自適應(yīng)自蒸餾損失,
41、其計(jì)算方式為:lasd=h(s,ps);
42、其中,ps是表示學(xué)生模型預(yù)測(cè)。
43、作為本發(fā)明所述一種基于知識(shí)蒸餾的水稻病害圖像分類方法的一種優(yōu)選方案,其中:所述s10過程中,構(gòu)建總損失函數(shù),其計(jì)算方式為類內(nèi)緊湊逐步蒸餾損失和自適應(yīng)自蒸餾損失之和,即:
44、ltotal=lasd+λ·lpicc。
45、作為本發(fā)明所述一種基于知識(shí)蒸餾的水稻病害圖像分類方法的一種優(yōu)選方案,其中:所述s11過程中,在更新學(xué)生模型的參數(shù),具體方式如下:
46、使用步驟總損失函數(shù)訓(xùn)練學(xué)生模型,反向傳播計(jì)算梯度,并更新網(wǎng)絡(luò)參數(shù),參數(shù)為:
47、
48、其中,θt表示教師模型的參數(shù),θs表示學(xué)生模型的參數(shù),γ表示學(xué)習(xí)率,表示對(duì)總損失函數(shù)ltotal計(jì)算學(xué)生模型參數(shù)的梯度。
49、一種應(yīng)用于上述基于知識(shí)蒸餾的水稻病害圖像分類方法的系統(tǒng),其中:該系統(tǒng)包括以下功能模塊:
50、水稻病害圖像樣本數(shù)據(jù)獲取模塊,用于獲取水稻病害圖像樣本數(shù)據(jù)及標(biāo)簽數(shù)據(jù);知識(shí)蒸餾網(wǎng)絡(luò)模型構(gòu)建模塊,用于構(gòu)建知識(shí)蒸餾網(wǎng)絡(luò)模型,采用卷積神經(jīng)網(wǎng)絡(luò);教師學(xué)生模型構(gòu)建模塊,當(dāng)前訓(xùn)練階段的網(wǎng)絡(luò)模型作為學(xué)生模型,前一訓(xùn)練階段的網(wǎng)絡(luò)模型作為教師模型;
51、樣本特征提取模塊,經(jīng)過預(yù)處理的水稻病害圖像輸入卷積神經(jīng)網(wǎng)絡(luò)中,得到當(dāng)前訓(xùn)練階段的特征和logits輸出,即學(xué)生模型的中間特征和logits輸出,同理前一訓(xùn)練階段得到的特征和logits輸出,則是教師模型的中間特征和logits輸出;
52、類原型特征構(gòu)建模塊,將輸出的中間特征中相同類別的特征進(jìn)行求和平均,得到每個(gè)類的原型特征,當(dāng)前階段的原型特征稱為學(xué)生類原型特征,前一階段的原型特征稱為教師類原型特征;
53、相似性預(yù)測(cè)構(gòu)建模塊,將學(xué)生中間特征與教師每個(gè)類的原型特征構(gòu)建相似性矩陣,并將其軟化形成學(xué)生的相似性預(yù)測(cè);
54、類內(nèi)緊湊逐步蒸餾損失構(gòu)建模塊,計(jì)算學(xué)生的相似性預(yù)測(cè)與真實(shí)標(biāo)簽之間的交叉熵?fù)p失;
55、自適應(yīng)軟標(biāo)簽構(gòu)建模塊,將教師的logits輸出進(jìn)行軟化,形成教師的模型預(yù)測(cè),并采取自適應(yīng)策略將其與教師的相似性預(yù)測(cè)相結(jié)合,形成集成教師的預(yù)測(cè)。將集成教師的預(yù)測(cè)與真實(shí)標(biāo)簽進(jìn)行自適應(yīng)調(diào)整,形成自適應(yīng)軟標(biāo)簽;
56、自適應(yīng)自蒸餾損失構(gòu)建模塊,計(jì)算自適應(yīng)軟標(biāo)簽與學(xué)生logits的交叉熵?fù)p失;
57、總損失函數(shù)構(gòu)建模塊,用于構(gòu)建總損失函數(shù),總損失包括類內(nèi)緊湊逐步蒸餾損失和自適應(yīng)自蒸餾損失;
58、網(wǎng)絡(luò)模型訓(xùn)練模塊,用于使用總損失函數(shù)訓(xùn)練當(dāng)前訓(xùn)練階段的網(wǎng)絡(luò)模型,并反向傳播,更新學(xué)生模型的參數(shù),得到當(dāng)前訓(xùn)練階段成熟的網(wǎng)絡(luò)模型;
59、水稻病害圖像實(shí)時(shí)分類模塊,用于獲取實(shí)時(shí)的水稻病害圖像,并將水稻病害圖像輸入當(dāng)前階段訓(xùn)練的網(wǎng)絡(luò)模型,學(xué)生模型輸出分類結(jié)果。
60、本發(fā)明的有益效果:通過挖掘相鄰訓(xùn)練階段模型的教師和學(xué)生特征之間的類別關(guān)系,構(gòu)建特征層面的類概率,促進(jìn)模型在特征空間中形成聚類效應(yīng)。同時(shí),自適應(yīng)結(jié)合教師模型輸出的類概率、特征層面類概率和真實(shí)標(biāo)簽,生成類內(nèi)緊湊的軟目標(biāo)作為自蒸餾軟目標(biāo)。隨著訓(xùn)練的不斷進(jìn)行,模型不僅在相同類別上訓(xùn)練得更加緊湊,而且能夠模仿有實(shí)力的教師的高表現(xiàn)。而且本發(fā)明是在相鄰訓(xùn)練階段的模型中進(jìn)行逐步的自蒸餾訓(xùn)練,不需要額外的教師訓(xùn)練,具有低成本和高性能的優(yōu)點(diǎn)。