国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種單樣本農(nóng)作物病害識(shí)別方法

2023-03-07 01:46:44任維鑫曹新亮白宗文
無(wú)線電工程 2023年2期
關(guān)鍵詞:農(nóng)作物損失病害

任維鑫,曹新亮,白宗文

(延安大學(xué) 物理與電子信息學(xué)院,陜西 延安 716000)

0 引言

農(nóng)作物發(fā)生病害會(huì)嚴(yán)重破壞其正常生理機(jī)能,極大減少產(chǎn)量,因此,農(nóng)作物病害的識(shí)別、檢測(cè)和預(yù)警是保證農(nóng)作物產(chǎn)量穩(wěn)定、保障農(nóng)民收益的重要手段。傳統(tǒng)的農(nóng)作物病害識(shí)別主要依靠農(nóng)業(yè)專家實(shí)地考察,隨著人工智能尤其是深度學(xué)習(xí)的快速發(fā)展,農(nóng)作物病蟲(chóng)害識(shí)別的相關(guān)研究也逐步進(jìn)入新階段。目前,已經(jīng)有許多研究成功地將深度卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用到農(nóng)作物病蟲(chóng)害識(shí)別領(lǐng)域[1-6],并在其數(shù)據(jù)集上取得了相對(duì)理想的準(zhǔn)確率。雖然已經(jīng)有許多研究者著手構(gòu)建農(nóng)作物病害數(shù)據(jù)集,但是現(xiàn)有數(shù)據(jù)集依然很難滿足基于傳統(tǒng)深度學(xué)習(xí)的病害識(shí)別方法對(duì)數(shù)據(jù)量的需求,無(wú)法保證模型的通用性和泛化性。究其原因,一方面農(nóng)作物病害數(shù)據(jù)集與自然場(chǎng)景數(shù)據(jù)集不同,自然場(chǎng)景下的通用數(shù)據(jù)集可以借助網(wǎng)絡(luò)等設(shè)備快速地收集與標(biāo)注,但是農(nóng)作物病害數(shù)據(jù)集由于其標(biāo)注時(shí)需要許多專業(yè)知識(shí),往往需要農(nóng)業(yè)專家才能完成標(biāo)注,這無(wú)疑會(huì)導(dǎo)致較高的人力物力成本;另一方面,農(nóng)作物病害呈現(xiàn)種類多、單類樣本偶發(fā),甚至有些病害發(fā)病與地域呈現(xiàn)強(qiáng)關(guān)聯(lián)性的特點(diǎn),這導(dǎo)致構(gòu)建一個(gè)巨大的、具有百億規(guī)模的、種類豐富完備的農(nóng)作物病害數(shù)據(jù)集是十分困難的。因此,從小樣本檢測(cè)的視角出發(fā)研究解決農(nóng)作物病害識(shí)別問(wèn)題的方法具有非常重要的實(shí)際應(yīng)用意義。雖然已經(jīng)有研究者在這方面取得了一些進(jìn)展[7],但主要是基于微調(diào)的方法,這種方法在極少樣本的情況下性能有所下降,且推理時(shí)需要通過(guò)微調(diào)更新模型參數(shù)。本文主要針對(duì)這一問(wèn)題,開(kāi)發(fā)了一種基于孿生網(wǎng)絡(luò)的度量學(xué)習(xí)方法,以解決單樣本農(nóng)作物病害識(shí)別問(wèn)題,該方法具有推理時(shí)需要特定病害樣本量小、不用更新模型參數(shù)的優(yōu)點(diǎn)。

1 少樣本學(xué)習(xí)與對(duì)比學(xué)習(xí)

人類可以從很少的樣本中學(xué)習(xí),但機(jī)器從少樣本中學(xué)習(xí)的能力與人的差距依然非常大,深度學(xué)習(xí)框架對(duì)于數(shù)據(jù)與算力有著海量的需求,在少樣本任務(wù)上,最先進(jìn)的深度學(xué)習(xí)方法甚至不如簡(jiǎn)單的機(jī)器學(xué)習(xí)模型。研究著重關(guān)注少樣本學(xué)習(xí)中的少樣本分類問(wèn)題,對(duì)于少樣本分類,有以VBF[8]為代表的基于生成模型的方法,尋求借助中間變量z對(duì)后驗(yàn)概率p(x|y)進(jìn)行建模;有基于判別的方法,直接為少樣本分類任務(wù)T建模后驗(yàn)概率p(x|y);最直接的方法就是使用任務(wù)T的數(shù)據(jù)訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型。但是由于T的數(shù)據(jù)太少,這種方法一般容易陷入過(guò)擬合。第2種是基于度量學(xué)習(xí)[9],通過(guò)在輔助數(shù)據(jù)集DA上學(xué)習(xí)一個(gè)相似性度量S(·,·),從而遷移到任務(wù)T上。第3種是基于元學(xué)習(xí)的方法[10-11],它利用DA構(gòu)造許多類似于任務(wù)T的任務(wù),并采用跨任務(wù)訓(xùn)練策略提取一些可轉(zhuǎn)移的模型、算法或參數(shù)。其中,Snell等[10]的方法可以看做是度量學(xué)習(xí)與元學(xué)習(xí)的結(jié)合,同時(shí)它也可以被理解為對(duì)比學(xué)習(xí),其核心思想就是吸引正的樣本對(duì),排斥負(fù)的樣本對(duì),該方法是采樣同類樣本作為正樣本對(duì),不同類的作為負(fù)樣本對(duì)。而另一種是基于自監(jiān)督的對(duì)比學(xué)習(xí)方法[12-15],這種方法通過(guò)將每幅圖像看作不同的類別,一副圖像的多張數(shù)據(jù)增強(qiáng)圖像為同一類,與其他圖像以及其他圖像的數(shù)據(jù)增強(qiáng)圖像為不同類,從而構(gòu)造類別標(biāo)簽以監(jiān)督模型訓(xùn)練。Tian 等[16]揭示了在少樣本學(xué)習(xí)任務(wù)中一個(gè)好的嵌入是非常重要的,并基于此構(gòu)建了不基于元學(xué)習(xí)框架且不用微調(diào)的少樣本分類基線。 Chowdhury等[17]使用一組預(yù)訓(xùn)練的嵌入模型作為特征提取器庫(kù),使用微調(diào)的方法達(dá)到了很好的跨域遷移少樣本分類效果。Wang等[18]發(fā)現(xiàn)了使用交叉熵?fù)p失的監(jiān)督學(xué)習(xí)模型,其遷移性能不如自監(jiān)督學(xué)習(xí)模型的原因是交叉熵?fù)p失監(jiān)督的模型在特征提取之后沒(méi)有使用MLP進(jìn)行特征映射,基于此觀察,構(gòu)建了遷移性能更好的監(jiān)督學(xué)習(xí)模型,并在少樣本分類任務(wù)上進(jìn)行驗(yàn)證。

2 方法

2.1 任務(wù)設(shè)置

2.2 算法

2.2.1 模型與損失函數(shù)

本文所提出的框架結(jié)構(gòu)如圖1所示。將來(lái)自圖像x的2個(gè)隨機(jī)數(shù)據(jù)增強(qiáng)的視圖xa,和xb作為孿生網(wǎng)絡(luò)的輸入。這2個(gè)視圖由主干網(wǎng)絡(luò)(使用卷積神經(jīng)網(wǎng)絡(luò))和MLP實(shí)現(xiàn)的投影器組成的編碼器網(wǎng)絡(luò)f處理。編碼器f在2個(gè)視圖之間共享參數(shù)。MLP實(shí)現(xiàn)的預(yù)測(cè)器h將一個(gè)視圖的輸出變換到另一個(gè)視圖域。分類頭c作為訓(xùn)練輔助器的角色存在,具體地,在訓(xùn)練過(guò)程中,經(jīng)過(guò)編碼器f處理之后的2個(gè)視圖的特征還會(huì)送入分類頭以獲得類別向量,推理時(shí)分類頭將被舍棄。訓(xùn)練與推理的實(shí)現(xiàn)細(xì)節(jié)將在2.2.2節(jié)予以說(shuō)明。

圖1 模型架構(gòu)Fig.1 Model architecture

對(duì)于相似性匹配,使用余弦相似度作為度量。具體地,將2個(gè)輸入向量表示為p1=h(f(xa))和z2=f(xb),p2,z1同理。使用自監(jiān)督的對(duì)比學(xué)習(xí)和基于構(gòu)造監(jiān)督標(biāo)簽與二值交叉熵的距離損失2部分進(jìn)行優(yōu)化。

在對(duì)比學(xué)習(xí)部分,最小化其負(fù)余弦相似度加常數(shù)項(xiàng):

(1)

式中,‖·‖為l2歸一化,該式值域?yàn)閇0,2]。與BYOL[14]和SimSiam[15]一致,構(gòu)造對(duì)稱損失:

(2)

在batch維度上對(duì)每一對(duì)樣本使用該公式并在batch維度上取平均值作為總損失。

和SimSiam一致,對(duì)比學(xué)習(xí)中對(duì)孿生網(wǎng)絡(luò)的其中一支使用停止梯度操作,則將式(1)修改為:

D(p1,stopgrad(z2)),

(3)

式中,stopgrad()表示停止梯度操作,這意味著z2在這一項(xiàng)中被當(dāng)作常數(shù)。類似地,式(2)被修改為:

(4)

從表達(dá)式看,L1損失只拉近正樣本之間的距離,未能拉遠(yuǎn)正樣本與負(fù)樣本之間的距離,對(duì)比學(xué)習(xí)的經(jīng)典方法MoCo[12]和SimCLR[13]的對(duì)比損失都有拉遠(yuǎn)正樣本與負(fù)樣本之間距離的能力,但MoCo引入了動(dòng)量編碼器組件,SimCLR需要大批量才能正常工作,對(duì)顯存有極高的要求。為了使損失具有拉遠(yuǎn)正負(fù)樣本之間距離的能力且不引入其他限制,本文設(shè)計(jì)了基于構(gòu)造監(jiān)督標(biāo)簽與二值交叉熵的距離損失。

為了與對(duì)比學(xué)習(xí)損失更好地兼容,基于構(gòu)造監(jiān)督標(biāo)簽與二值交叉熵的距離損失依然沿用余弦相似度作為距離度量,考慮映射函數(shù)σ,使得σ(D(·,·))的值域空間落入[0,1],簡(jiǎn)便起見(jiàn),取σ為常系數(shù)0.5。

此外,設(shè)計(jì)出shuffle和equal兩個(gè)組件,具體為:

z3,z4,y′=shuffle(z1,z2,y)。

(5)

(6)

綜上,基于構(gòu)造監(jiān)督標(biāo)簽與二值交叉熵的距離損失被表示為:

a=σ(D(p1,stopgrad(z4))),

(7)

(8)

b=σ(D(p2,stopgrad(z3))),

(9)

(10)

(11)

Tian 等[16]證明了使用交叉熵?fù)p失對(duì)模型進(jìn)行監(jiān)督學(xué)習(xí)可以學(xué)到不錯(cuò)的特征提取能力,因此本文設(shè)計(jì)了分類頭c(圖1中的虛線部分)進(jìn)行輔助學(xué)習(xí),對(duì)于分類頭的設(shè)計(jì),遵循Wang等[18]的設(shè)置,使用2層MLP做特征映射,使用一層MLP做輸出,這區(qū)別于He等[19]傳統(tǒng)卷積模型在卷積之后只使用一層MLP作為輸出層的設(shè)置。其分類損失函數(shù)表達(dá)式為:

(12)

式中,CrossEntropy( )表示交叉熵?fù)p失。訓(xùn)練模型時(shí)使用的損失函數(shù)表示為:

L=λ1L1+λ2L2+λ3L3,

(13)

式中,λi為損失加權(quán)系數(shù)。

2.2.2 訓(xùn)練與推理方法:

訓(xùn)練過(guò)程遵循常規(guī)的有監(jiān)督深度學(xué)習(xí)模型訓(xùn)練范式:每個(gè)epoch以批量的形式(默認(rèn)批量大小為512)從DA中不放回地采樣數(shù)據(jù),經(jīng)過(guò)數(shù)據(jù)增強(qiáng)后送入圖1所示的模型,以式(13)作為損失函數(shù),使用動(dòng)量隨機(jī)梯度下降法(Stochastic Grdient Descent with Momentum,SGDM)優(yōu)化模型參數(shù),迭代多個(gè)epoch(默認(rèn)為100)。使用的數(shù)據(jù)增強(qiáng)方式包括:隨機(jī)裁剪;隨機(jī)改變圖像亮度、對(duì)比度、飽和度、色調(diào);隨機(jī)高斯濾波;隨機(jī)水平反轉(zhuǎn);隨機(jī)轉(zhuǎn)為灰度圖。本文默認(rèn)使用ResNet18[19]作為主干網(wǎng)絡(luò)(Backbone)。訓(xùn)練完成之后保存模型結(jié)構(gòu)和參數(shù),作為預(yù)訓(xùn)練模型。

推理流程為:加載預(yù)訓(xùn)練模型,刪掉分類頭,剩余部分作為相似性度量器S(·,·), 此時(shí),該孿生網(wǎng)絡(luò)的輸入為一對(duì)圖像,輸出為這一對(duì)圖像之間的余弦相似度,范圍為[-1,1],相似度越接近1,表明2個(gè)圖像之間越相似。將Dtrn作為支持圖像集Su,將Dtst中的圖像作為查詢圖像q,于是,任意Dtst中的圖像的類別為:

(14)

即:將支持圖像集中與查詢圖像q相似度最高的圖像s對(duì)應(yīng)的類別分配給q。

3 實(shí)驗(yàn)

3.1 數(shù)據(jù)集

本文使用AI Challenger 2018病蟲(chóng)害分類數(shù)據(jù)集[20]作為DA,它是由上海新客科技為競(jìng)賽提供的農(nóng)作物葉子圖像數(shù)據(jù)集:標(biāo)注圖片5萬(wàn)張,包含10種植物(蘋(píng)果、櫻桃、葡萄、柑桔、桃、草莓、番茄、辣椒、玉米和馬鈴薯)的27種病害,合計(jì)61個(gè)分類(按“物種-病害-程度”分)。其中與蘋(píng)果有關(guān)的類別有:蘋(píng)果健康、蘋(píng)果黑星病一般、蘋(píng)果黑星病嚴(yán)重、蘋(píng)果灰斑病、蘋(píng)果雪松銹病一般以及蘋(píng)果雪松銹病嚴(yán)重。

本文從周敏敏[21]創(chuàng)建的蘋(píng)果葉片數(shù)據(jù)集中采樣DT。該蘋(píng)果葉片病理數(shù)據(jù)集數(shù)據(jù)集由西北農(nóng)林科技大學(xué)制作,分別在西北農(nóng)林科技大學(xué)白水蘋(píng)果試驗(yàn)站、洛川蘋(píng)果試驗(yàn)站和慶城蘋(píng)果試驗(yàn)站進(jìn)行采集。數(shù)據(jù)集主要在晴天光線良好的條件下獲取,部分圖像在陰雨天進(jìn)行采集,不同的采集條件進(jìn)一步增強(qiáng)了數(shù)據(jù)集的多樣性。數(shù)據(jù)集包括斑點(diǎn)落葉病、褐斑病、花葉病、灰斑病以及銹病等5種常見(jiàn)的蘋(píng)果葉面病理圖像數(shù)據(jù),數(shù)量分別為:斑點(diǎn)落葉病5 343張,褐斑病5 655 張, 灰斑病 4 810 張,花葉病 4 875 張, 銹病 5 694 張。采樣方法為:每類隨機(jī)采樣1張作為Dtrn,剩余圖像中選取與Dtrn的拍攝場(chǎng)景一致的11 727張圖像作為Dtst,共同構(gòu)成DT。其樣例如圖2所示。

圖2 蘋(píng)果病害樣例Fig.2 Sample images of apple diseases

3.2 試驗(yàn)

本文使用模型在下游特定任務(wù)T的測(cè)試集Dtst上的準(zhǔn)確率作為衡量方法性能的指標(biāo)。

構(gòu)建比較基線:在DA上使用交叉熵?fù)p失監(jiān)督與本方法相同的主干網(wǎng)絡(luò)進(jìn)行訓(xùn)練獲得預(yù)訓(xùn)練模型。

不微調(diào)的基線(基線1):加載預(yù)訓(xùn)練模型后刪掉分類頭,將其作為圖像到向量的編碼器,得到編碼向量后,使用歐幾里得距離作為距離度量,其分類方式為:

(15)

式中,‖·,·‖表示2個(gè)向量之間的歐幾里得距離,值域?yàn)閇0,+∞],越接近0表示2個(gè)向量越相似。

微調(diào)的基線(基線2):加載預(yù)訓(xùn)練模型后修改分類頭使之適應(yīng)任務(wù)T,在Dtrn上使用微調(diào)的方法更新7個(gè)批次,批量大小為5,將此分類模型作為微調(diào)法[7]的比較基線。

與之類似,本文算法在Dtrn上使用微調(diào)的方法更新7個(gè)批次(批量大小為5)之后再執(zhí)行推理,作為本文算法使用微調(diào)法獲得的結(jié)果。

本文所提算法的結(jié)果及消融試驗(yàn)如表1所示。

表1 算法結(jié)果及消融試驗(yàn)Tab.1 Algorithm results and ablation test 單位:%

在以上試驗(yàn)中,對(duì)于式(7)中的加權(quán)系數(shù),均使用1。

4 結(jié)束語(yǔ)

本文提出了一種基于孿生網(wǎng)絡(luò)的度量模型,并使用對(duì)比學(xué)習(xí)損失,基于構(gòu)造監(jiān)督標(biāo)簽與二值交叉熵的距離損失,交叉熵?fù)p失聯(lián)合訓(xùn)練,經(jīng)過(guò)測(cè)試檢驗(yàn),在單樣本農(nóng)作物病害識(shí)別任務(wù)上取得了很好的性能,具有對(duì)特定任務(wù)的數(shù)據(jù)需求量少、不用在特定任務(wù)上重新訓(xùn)練的優(yōu)點(diǎn),具有實(shí)際應(yīng)用的潛力。但本文方法依然無(wú)法識(shí)別出與任務(wù)T相關(guān)但未在Dtrn中出現(xiàn)的類別,下一步將致力于研究開(kāi)放世界的少樣本農(nóng)作物病害識(shí)別問(wèn)題。

猜你喜歡
農(nóng)作物損失病害
土壤污染與農(nóng)作物
軍事文摘(2024年6期)2024-02-29 10:01:50
高溫干旱持續(xù) 農(nóng)作物亟須“防護(hù)傘”
俄發(fā)現(xiàn)保護(hù)農(nóng)作物新方法
夏季農(nóng)作物如何防熱害
早春養(yǎng)羊需防六大病害
少問(wèn)一句,損失千金
小麥常見(jiàn)三種病害咋防治
葡萄病害周年防治歷
胖胖損失了多少元
果樹(shù)休眠期咋防病害
申扎县| 库车县| 文水县| 平定县| 江永县| 额济纳旗| 临澧县| 武清区| 怀集县| 余庆县| 通江县| 平舆县| 陆河县| 防城港市| 定安县| 桑植县| 十堰市| 江源县| 彭阳县| 措勤县| 南陵县| 昔阳县| 龙陵县| 新沂市| 称多县| 海丰县| 彰化县| 安岳县| 麦盖提县| 温州市| 弥勒县| 宝坻区| 寿阳县| 苏尼特左旗| 九寨沟县| 特克斯县| 成安县| 柏乡县| 措勤县| 瑞金市| 旅游|