劉霄宇,左劼,孫頻捷
(1.四川大學(xué)計(jì)算機(jī)學(xué)院,成都610065;2.上海政法學(xué)院,上海200000)
隨著機(jī)器學(xué)習(xí)與深度學(xué)習(xí)技術(shù)的高速發(fā)展,圖像分類算法已經(jīng)在各個(gè)領(lǐng)域中體現(xiàn)出了它的應(yīng)用價(jià)值。但對(duì)于機(jī)器學(xué)習(xí)與深度學(xué)習(xí)來(lái)說(shuō),都需要大量的標(biāo)注數(shù)據(jù)進(jìn)行驅(qū)動(dòng),讓算法模型見(jiàn)過(guò)的數(shù)據(jù)越多,它的分類效果就會(huì)越精準(zhǔn)。而在實(shí)際情況下,標(biāo)注數(shù)據(jù)需要巨大的工作量,極其耗費(fèi)人力、物力、財(cái)力資源。主動(dòng)學(xué)習(xí)算法所解決的正是標(biāo)注成本問(wèn)題,它的目的是通過(guò)模型與標(biāo)注人員的交互,使用少量的數(shù)據(jù)獲取與大量數(shù)據(jù)相同的模型準(zhǔn)確率。主動(dòng)學(xué)習(xí)的概念早在90 年代便被學(xué)者提出[4],其最早主要應(yīng)用于機(jī)器學(xué)習(xí)的方法中,僅使用簡(jiǎn)單的選擇策略便可以獲得較好的效果[4],如使用不確定性的主動(dòng)學(xué)習(xí)方法[5],使用委員會(huì)投票的方法[6],期望模型最大提升的方法[7],期望錯(cuò)誤減小的方法[8]和期望變化減小的方法[9]。隨著深度學(xué)習(xí)的發(fā)展,模型復(fù)雜度的增加,主動(dòng)學(xué)習(xí)的傳統(tǒng)方法在深度學(xué)習(xí)模型中并沒(méi)有體現(xiàn)出其優(yōu)秀的表現(xiàn)。在2017 年,Zhu J J 等人提出了借用生成對(duì)抗網(wǎng)絡(luò)的主動(dòng)學(xué)習(xí)方法[12]。在2018 年,Ozan Sener 等人[1]提出了使用核心集的方法,通過(guò)數(shù)據(jù)在特征空間上的代表性來(lái)選擇標(biāo)注數(shù)據(jù)。2019 年,Donggeun Yoo 等人[2]提出了通過(guò)學(xué)習(xí)損失函數(shù)的值的方式來(lái)進(jìn)行標(biāo)注數(shù)據(jù)的選擇。2019 年,Samarth Sinha 等人[3]提出了使用變分自編碼器的表征學(xué)習(xí)方式來(lái)學(xué)習(xí)已標(biāo)注數(shù)據(jù)和未標(biāo)注數(shù)據(jù)的差異來(lái)選擇標(biāo)注數(shù)據(jù)。這些主動(dòng)學(xué)習(xí)方法在公開(kāi)的數(shù)據(jù)集上都取得了優(yōu)秀的效果,進(jìn)一步的證明了主動(dòng)學(xué)習(xí)的研究?jī)r(jià)值。
上世紀(jì)90 年代,主動(dòng)學(xué)習(xí)的概念便被學(xué)者提出并進(jìn)行應(yīng)用。它的步驟如圖1 所示。第一步是由專家對(duì)少部分樣本進(jìn)行標(biāo)注,第二部是針對(duì)少部分樣本對(duì)目標(biāo)模型進(jìn)行訓(xùn)練,第三步是使用主動(dòng)學(xué)習(xí)算法對(duì)未標(biāo)注樣本進(jìn)行選擇,第四步是將選擇出的樣本送回給專家繼續(xù)標(biāo)注并重復(fù)上述步驟。主動(dòng)學(xué)習(xí)的核心問(wèn)題是尋找出最有用的樣本,對(duì)于最有用的樣本的定義一般分為兩種,基于不確定性選擇的樣本和基于差異性選擇的樣本。對(duì)于不確定性,我們可以理解為去尋找模型最難以判斷的樣本。如樣本的信息熵越大,它的不確定性越大,模型置信度越低,選擇此類樣本可以獲取得到豐富的信息量,以便模型進(jìn)行判斷。對(duì)于差異性,我們可以理解為針對(duì)數(shù)據(jù)本身選擇其最有代表性的樣本,如使用聚類的方法對(duì)樣本進(jìn)行處理,再選擇聚類中心進(jìn)行標(biāo)注,則可獲取到就數(shù)據(jù)本身而言的最具代表性的樣本。不論哪種方式對(duì)樣本的選擇,都脫離不了樣本的信息量的概念,因此對(duì)于主動(dòng)學(xué)習(xí)算法的研究,也是對(duì)數(shù)據(jù)所攜帶信息的提取與表示上的研究。
圖1 主動(dòng)學(xué)習(xí)流程
使用預(yù)聚類的方法是收到了無(wú)監(jiān)督學(xué)習(xí)的啟發(fā),該方法的核心思想是在每一輪的數(shù)據(jù)選擇之前提前對(duì)數(shù)據(jù)進(jìn)行聚類,以獲取多個(gè)數(shù)據(jù)簇及聚類中心,再對(duì)聚類中心或數(shù)據(jù)簇中的數(shù)據(jù)使用主動(dòng)學(xué)習(xí)算法進(jìn)行選擇。該類方法的最新研究成果是核心集方法[1]。
該方法包含了兩種具體的實(shí)現(xiàn)方式,第一種是KCenter-Greedy 的方法。它將已標(biāo)注數(shù)據(jù)定義為集合s,在每一輪的迭代中選擇budget 個(gè)樣本。在每一輪標(biāo)注中,順序選擇k 個(gè)聚類中心中,與集合s 距離最遠(yuǎn)的點(diǎn)u 加入集合s。其中u 與集合s 定義為u 與集合中各個(gè)點(diǎn)距離的最小值,距離使用L2-norm 距離。其具體算法如表1 所示。第二種方法是Robust K-Center方法,其在K-Center-Greedy 的基礎(chǔ)上進(jìn)行了修改。它通過(guò)計(jì)算得到無(wú)標(biāo)記點(diǎn)與集合s 的最遠(yuǎn)距離,設(shè)為δ2?OPT,此時(shí)所有的樣本點(diǎn)都會(huì)在包括在這個(gè)半徑δ2-OPT 內(nèi)。通過(guò)計(jì)算Feasible 函數(shù),去找到一組符合Feasible 函數(shù)的解,使得Feasible 內(nèi)所有約束條件都滿足,如果找到了,那么說(shuō)明此時(shí)的半徑δ不會(huì)使outlier的數(shù)量超過(guò)自己定的界限Ξ,半徑δ可以縮小,即縮小上界ub;如果沒(méi)有找到,那么說(shuō)明此時(shí)的半徑δ會(huì)使得outlier 數(shù)量超過(guò)界限Ξ,需要擴(kuò)大半徑,即擴(kuò)大下界lb。直到最后,ub?lb 相等或者相差不大,算法停止。Feasible 公式如下所示,Robust K-Center 的具體算法如表2 所示。
該方法利用了CNN 提取到的特征進(jìn)行聚類,并使用核心集的方法進(jìn)行篩選,在深度學(xué)習(xí)的特征中選擇了與已標(biāo)注樣本最遠(yuǎn)的數(shù)據(jù)點(diǎn),因此該方法既考慮到了特征的代表性,又考慮到了樣本的不確定性。
使用學(xué)習(xí)損失的主動(dòng)學(xué)習(xí)方法[2]是由Donggeun Yoo 等人在2019 年提出。該方法的核心思想是使用了當(dāng)前流行的多分支神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行多任務(wù)學(xué)習(xí)。其結(jié)構(gòu)如圖2 所示。
圖2
該方法使用了多分支網(wǎng)絡(luò),在學(xué)習(xí)目標(biāo)任務(wù)的同時(shí),增加一個(gè)分支進(jìn)行l(wèi)oss 數(shù)值的學(xué)習(xí)。在該方法中,在神經(jīng)網(wǎng)絡(luò)提取特征的部分,將每一個(gè)大的網(wǎng)絡(luò)塊的特征進(jìn)行提取并進(jìn)行全局平均池化,使得各個(gè)層的特征值的維度統(tǒng)一,再將其進(jìn)行連接并通過(guò)全連接層輸出,得到預(yù)測(cè)的loss 數(shù)值。這樣的方法能夠提取到多尺度的特征,這意味著可以對(duì)圖像的細(xì)節(jié)特征進(jìn)行捕捉。其結(jié)構(gòu)如圖3 所示。
圖3
在進(jìn)行多任務(wù)學(xué)習(xí)時(shí),該網(wǎng)絡(luò)將會(huì)對(duì)任務(wù)本身的目標(biāo)loss 值和預(yù)測(cè)loss 數(shù)值的loss 值進(jìn)行加權(quán)整合,其公式為:
其中Ltarget為目標(biāo)任務(wù)的loss,Lloss為學(xué)習(xí)loss 數(shù)值的loss。
由于在模型訓(xùn)練過(guò)程中,真實(shí)的loss 數(shù)值會(huì)不斷變化,因此不能拿真實(shí)loss 數(shù)值本身作為預(yù)測(cè)loss 的真實(shí)值。該方法提出了一種新的loss 函數(shù),對(duì)于每一個(gè)批次的B 個(gè)數(shù)據(jù),將其分為兩部分,成對(duì)進(jìn)行計(jì)算,其公式為:
對(duì)于這個(gè)函數(shù)我們分析一下考慮第一種情況li>lj且模型預(yù)測(cè)的結(jié)果也滿足那么損失值加上一個(gè)ξ后小于0,那么loss 取0 說(shuō)明模型的預(yù)測(cè)關(guān)系是對(duì)的,不進(jìn)行權(quán)重更新。如果li>lj但模型的預(yù)測(cè)的結(jié)果則損失函數(shù)值大于0 進(jìn)行權(quán)重更新。這個(gè)損失函數(shù)則說(shuō)明損失預(yù)測(cè)模型的實(shí)際目的是得到對(duì)應(yīng)數(shù)據(jù)的損失值的大小關(guān)系而不是確定的損失值。
使用表征學(xué)習(xí)的主動(dòng)學(xué)習(xí)方法由Samarth Sinha 等人[3]于2019 年首先提出,后在2020 年又基于此,由Ali Mottaghi 等人提出了對(duì)抗表征主動(dòng)學(xué)習(xí)[10],和Beichen Zhang 等人提出了狀態(tài)重標(biāo)注表征主動(dòng)學(xué)習(xí)[11]。它的主要思想是使用了表征學(xué)習(xí)中變分自編碼器的思想,再加上深度學(xué)習(xí)中多任務(wù)學(xué)習(xí)以及多分支網(wǎng)絡(luò)的形式,進(jìn)行主動(dòng)學(xué)習(xí)。該方法的基本結(jié)構(gòu)如圖4 所示。
圖4
該方法的目的是尋找出已標(biāo)注數(shù)據(jù)和未標(biāo)注數(shù)據(jù)的差異。它利用了變分自編碼器進(jìn)行特征提取,這樣做的目的是為了在無(wú)數(shù)據(jù)標(biāo)注的情況下,使用表征學(xué)習(xí)的方式將數(shù)據(jù)映射到一個(gè)潛層空間,數(shù)據(jù)在潛層空間的表示就是它的特征。同時(shí)它使用了一個(gè)判別器對(duì)數(shù)據(jù)是否是已標(biāo)注數(shù)據(jù)進(jìn)行打分,分值接近1 的為已標(biāo)注數(shù)據(jù),分值接近0 的為未標(biāo)注數(shù)據(jù)。該方法使用了對(duì)抗式的訓(xùn)練方式,首先將判別器的參數(shù)進(jìn)行固定,將數(shù)據(jù)的潛層空間特征都以標(biāo)簽為訓(xùn)練數(shù)據(jù)的形式送入判別器,進(jìn)行變分自編碼器的訓(xùn)練。再固定變分自編碼器的參數(shù),將數(shù)據(jù)的真實(shí)來(lái)源送入判別器進(jìn)行判別器的訓(xùn)練。以此方式提取到的特征,對(duì)于較為接近訓(xùn)練集的未標(biāo)注數(shù)據(jù),會(huì)欺騙判別器使其打出高分,反之則會(huì)使判別器打出低分。再以此方式進(jìn)行排序選擇。
該方法使用了無(wú)監(jiān)督學(xué)習(xí)的思想,挖掘了數(shù)據(jù)本身的特征,同時(shí)又無(wú)需修改目標(biāo)模型本身,這意味著該方法具有很強(qiáng)的通用性,同時(shí)又在主動(dòng)學(xué)習(xí)的過(guò)程中有著很好的效果。
本文綜述了在主動(dòng)學(xué)習(xí)領(lǐng)域中三種最新的,同時(shí)又具有代表性的方法。三者的共同點(diǎn)在于:在深度學(xué)習(xí)的大背景下,試圖尋找出最具有代表性的數(shù)據(jù)進(jìn)行標(biāo)注。不同點(diǎn)在于:基于預(yù)聚類的主動(dòng)學(xué)習(xí)方法是通過(guò)對(duì)特征的聚類來(lái)選擇最具有代表性特征的數(shù)據(jù);基于學(xué)習(xí)損失的主動(dòng)學(xué)習(xí)方法是通過(guò)模型的學(xué)習(xí),學(xué)習(xí)到對(duì)模型來(lái)說(shuō)最不確定的數(shù)據(jù);而基于表征學(xué)習(xí)的主動(dòng)學(xué)習(xí)方法是試圖學(xué)習(xí)到數(shù)據(jù)的原始特征,在與目標(biāo)模型無(wú)關(guān)的情況下進(jìn)行數(shù)據(jù)的選擇。從以上的內(nèi)容介紹可以看出,基于主動(dòng)學(xué)習(xí)的機(jī)器學(xué)習(xí)算法已經(jīng)得到了廣泛的關(guān)注,在深度學(xué)習(xí)高度發(fā)展的情況下,主動(dòng)學(xué)習(xí)算法受到了越來(lái)越新的挑戰(zhàn)。目前對(duì)于主動(dòng)學(xué)習(xí)的探索仍然在朝著各個(gè)方向多面發(fā)展,而越來(lái)越新的方法在所發(fā)表的文獻(xiàn)中所呈現(xiàn)出的實(shí)驗(yàn)結(jié)果,也證明了主動(dòng)學(xué)習(xí)算法的研究?jī)r(jià)值。