摘 要:針對在圖像語義分割任務(wù)中獲取像素標簽困難和分割數(shù)據(jù)集類別不平衡的問題,提出了一種基于改進雙重深度Q網(wǎng)絡(luò)的主動學習語義分割模型CG_D3QN。引入了一種結(jié)合決斗網(wǎng)絡(luò)結(jié)構(gòu)以及門控循環(huán)單元的混合網(wǎng)絡(luò)結(jié)構(gòu),通過減輕Q值過估計問題和有效地利用歷史狀態(tài)信息,提高了策略評估的準確性和計算效率。在CamVid和Cityscapes數(shù)據(jù)集上,該模型相較于基線方法,所需的樣本標注量減少了65.0%,同時對于少樣本標簽的類別,其平均交并比提升了約1%~3%。實驗結(jié)果表明,該模型能夠顯著減少樣本標注成本并有效地緩解了類別不平衡問題,且對于不同的分割網(wǎng)絡(luò)也具有適用性。
關(guān)鍵詞:深度強化學習;主動學習;圖像語義分割;決斗網(wǎng)絡(luò);門控循環(huán)單元
中圖分類號:TP391 文獻標志碼:A 文章編號:1001-3695(2024)11-019-3337-06
doi:10.19734/j.issn.1001-3695.2024.02.0070
Active learning semantic segmentation model based on improved double deep Q network
Li Lin, Liu Zheng, Nan Hai?, Zhang Zewei, Wei Ye
(College of Computer Science amp; Engineering, Chongqing University of Technology, Chongqing 400054, China)
Abstract:This paper proposed an active learning semantic segmentation model named CG_D3QN, based on an improved dual deep Q-network, to address the challenges of acquiring pixel labels and class imbalances in image semantic segmentation tasks. The model used a hybrid network structure that integrates a dueling network architecture with gated recurrent units. This structure alleviated the overestimation of Q-value and efficiently utilized historical state information, thereby improving the accuracy and computational efficiency of policy evaluation. On the CamVid and Cityscapes datasets, the model reduced the required sample annotation volume by 65.0% and enhanced the mean intersection over union by approximately 1% to 3% for classes with fewer sample labels. Experimental results show that the model significantly reduces the cost of sample annotations and effectively mitigates class imbalance issues, while being adaptable to different segmentation networks.
Key words:
deep reinforcement learning; active learning; image semantic segmentation; dueling network; gate recurrent unit
0 引言
語義分割(semantic segmentation)作為一種像素級圖像語義標簽分類任務(wù),其旨在對圖像中的每個像素進行分類,以實現(xiàn)對圖像語義區(qū)域的準確劃分[1]。語義分割在自動駕駛[2]、醫(yī)學影像、增強現(xiàn)實等熱門人工智能領(lǐng)域發(fā)揮著重要作用,而當前研究主要面臨兩大挑戰(zhàn)。首先,相較于其他圖像分類任務(wù),語義分割數(shù)據(jù)集需要大量高質(zhì)量的像素標簽,特別是在一些標注門檻較高的領(lǐng)域,如醫(yī)學圖像和國防軍事等,對標注者的專業(yè)性要求較高,并且在手工標注的過程中容易產(chǎn)生錯誤,其標注工作需要耗費大量時間和人力成本。其次,語義分割結(jié)果可能受到分割數(shù)據(jù)集中數(shù)據(jù)不平衡的影響,例如在醫(yī)學圖像[3,4]中,數(shù)據(jù)樣本的年齡和性別比例偏差較大,這種樣本數(shù)量的偏差會導致模型性能偏向于數(shù)量較多的類別。鑒于許多語義分割研究都面臨數(shù)據(jù)規(guī)模龐大和標注成本高的挑戰(zhàn),主動學習作為一種降低模型對數(shù)據(jù)依賴性的方法備受關(guān)注[5]。
主動學習(active learning,AL)[6]也稱為查詢學習或最優(yōu)實驗設(shè)計,其核心思想是通過自適應地選擇信息量最大的樣本進行標注和訓練,以在不影響模型性能的前提下降低標注成本。主動學習方法大致分為兩類:一類為傳統(tǒng)的手工設(shè)計的啟發(fā)式方法[7,8],其選擇策略一般是針對于特定的研究目標或數(shù)據(jù)集,由專家的專業(yè)知識或近似理論標準制定。另一類是數(shù)據(jù)驅(qū)動的方法[9,10],其構(gòu)建基于先前的主動學習經(jīng)驗,并通過使用標注數(shù)據(jù)對主動學習策略進行訓練。由于主動學習的過程可以被模擬成序列決策過程,即通過與環(huán)境的交互來學習制定一個序列化決策,而強化學習(reinforcement learning,RL)[11]為訓練主動學習查詢策略的方法提供了可能性。
目前,相比圖像分類[12],語義分割主動學習的研究較少,傳統(tǒng)的主動學習語義分割主要依賴于手工設(shè)計的啟發(fā)式方法,其中最基本的主動學習算法是隨機采樣策略(random),該策略通過隨機選擇未標注樣本池中的樣本進行標注。Cai等人[13]提出了一種基于標記圖像區(qū)域的成本設(shè)計獲取函數(shù),然而在實際應用中,這些信息并非是靜態(tài)固定的,從而限制了其適用性。Mackowiak等人[14]提出了一種不考慮圖像標記成本,而是基于區(qū)域的方法來處理大量分割樣本的主動學習算法。Gal等人[15]提出了一種基于預測熵的決策不確定性主動學習(BALD),使用Bayesian卷積神經(jīng)網(wǎng)絡(luò)來進行主動學習。盡管上述方法在解決語義分割領(lǐng)域取得了一些進展,但它們是針對特定數(shù)據(jù)集的方法,限制了模型的泛化能力和魯棒性。
隨著深度學習領(lǐng)域的發(fā)展,在強化學習領(lǐng)域中引入了深度神經(jīng)網(wǎng)絡(luò),衍生出深度強化學習(deep reinforcement learning,DRL)。當前使用強化學習的主動學習方法通常采用每次標注一個樣本的策略[16,17],直到達到樣本預算。然而,在處理大規(guī)模語義分割數(shù)據(jù)集時,在每次標注后都需要重新更新分割網(wǎng)絡(luò)并計算相應獎勵,導致效率較低。Sener等人[18]提出了基于核心集合選擇的主動學習算法,該算法逐次選擇一批具有代表性的樣本,提高了標注效率。Dhiman等人[19]通過結(jié)合深度強化學習(DRL)、主動學習與循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),提出了用于流媒體應用的自動標注模型,提高了檢索的精度和性能。Chan等人[20]通過加權(quán)后驗類概率和先驗類概率減少了對分割網(wǎng)絡(luò)的影響。Casanova等人[21]提出了基于強化學習的主動學習方法(Rails),這是一種從數(shù)據(jù)中發(fā)現(xiàn)主動學習策略的通用方法,但在其主動學習過程中,仍面臨標簽類別不平衡問題。
為了解決上述問題,本文提出了一種數(shù)據(jù)驅(qū)動的主動學習語義分割方法,通過從未標記圖像集合中選擇并請求最相關(guān)區(qū)域的標簽,實現(xiàn)了在僅有少量帶注釋的像素標簽樣本下訓練高性能的分割網(wǎng)絡(luò)。主要貢獻如下:
a)提出了一種基于改進雙重深度Q網(wǎng)絡(luò)的主動學習語義分割模型。該模型將基于池的主動學習過程轉(zhuǎn)換為馬爾可夫決策過程,使用基于價值的深度強化學習方法,訓練出能夠有效篩選一批標注圖像區(qū)域的策略網(wǎng)絡(luò)。該方法的設(shè)計關(guān)鍵在于通過選擇區(qū)域而非整個圖像來提取圖像的關(guān)鍵信息。
b)針對訓練主動學習查詢策略面臨Q值過估計問題,引入決斗雙重深度Q網(wǎng)絡(luò)(dueling double deep Q network,Dueling DDQN)[22]。同時,針對圖像類別不平衡問題,模型引入了卷積神經(jīng)網(wǎng)絡(luò)(CNN)和門控循環(huán)單元(gate recurrent unit,GRU)[23]的混合網(wǎng)絡(luò)結(jié)構(gòu)(CG),通過提取連續(xù)狀態(tài)特征和降低算法對當前狀態(tài)輸入信息的依賴,提高了算法的魯棒性。
c)使用CamVid和Cityscapes數(shù)據(jù)集對主動學習模型進行了性能評估。實驗結(jié)果顯示,與主動學習基線算法相比,模型的查詢網(wǎng)絡(luò)在數(shù)量較少的類別上提出了更多的標注請求,從而提高了效率并減輕類別不平衡的問題。同時,將最新的語義分割網(wǎng)絡(luò)應用到主動學習模型中,并在CamVid數(shù)據(jù)集上和原始語義分割算法進行了對比。實驗結(jié)果顯示,模型在結(jié)合最新的語義分割模型后的性能優(yōu)于原始語義分割模型。
1 語義分割模型描述
1.1 問題定義
給定k張未標記的樣本,將其放入未標注樣本池Ut,主動學習語義分割方法從Ut中選擇樣本區(qū)域進行標注,并同時學習一個查詢網(wǎng)絡(luò),使其作為判別選擇標注區(qū)域的方法。將標注后的樣本放入已標注樣本池Lt中,使用Lt中的樣本訓練語義分割模型,迭代直到達到標注預算B。為了達到減少標注預算和類別不平衡的影響,樣本的選擇策略是至關(guān)重要的。
為此,本文提出一種基于深度Q網(wǎng)絡(luò)的主動學習語義分割模型CG_D3QN,將主動學習語義分割問題轉(zhuǎn)換為馬爾可夫決策過程(MDP),由元組〈S,A,R,St+1〉構(gòu)成,定義為:
a)狀態(tài)集S。表示一組狀態(tài)值,對于每一個狀態(tài)st∈S,智能體在at∈A執(zhí)行選擇從Ut中標記哪些樣本區(qū)域。
b)動作集A。表示動作at=ant,由n個子動作構(gòu)成,每一個子動作都表示在樣本上標注一個區(qū)域,其依據(jù)語義分割網(wǎng)絡(luò)、已標注樣本池Lt和未標注樣本池Ut獲得。
c)獎勵集R。表示每次主動學習迭代后獲得的獎勵值rt+1∈R,通過主動學習流程中當前和上一輪分割網(wǎng)絡(luò)在DR上性能的差值計算。其中,DR是用來評估分割網(wǎng)絡(luò)性能的一個單獨的數(shù)據(jù)樣本子集。
d)狀態(tài)集St+1。表示下一個時間步數(shù)的狀態(tài)值。
采用基于池的主動學習流程框架作為模型的整體架構(gòu),特征金字塔網(wǎng)絡(luò)(feature pyramid networks,F(xiàn)PN)[24]作為語義分割網(wǎng)絡(luò),其流程框架如圖1所示。將查詢網(wǎng)絡(luò)建模為強化學習的智能體,其他部分建模為強化學習的環(huán)境。其中,狀態(tài)子集DS包含了所有類別的數(shù)據(jù)樣本,是整個數(shù)據(jù)集的代表性樣本子集。訓練時,智能體根據(jù)環(huán)境獲取狀態(tài)和動作表示,使用強化學習模型和來自經(jīng)驗緩沖區(qū)中的樣本來訓練查詢網(wǎng)絡(luò),查詢網(wǎng)絡(luò)選擇動作at,并將標注區(qū)域添加到已標注樣本池中,語義分割網(wǎng)絡(luò)FPN更新并計算獎勵,迭代訓練直到達到標注預算。
綜上所述,基于改進雙重深度Q網(wǎng)絡(luò)的CG_D3QN模型的目標是訓練強化學習的智能體,使其根據(jù)當前環(huán)境自適應的選擇動作,并對樣本區(qū)域進行標注,以獲得最大獎勵值rt+1。
1.2 構(gòu)建語義分割的狀態(tài)表示和動作表示
由于語義分割是像素級的語義標簽分類任務(wù),為了避免占用大量的內(nèi)存空間,借助狀態(tài)子集DS構(gòu)建強化學習的狀態(tài)表示,將DS的樣本劃分為多個patch,并計算所有patch的特征向量。在狀態(tài)表示的構(gòu)建過程中,首先在狀態(tài)子集的圖像樣本區(qū)域中,計算每個像素位置的信息熵,并采用最大值、最小值和平均值三種池化操作對信息熵進行下采樣生成第一組特征向量。接著,使用分割網(wǎng)絡(luò)對每個類別的像素數(shù)量進行預測,并對這些預測值進行歸一化處理,生成第二組特征向量。最后,每個樣本區(qū)域由這兩組特征向量串聯(lián)形成編碼,用來表示狀態(tài)st。
在主動學習語義分割過程中,采取動作表示對未標注區(qū)域逐像素進行標注,然而每一次的請求動作都需要計算未標注樣本的每個區(qū)域的特征,耗費了大量的成本。針對此問題,首先在構(gòu)建動作表示過程中,對于每個時間步t,從未標注樣本池中以均勻采樣的方式選取n個未標記的區(qū)域池pnt,使其近似表示整個未標記樣本。然后在數(shù)據(jù)池pnt中選取候選區(qū)xt,對每個類別的預測像素歸一化計數(shù)。之后計算已標注區(qū)域和未標注區(qū)域與分割網(wǎng)絡(luò)預測類分布的KL散度,構(gòu)成兩組特征向量。最后,將其和狀態(tài)表示串聯(lián)構(gòu)成動作表示ant。語義分割的狀態(tài)表示和動作表示如圖2所示。
1.3 網(wǎng)絡(luò)模型
1.3.1 雙重深度Q網(wǎng)絡(luò)
雙重深度Q網(wǎng)絡(luò)(double deep Q network, DDQN)是深度Q網(wǎng)絡(luò)(deep Q network, DQN)的一種改進算法。DDQN相對于DQN算法的主要區(qū)別在于其采用了雙重Q學習來尋找最優(yōu)策略,其通過將目標Q值的動作選擇和價值評估過程解耦,以達到消除過度估計偏差的目的。DDQN算法利用深度卷積神經(jīng)網(wǎng)絡(luò)來擬合狀態(tài)-動作值函數(shù):
Q*(st,at)≈Q(st,at;θ)(1)
其中:θ表示主網(wǎng)絡(luò)的參數(shù)。網(wǎng)絡(luò)接受狀態(tài)樣本st和狀態(tài)下的動作at作為輸入,然后輸出相應的Q值。在訓練過程中,選取主網(wǎng)絡(luò)產(chǎn)生最大Q值的動作,將該動作輸入到目標網(wǎng)絡(luò)以進行狀態(tài)-動作值函數(shù)的評估:
yt=rt+1+γQ(st+1,arg maxat+1∈pnt+1Q(st+1,at+1;θ);θ-)(2)
其中:θ-表示目標網(wǎng)絡(luò)的參數(shù);rt+1為即時獎勵值;γ為折扣因子。訓練的目標在于最小化目標值與預測值之間的誤差,通常被稱為時序差分誤差(TD-error)。主網(wǎng)絡(luò)的損失函數(shù)定義為
L(θ)=E[(yt-Q(st,at;θ))2](3)
其中:主網(wǎng)絡(luò)和目標網(wǎng)絡(luò)的參數(shù)更新是異步的,這種方式有效地分離了樣本數(shù)據(jù)和網(wǎng)絡(luò)訓練之間的相關(guān)性。
1.3.2 決斗網(wǎng)絡(luò)
決斗深度Q網(wǎng)絡(luò)(dueling deep Q network,Dueling DQN)在主網(wǎng)絡(luò)和目標網(wǎng)絡(luò)上均加入了決斗網(wǎng)絡(luò)結(jié)構(gòu),其主網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
在決斗網(wǎng)絡(luò)結(jié)構(gòu)中,顯式地將Q值函數(shù)Q(s,a)分解為兩個部分:一部分是狀態(tài)s下的價值函數(shù)V(s);另一部分是在狀態(tài)s下,采取a動作的優(yōu)勢函數(shù)A(s,a)。
Dueling DQN通過這種將價值函數(shù)解耦的方式,進一步提高了動作價值函數(shù)的預測準確性,其最終輸出的動作Q值函數(shù)表達式為
Q(s,a;θ,α,β)=
V(s;θ,β)+A(s,a;θ,α)-1|A|∑a′A(s,a′;θ,α))(4)
其中:θ為公共的網(wǎng)絡(luò)參數(shù);β為狀態(tài)價值函數(shù)的網(wǎng)絡(luò)參數(shù);αt為動作優(yōu)勢函數(shù)的網(wǎng)絡(luò)參數(shù);V(st;θ,β)為狀態(tài)st的價值函數(shù),表示當前狀態(tài)是否有利于獲取未來的累計獎勵;A(st,at;θ,αt)為動作優(yōu)勢函數(shù),表示各個可選的動作對當前狀態(tài)的有益程度;a′t為可能采取的動作;1|A|∑a′A(s,a′;θ,α)為動作優(yōu)勢函數(shù)的平均值。組合這兩個評估值并計算每個動作的優(yōu)勢,能夠更好地理解狀態(tài)值和不同動作之間的差異,從而更有效地估計Q值。
1.3.3 門控循環(huán)單元
門控循環(huán)單元(GRU)在循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的基礎(chǔ)結(jié)構(gòu)上引入了門控機制,解決了RNN的梯度消失問題,并進一步提高了模型的性能,其結(jié)構(gòu)如圖4所示。
GRU的門控機制包括重置門rt和更新門zt。通過控制重置門打開或關(guān)閉操作,可以達到遺忘信息的目的;更新門決定當前對于前一時刻信息的保存或者遺忘,獲得數(shù)據(jù)之間的長期依賴關(guān)系。GRU的輸入為當前時刻輸入xt和上一時間步的隱藏狀態(tài)信息ht-1,輸出為當前時間步隱藏狀態(tài)信息ht:
rt=σ(Wrxt+Urht-1)(5)
zt=σ(Wzxt+Uzht-1)(6)
ht=tanh(Whxt+Uh(rtht-1))(7)
ht=(1-zt)ht+ztht(8)
其中:σ為sigmoid函數(shù),將t時刻的門控信號rt和zt的輸出范圍控制在[0,1];tanh為激活函數(shù),將候選隱藏狀態(tài)ht的值范圍控制在[-1,1];Wr、Wz、Wh、Ur、Uz、Uh為門控機制的權(quán)重矩陣。
1.3.4 CG_D3QN網(wǎng)絡(luò)模型
為了使查詢網(wǎng)絡(luò)模型更好地理解在語義分割中狀態(tài)值和不同動作之間的差異,提高模型的學習效率并緩解深度Q網(wǎng)絡(luò)的過度估計問題,將DDQN與決斗網(wǎng)絡(luò)結(jié)構(gòu)融合,構(gòu)成了決斗雙重深度Q網(wǎng)絡(luò)(Dueling DDQN,D3QN)。同時,由于狀態(tài)信息來自于對圖像樣本的局部區(qū)域,表明環(huán)境是一個部分可觀測的馬爾可夫決策過程(POMDP),Q值的大小不僅與狀態(tài)、動作有關(guān),也和歷史狀態(tài)信息有關(guān)。因此,將CNN與GRU的混合網(wǎng)絡(luò)模型(CG)引入D3QN中,構(gòu)成了CG_D3QN模型。CG_D3QN模型使用CG網(wǎng)絡(luò)進行Q函數(shù)的擬合,并通過D3QN網(wǎng)絡(luò)對整個網(wǎng)絡(luò)結(jié)構(gòu)進行優(yōu)化,實現(xiàn)使用少量的標注數(shù)據(jù)得到高性能的分割網(wǎng)絡(luò)。CG_D3QN網(wǎng)絡(luò)模型框架如圖5所示。
CG_D3QN網(wǎng)絡(luò)模型的設(shè)計思路如下:
首先將狀態(tài)和動作信息進行組合,并進行特征提取,利用由Bias網(wǎng)絡(luò)計算出動作表示的KL距離分布特征作為系數(shù),對狀態(tài)動作值進行加權(quán),以獲取更準確的動作狀態(tài)價值;然后對得到的動作狀態(tài)價值分別進行價值評估和優(yōu)勢評估;最后通過CG網(wǎng)絡(luò)對狀態(tài)的歷史信息進行編碼,并將其記錄到隱藏層中,使得在進行Q值評估時,模型可以充分學習到先前的狀態(tài)信息,提高了模型的決策性能。
1.4 CG_D3QN算法流程
在CG_D3QN算法流程中,使用主網(wǎng)絡(luò)MainNet選擇動作,使用目標網(wǎng)絡(luò)TargetNet估計價值,其流程框架如圖6所示。作為智能體的查詢網(wǎng)絡(luò)從環(huán)境中獲取狀態(tài)st,使用ε-greedy策略選擇動作at,并將其傳遞給環(huán)境,環(huán)境更新并計算獎勵值rt+1。將每次與環(huán)境交互的結(jié)果以(st,at,rt+1,st+1)的形式存儲到經(jīng)驗池memory D中,每次從中隨機采樣樣本數(shù)據(jù)到主網(wǎng)絡(luò)MainNet和目標網(wǎng)絡(luò)TargetNet中,根據(jù)兩個網(wǎng)絡(luò)的輸出結(jié)果和獎勵值rt+1,計算損失函數(shù)并更新主網(wǎng)絡(luò)的網(wǎng)絡(luò)參數(shù)。當訓練達到規(guī)定的周期,將MainNet的網(wǎng)絡(luò)參數(shù)復制給TargetNet,完成對目標網(wǎng)絡(luò)的優(yōu)化。
CG_D3QN算法流程如算法1所示。
算法1 CG_D3QN主動學習框架
輸入:分割網(wǎng)絡(luò)f;狀態(tài)子集DS;訓練子集DT;回合數(shù)N;經(jīng)驗回放池pnt;標注預算B。
輸出:策略π。
a) 初始化分割網(wǎng)絡(luò)權(quán)重σ,構(gòu)建區(qū)域池pnt。
b) for episode in 1,2,…,N:
c) 通過分割網(wǎng)絡(luò)和狀態(tài)子集DS計算當前狀態(tài)st;
d) while 選取的區(qū)域數(shù)小于預算B:
e) 查詢網(wǎng)絡(luò)采用ε-greedy策略選取動作at,從區(qū)域池pnt中選取n個未標注像素區(qū)域,并計算下一狀態(tài)st+1;
f) 使用更新的標注樣本池來訓練分割網(wǎng)絡(luò)f;
g) 通過上一時間步的分割網(wǎng)絡(luò)和使用新增區(qū)域訓練后的網(wǎng)絡(luò)性能差值計算智能體獎勵rt+1;
h) 將軌跡(st,at,rt+1,st+1)存入經(jīng)驗回放池;
i) 從回放池中均勻采樣出部分經(jīng)驗,訓練策略網(wǎng)絡(luò)并更新網(wǎng)絡(luò)參數(shù)θ,得到區(qū)域選擇策略π;
j) end while
k) end for
2 實驗與結(jié)果分析
2.1 數(shù)據(jù)集與評價指標
為了驗證CG_D3QN模型的可行性,選用CamVid和Cityscapes數(shù)據(jù)集評估語義分割性能。CamVid數(shù)據(jù)集由車載相機拍攝采集,包含370張訓練集圖像,104張驗證圖像以及234張測試圖像,圖像分辨率為360×480,提供11個類別的像素級標簽,涵蓋道路、建筑、汽車、行人等類別。Cityscapes數(shù)據(jù)集是一種城市街道場景的大規(guī)模數(shù)據(jù)集,包含3 475張2048×1024分辨率的高質(zhì)量圖像,其中2 975張用于訓練,500張用于驗證,共涵蓋19個類別。實驗數(shù)據(jù)集被劃分為四個子集,其詳細信息如表1所示。
其中,訓練子集DT用于在固定的標注樣本的像素區(qū)域預算B下訓練查詢網(wǎng)絡(luò);狀態(tài)子集DS和訓練子集DT均通過均勻采樣訓練集獲得;獎勵子集DR來自于驗證集或訓練集中均勻采樣獲得的剩余數(shù)據(jù);評估子集DV來自于經(jīng)過采樣后保留的大量訓練集數(shù)據(jù)樣本。
實驗采用平均交并比(mean intersection over union, MIoU)作為分割網(wǎng)絡(luò)的性能評價指標。MIoU通過計算所有類別的交并比的算術(shù)平均值,對數(shù)據(jù)集整體的像素重疊情況進行綜合評估,計算公式如下:
MIoU=1n+1∑ni=1pii∑nj=0pij+∑nj=0pji-pii(9)
其中:pii表示分類正確的像素數(shù)量;pij表示屬于第i類卻被預測為第j類的像素數(shù)量;n表示類別總數(shù)。
2.2 實驗環(huán)境與參數(shù)設(shè)置
實驗的編程語言為Python 3.6,使用的程序框架為PyTorch1.10.2;實驗的硬件環(huán)境為:顯卡為NVIDIA GeForce RTX 2070 SUPER,處理器為i7 9700 3.0 GHz,顯存8 GB,操作系統(tǒng)為Windows 10。
為了提高實驗效率,每次從經(jīng)驗回放緩沖區(qū)中按批次更新網(wǎng)絡(luò)參數(shù)。強化學習模型的超參數(shù)設(shè)置如表2所示。
2.3 主動學習對比實驗
為了驗證模型的最終性能,選用CamVid和Cityscapes數(shù)據(jù)集進行實驗。使用在GTAV數(shù)據(jù)集上預訓練過的FPN網(wǎng)絡(luò)作為模型的主干網(wǎng)絡(luò)。首先,將訓練集的所有數(shù)據(jù)設(shè)置為1個epoch,并使用不同的隨機種子進行五次獨立實驗,實驗訓練100個episode,最終得到主動學習的查詢網(wǎng)絡(luò)。本文分別使用Rails、BALD、Random三種主動學習方法與基于CG_D3QN的主動學習語義分割模型進行對比,并在不同的像素區(qū)域預算下進行驗證。通過綜合分析驗證階段的MIoU來評估模型的訓練效果。四種主動學習方法的實驗結(jié)果如圖7、8所示,其中x軸為用于訓練的標注像素區(qū)域數(shù)量,y軸表示MIoU水平。
通過觀察圖7在Camvid小規(guī)模數(shù)據(jù)集上的實驗結(jié)果可知,傳統(tǒng)的隨機采樣方法Random和最大不確定性方法BALD在不同預算下表現(xiàn)都較差,這說明使用新獲得的標簽進行訓練并不能提供額外的信息。此外,CG_D3QN方法相對于其他模型有1%~5%的提升,說明更多的標簽預算有助于模型性能的提升。實驗結(jié)果證明了CG_D3QN的區(qū)域選擇策略可以幫助分割模型避免陷入局部最優(yōu),并提高語義分割模型的整體性能。由于Camvid數(shù)據(jù)集的數(shù)據(jù)樣本量較小,所有結(jié)果都有較大方差,于是實驗在大規(guī)模數(shù)據(jù)集Cityscapes下進行了進一步驗證。
圖8展示了Cityscapes數(shù)據(jù)集在不同預算水平時的性能表現(xiàn),在3 840的像素預算條件下,CG_D3QN方法取得了63.3%的MloU水平,同時基線算法Ralis還需額外標注65%的像素才能達到同樣的性能。實驗結(jié)果進一步說明了CG_D3QN在處理大規(guī)模語義分割數(shù)據(jù)集時,能夠穩(wěn)定有效地篩選需要標注的圖像像素區(qū)域。
表3詳細記錄了在像素區(qū)域預算為19 200時,Cityscapes數(shù)據(jù)集的19個類別下,四種主動學習方法的MIoU以及帶有標準差的結(jié)果,其中加粗的數(shù)據(jù)表示MIoU的最大值。實驗表明,在不同類別中,CG_D3QN方法相較與其他主動學習方法能夠維持較高的MIoU水平。同時,對于樣本量較小的類別如Person、Motorcycle、Bicycle等,CG_D3QN同樣保持了較高的MIoU水平,驗證了本文方法在處理圖像數(shù)據(jù)集中的類別不平衡問題上的有效性。
為了直觀地展示CG_D3QN的優(yōu)勢,本節(jié)在保持預算一致的條件下,對選定圖像的像素區(qū)域選擇結(jié)果進行了可視化分析,具體結(jié)果如圖9所示。通過與傳統(tǒng)的主動學習方法BALD、Random以及強化主動學習方法Rails對比,可以觀察到CG_D3QN在篩選的標注樣本區(qū)域中包含了更豐富的標簽信息。此外,CG_D3QN也更注重篩選代表性不足的區(qū)域,從而進一步提升模型的整體性能。
2.4 消融實驗
為了驗證CG_D3QN所采用的關(guān)鍵技術(shù)對模型性能的影響,設(shè)置了兩組消融模型,分別驗證了Dueling網(wǎng)絡(luò)模塊和聯(lián)合卷積神經(jīng)網(wǎng)絡(luò)模塊(CG)對總體網(wǎng)絡(luò)性能的影響。對比算法包括原始DDQN模型、Dueling DDQN模型,以及CG_D3QN模型。這三種模型在相同的實驗參數(shù)設(shè)置下獨立訓練100個episode,實驗結(jié)果如圖10所示。
根據(jù)實驗結(jié)果可以得到以下結(jié)論:DDQN模型在不同的像素預算條件下的性能表現(xiàn)波動較大,并且在高預算條件下未能取得顯著改進,說明該方法并不能有效利用新的標簽信息進行決策。相比之下,引入Dueling網(wǎng)絡(luò)模塊的Dueling DDQN在低標注預算條件下即可實現(xiàn)較高的MIoU水平,并隨著預算的增加,模型性能逐步提高。這表明Dueling網(wǎng)絡(luò)結(jié)構(gòu)能夠理解動作優(yōu)勢和狀態(tài)價值,有效地解決Q網(wǎng)絡(luò)的價值過估計問題,從而制定出更有效的圖像區(qū)域選擇策略。在Dueling DDQN結(jié)構(gòu)基礎(chǔ)上引入聯(lián)合卷積神經(jīng)網(wǎng)絡(luò)模塊的CG_D3QN模型則在高預算條件時獲得了顯著的性能提升,這說明循環(huán)網(wǎng)絡(luò)結(jié)構(gòu)能夠有效地利用強化學習的歷史狀態(tài)信息,使模型能夠?qū)W習到更有價值的信息,在大量狀態(tài)信息下進一步提高了模型性能。
2.5 分割模型對比實驗
為了驗證CG_D3QN在采用不同的圖像語義分割算法時分割模型仍有性能提升,設(shè)計了如下實驗:分別采用經(jīng)過ImageNet數(shù)據(jù)集預訓練的DDRNet[25]和BiSeNet[26]作為主動學習框架中的分割網(wǎng)絡(luò),在Camvid數(shù)據(jù)集上與原始語義分割模型進行對比實驗。將圖像區(qū)域預算設(shè)置為480,在訓練10個epoch后驗證算法的性能。原始的語義分割網(wǎng)絡(luò)使用隨機策略選取圖像區(qū)域進行分割訓練,而對比方法則采用CG_D3QN模型選取區(qū)域進行訓練。在將新的語義分割算法遷移到CG_D3QN模型兩次實驗中,使用相同的超參數(shù)進行訓練。實驗評價指標包括準確率和MIoU,在驗證集下的實驗結(jié)果如表4所示。
根據(jù)表4的結(jié)果顯示,CG_D3QN模型采用不同的語義分割網(wǎng)絡(luò)后,在相同的預算條件下,使用CG_D3QN模型進行語義分割的MIoU水平得到了提升。說明了本文方法在采用不同的語義分割網(wǎng)絡(luò)后,仍然能夠提升模型的性能,驗證了本文模型的適用性。此外,本節(jié)對主動學習的區(qū)域選擇策略進行了可視化分析。圖11的結(jié)果顯示,在Camvid數(shù)據(jù)集上,通過引入主動學習模型CG_D3QN,DDRNet與BiSeNet這兩種分割網(wǎng)絡(luò)選擇的樣本區(qū)域的標簽信息量顯著增加,進一步驗證了本模型的優(yōu)越性。
3 結(jié)束語
本文提出了一種基于區(qū)域的、數(shù)據(jù)驅(qū)動的主動學習語義分割模型CG_D3QN。該模型旨在解決語義分割任務(wù)中存在的標注任務(wù)難度大、數(shù)量多,以及圖像樣本存在的類別不平衡問題。CG_D3QN模型在雙重深度Q網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)上,引入了決斗網(wǎng)絡(luò)模塊和聯(lián)合卷積神經(jīng)網(wǎng)絡(luò)模塊,以在主動學習流程中學習獲取函數(shù),實現(xiàn)以較少的標注樣本量獲得高性能的語義分割網(wǎng)絡(luò)。實驗結(jié)果表明,該模型在多個數(shù)據(jù)集中的MIoU均有顯著優(yōu)勢,并且在大規(guī)模數(shù)據(jù)集中少樣本類別下的效果也有所提升,驗證了模型的有效性。此外,模型在采用不同的語義分割網(wǎng)絡(luò)后,分割網(wǎng)絡(luò)的性能得到了進一步提升,從而驗證了算法的適用性。在未來的研究中,可以進一步優(yōu)化強化學習算法,構(gòu)建新的區(qū)域選擇的狀態(tài)表示和動作表示,以提升強化模型的特征表示能力,并進一步減少標注量。
參考文獻:
[1]Csurka G, Volpi R, Chidlovskii B. Semantic image segmentation: two decades of research [J]. Foundations and Trends in Computer Graphics and Vision, 2022, 14(1-2): 1-162.
[2]廖文森, 徐成, 劉宏哲, 等. 基于多分支網(wǎng)絡(luò)的道路場景實時語義分割方法 [J]. 計算機應用研究, 2023, 40(8): 2526-2530. (Liao Wensen, Xu Cheng, Liu Hongzhe, et al. Real-time semantic segmentation method for road scenes based on multi-branch networks [J]. Applications Research of Computers, 2023, 40(8): 2526-2530.)
[3]Shu Xiu, Yang Yunyun, Xie Ruicheng, et al. ALS: active learning-based image segmentation model for skin lesion [J/OL]. SSRN Electronic Journal. (2022-06-21) [2024-02-05]. https://dx. doi. org/10. 2139/ssrn. 4141765.
[4]張萌, 韓冰, 王哲, 等. 基于深度主動學習的甲狀腺癌病理圖像分類方法 [J]. 南京大學學報: 自然科學, 2021, 57(1): 21-28. (Zhang Meng, Han Bing, Wang Zhe, et al. Thyroid cancer pathological image classification method based on deep active learning [J]. Journal of Nanjing University: Natural Sciences, 2021, 57(1): 21-28.)
[5]劉霄宇, 左劼, 孫頻捷. 基于主動學習的機器學習算法研究進展 [J]. 現(xiàn)代計算機, 2021 (3): 32-36. (Liu Xiaoyu, Zuo Jie, Sun Pinjie. Research progress of machine learning algorithms based on active learning [J]. Modern Computer, 2021 (3): 32-36.)
[6]Siméoni O, Budnik M, Avrithis Y, et al. Rethinking deep active learning: using unlabeled data at model training [C]// Proc of the 25th International Conference on Pattern Recognition. Piscataway,NJ: IEEE Press, 2021: 1220-1227.
[7]Konyushkova K, Sznitman R, Fua P. Learning active learning from data [C] // Proc of the 31st International Conference on Neural Information Processing Systems. Red Hook: Curran Associates Inc., 2017: 4228-4238.
[8]Ren Pengzhen, Xiao Yun, Chang Xiaojun, et al. A survey of deep active learning [J]. ACM Computing Surveys, 2022,54(9): 1-40.
[9]Budd S, Robinson E C, Kainz B. A survey on active learning and human-in-the-loop deep learning for medical image analysis [J]. Medical Image Analysis, 2021,71: 102062.
[10]Hu Zeyu, Bai Xuyang, Zhang Runze, et al. LiDAL: inter-frame uncertainty based active learning for 3D LiDAR semantic segmentation [C]// Proc of European Conference on Computer Vision. Cham: Springer, 2022: 248-265.
[11]Wiering M A, Van Otterlo M. Reinforcement learning [J]. Adaptation, Learning, and Optimization, 2012, 12(3): 729.
[12]范迎迎, 張姍姍. 基于深度主動學習的高光譜遙感圖像分類方法 [J]. 東北師大學報: 自然科學版, 2022, 54(4): 64-70. (Fan Yingying, Zhang Shanshan. Hyperspectral remote sensing image classification method based on deep active learning [J]. Journal of Northeast Normal University: Natural Sciences Edition, 2022, 54(4): 64-70.)
[13]Cai Lile, Xu Xun, Liew J H, et al. Revisiting superpixels for active learning in semantic segmentation with realistic annotation costs [C]// Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE Press, 2021: 10988-10997.
[14]Mackowiak R, Lenz P, Ghori O, et al. CEREALS-cost-effective region-based active learning for semantic segmentation [EB/OL]. (2018-10-23) [2024-02-05]. https://doi. org/10. 48550/arXiv. 1810. 09726.
[15]Gal Y, Islam R, Ghahramani Z. Deep Bayesian active learning with image data [C]//Proc of International Conference on Machine Lear-ning. New York: PMLR, 2017: 1183-1192.
[16]Hu Mingzhe, Zhang Jiahan, Matkovic L, et al. Reinforcement lear-ning in medical image analysis: concepts, applications, challenges, and future directions [J]. Journal of Applied Clinical Medical Physics, 2023, 24(2): e13898.
[17]Zhou Wenhong, Li Jie, Zhang Qingjie. Joint communication and action learning in multi-target tracking of UAV swarms with deep reinforcement learning [J]. Drones, 2022, 6(11): 339.
[18]Sener O, Savarese S. Active learning for convolutional neural networks: a core-set approach [EB/OL]. (2018-06-01) [2024-02-05]. https://arxiv.org/abs/1708.00489.
[19]Dhiman G, Kumar A V, Nirmalan R, et al. Multi-modal active learning with deep reinforcement learning for target feature extraction in multi-media image processing applications [J]. Multimedia Tools and Applications, 2023, 82(4): 5343-5367.
[20]Chan R, Rottmann M, Hyuger F, et al. Application of decision rules for handling class imbalance in semantic segmentation [EB/OL]. (2019-01-24) [2024-02-05]. https://arxiv.org/abs/1901.08394.
[21]Casanova A, Pinheiro P O, Rostamzadeh N, et al. Reinforced active learning for image segmentation [EB/OL]. (2020-02-16) [2024-02-05]. https://do i.org/10.48550/arXiv.1810.09726.
[22]Wang Ziyu, Schaul T, Hessel M, et al. Dueling network architectures for deep reinforcement learning [C]// Proc of International Confe-rence on Machine Learning. New York: PMLR, 2016: 1995-2003.
[23]Huang Guoyang, Li Xinyi, Zhang Bing, et al. PM2.5 concentration forecasting at surface monitoring sites using GRU neural network based on empirical mode decomposition [J]. Science of the Total Environment, 2021, 768: 144516.
[24]Lin T Y, Dollár P, Girshick R, et al. Feature pyramid networks for object detection [C]// Proc of IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE Press, 2017: 2117-2125.
[25]Pan Huihui, Hong Yuanduo, Sun Weichao, et al. Deep dual-resolution networks for real-time and accurate semantic segmentation of traffic scenes [J]. IEEE Trans on Intelligent Transportation Systems, 2022, 24(3): 3448-3460.
[26]Yu Changqian, Wang Jingbo, Peng Chao, et al. BiSeNet: bilateral segmentation network for real-time semantic segmentation [C]// Proc of European Conference on Computer Vision. Berlin: Springer, 2018: 325-341.