鄧戈龍,黃國恒,陳紫嫣
廣東工業(yè)大學 計算機學院,廣州 510006
近些年來,卷積神經網絡為核心的深度學習方法不斷取得成功。以AlexNet[1]的出現(xiàn)作為轉折點,更多的工作像是VGG[2]、GoogleLeNet[3]、ResNet[4]、DenseNet[5]和NASNet[6]的工作不斷迭代,使得深度學習方法性能超過了人類的表現(xiàn)。這些基于大量數(shù)據集訓練的深度學習方法在少量訓練數(shù)據情況下容易發(fā)生過擬合,使用數(shù)據增強和正則化方法也難以讓類似的模型擁有小樣本分類能力。
小樣本圖像分類[7]任務主要目的在于提供少量有標簽的數(shù)據學習到識別新類的能力。而人類被認為可以從對比中學習到新事物的異同,特別是在少量樣本的情況下,更有代表性的樣本特征和更高效的對比方法十分重要。目前許多基于度量的小樣本學習方法證明了度量方法可以從少量樣本中學習到分辨新類的能力[8-11]。不過,這些方法將研究重心集中在如何設置和訓練一個更好的度量的網絡,使用多種方法優(yōu)化網絡的參數(shù)從而實現(xiàn)小樣本學習能力。這些方法忽略了原始圖像輸入嵌入的特征代表性,網絡容易因背景噪聲達到性能瓶頸。
對于圖像嵌入方法,主要采用多層卷積神經網絡簡單地將圖像映射為一個長度為n維的向量。這樣得到嵌入信息僅僅是在特定數(shù)據集下的特征空間中的差異化特征,嵌入向量不能很好地代表這個類的代表性顯著特征[12]。與此同時,卷積核容易將與類別無關的背景信息嵌入到向量中,給度量方法帶來大量的樣本分類噪聲,影響模型的度量性能。多數(shù)小樣本圖像分類任務沒有注重原始數(shù)據的表征信息提取,而代表類別之間區(qū)別的特征信息或許能有效提高小樣本圖像分類任務的性能。
因此,本文提出了一個基于圖神經網絡的小樣本學習模型,使用帶有圖像自注意力機制的變分自編碼器[13](variational auto encoder,VAE)嵌入的小樣本圖像分類模型。通過VAE中的重建損失和分類損失聯(lián)合訓練的方法解耦圖像被分類的主要信息,隨后連接一個圖像自注意力編碼器將圖像嵌入為一個n維的向量。這個n維的向量可以被認為是模仿人類學習新類差異的關鍵信息,能夠很好地體現(xiàn)類別之間差異,具有類別代表性。而圖神經網絡的節(jié)點消息傳遞、信息聚合可以成為小樣本學習研究的一個出色工具。本文模型首先將圖像進行嵌入將其作為圖節(jié)點,邊被定義為邊上節(jié)點間的相似度特征。通過一個端到端的有監(jiān)督訓練,讓本文的圖神經網絡擁有了快速學習節(jié)點異同的能力,實現(xiàn)小樣本學習任務。通過實驗,本文提出的嵌入模塊能夠顯著提升圖神經網絡的小樣本學習能力,并在圖神經網絡小樣本圖像分類方法中得到了顯著的性能提升。
本文的貢獻:
(1)提出一個類別解耦的嵌入模塊,模塊包含兩部分,分別是有監(jiān)督的VAE模塊與圖像自注意力嵌入模塊。
(2)提出使用多層感知機學習節(jié)點間含有度量信息的邊特征,將原始數(shù)據樣本構造為圖結構數(shù)據。
(3)在圖神經網絡的小樣本學習方法中得到明顯的性能提升。
現(xiàn)今的小樣本學習任務工作的一個主要特點在于用各種辦法去轉化模型中學習到的參數(shù)分布。如文獻[14]用一種孿生神經網絡,一個互聯(lián)的并行網絡去學習輸入之間的通用特征。目的是為了訓練特征判別能力,其本質是多類風格相似的特征遷移學習,加速網絡分類新類特征能力。文獻[15]提出了基于LSTM的元學習模型,根據不同的小樣本任務調整經典分類網絡中的參數(shù)分布,使分類器面對少樣本類也能快速收斂。文獻[16]注重網絡的初始化參數(shù)的訓練,目的是在參數(shù)傳遞更新的過程中更快速微調新任務的訓練。文獻[17]通過使用深度內核對元學習的內循環(huán)進行了貝葉斯處理,因此可以學習一個能夠轉移到新任務的內核應用,用于小樣本任務上。除此之外也有一些通過生成數(shù)據的方法,如文獻[18]使用生成模型來擴充模型對于樣本數(shù)量不足造成的難以擬合的問題。文獻[19]基于一個修改過的自動編碼器,即Δ-編碼器。該編碼器通過一個未參與訓練的類別中的幾個樣本,就能學會合成新的樣本,然后用合成的樣本訓練分類器??梢园l(fā)現(xiàn),這些工作主要注重在分類網絡的參數(shù)調整和利用生成數(shù)據的方法去彌補數(shù)據的不足。在上述提到的工作中,都在強調調整分類能力、數(shù)據增強、學習度量等,本質上沒有使用深度學習方式模擬一個可能的人類學習的思維。
VAE原本是用于無監(jiān)督學習中生成模型的一個模塊,后續(xù)許多研究開始使用VAE進行表征學習[20],大多數(shù)最初嘗試學習分離的表征需要數(shù)據生成因素的監(jiān)督知識。然而,這在大多數(shù)現(xiàn)實世界的場景中是不現(xiàn)實的。目前的研究提出了一些純粹的無監(jiān)督的分解因子學習方法,包括β-VAE[21]。文獻[12]基于的β-VAE的想法進一步提出了有監(jiān)督和無監(jiān)督相結合,將表征解耦從類內的實例轉化為了類之間,被分類的關鍵信息被很好地提取出來。而最近圍繞文獻[22]的提出,自注意力機制在視覺、自然語言處理等領域出現(xiàn)了大量的有成效性的工作。在圖像領域文獻[23-24]分別在不同尺度的圖像分類任務中獲得了顯著地提高。本文將這兩個領域的研究進行結合,提出了VAE-ST特征解耦嵌入模塊,將原始的圖像數(shù)據轉化為更容易讓小樣本任務接受的表征信息,有效地提高了小樣本模型的性能。
圖神經網絡是由文獻[25]提出的,然后文獻[26]根據Marco等人的工作實現(xiàn)了整個網絡的運作。隨后的相關工作的核心都在于處理圖結構的數(shù)據。文獻[27]學習了一個函數(shù)用來抽樣和聚集節(jié)點的特征來生成節(jié)點嵌入(embedding),用于對基于引文和Reddit帖子對不斷發(fā)展的信息圖中未見過的節(jié)點進行分類。文獻[28]基于大腸桿菌生長抑制屬性建立一個分子表征,通過圖神經網絡定向消息傳遞,在1.07億個分子結構數(shù)據庫中尋找新的抗菌化合物。上述研究工作的特點在于論文引用、社交網絡、分子結構這些任務相關數(shù)據都為圖結構數(shù)據。隨著圖神經網絡的發(fā)展,將歐幾里德數(shù)據轉換成非歐幾里德的圖結構數(shù)據,再用圖神經網絡模型去處理的研究相繼出現(xiàn)。如點云分類、場景圖生成和動作識別,文獻[29]將點云數(shù)據轉換為一種超點圖(superpoint graph,SPG),這樣的形式提供了一個緊湊而豐富的物體部分之間的上下文關系的代表。在人體動作識別上外觀、深度、光流是識別身體骨架的常用方法,文獻[30]利用時間流和建立單幀圖結構來代替人體骨架,他們的工作在動作識別領域帶來了更大的表達能力和泛化能力。將數(shù)據轉化為圖結構相關已經成為最近一段時間工作的一個要點,作為元學習的一個子任務的小樣本學習的任務上也有這樣相似的案例[31]。這些工作使用一個預訓練的卷積神經網絡提取樣本的特征向量進入圖神經網絡訓練。根據這個思路,本文將常用的卷積神經網絡嵌入替換成了帶有注意力的VAE嵌入,將原始圖像嵌入為一個圖節(jié)點。圖神經網絡消息傳遞機制可以快速的依據圖節(jié)點特征更新邊特征,或者是依據邊特征更新節(jié)點特征。通過消息傳遞機制,可以快速從解耦嵌入后的圖節(jié)點特征的差異中學習到分類能力,借助圖神經網絡的消息傳遞機制,快速地對節(jié)點隱含特征進行差異化變更。
在這一部分將介紹模型的總體方法,本文提出了一個新的基于圖神經網絡的小樣本學習模型(VT-GNN)。模型分為類別解耦嵌入(VAE-ST)和消息傳遞圖神經網絡兩個部分。VAE與圖像自注意力機制結合,提取原始圖像數(shù)據的表征信息作為圖節(jié)點信息,使用多層感知機為節(jié)點間生成具有度量信息的邊特征。構造出一個非歐幾里德圖結構數(shù)據,使用消息傳遞的圖神經網絡學習節(jié)點差異化方法,實現(xiàn)基于圖神經網絡的圖像小樣本學習分類任務,模型的總體流程如圖1所示。
圖1 模型總體流程圖Fig.1 General flow chart of model
在這一部分,本文介紹一個以分類任務監(jiān)督的VAE與圖像自注意力結合的原始圖像嵌入信息編碼器(VAE-ST)。整個編碼器分為兩個部分,分別是類別解耦變分自編碼器(class-disentanglement variational autoencoder,CD-VAE)對樣本的信息解耦。和基于自注意力機制的圖像嵌入模塊(swin-tiny,ST)對VAE解耦后的圖像進行編碼。原始的輸入數(shù)據x可以轉換為一個帶有類信息解耦與自注意力強化的特征向量,模塊的整體流程如圖2所示。
圖2 VAE-ST推理結構圖Fig.2 VAE-ST reasoning structure diagram
2.1.1 分類監(jiān)督的VAE模塊
對于小樣本圖像分類任務而言,樣本數(shù)量少,原始圖像所代表的類別關鍵信息沒有被很好地表征,這是影響小樣本圖像分類模型性能的原因之一。本文使用一個分類任務監(jiān)督的VAE對原始數(shù)據進行分類信息的解耦,減弱背景噪聲的干擾同時突出被分類信息的代表性。目前較多VAE的研究工作被用于學習分離潛在的特征,一些VAE主要依賴無監(jiān)督學習的方式通過編碼-解碼的方式尋找輸入數(shù)據的變化特征。其中,β-變分自編碼器(β-VAE)是對分離潛在特征研究最多的VAE變種。
β-VAE主要的目標是使用解碼器將輸入x解碼為隱向量z,使p(x|z)分布接近標準的高斯分布p(z)=N(0,I)。這類使用編碼器將x解碼為隱含特征z,再通過重建x的方式的模型主要目的是將x中的潛在因素,按照不同任務的需求進行分離。
在對抗性檢測與防御的研究中,文獻[12]提出了一個基于β-VAE的以分類任務為驅動的新變形VAE。這個新的VAE模型專注于圖像分類中的被分類的關鍵特征信息的解耦。主要目的是訓練一個模型C(x),如公式(1)所示,抵御來自對神經網絡分類器的特殊數(shù)據分布下擾動攻擊。
其中,G(?)作為生成器學習重建輸入,得到G(x)獲取與類別冗余或不相關的信息。而x-G(x)得到原始圖像和生成圖像之間的信息分離,抓住了類別被分類的基礎特征,可以稱這個信息為被分類的關鍵信息。為了使C(?)獲取的信息是去除無關冗余信息且接近類別本身的特征信息,在VAE后面銜接一個分類網絡D(?)。通過與有監(jiān)督分類器D(x)的聯(lián)合訓練,可以引導VAE對類信息的解耦。這樣的聯(lián)合訓練由兩個訓練損失組成,分別是VAE重建損失與分類器損失,損失函數(shù)如公式(2)所示:
其中,LG(?,θ)代表VAE重建圖像與原始圖像的差異,LD(ω)代表了解耦后圖像和分類損失,γ作為一個平衡因子負責解耦任務和分類任務之間的相互權衡。
LG(?,θ)如公式(3)所示,由一個以θ為參數(shù)的解碼器將原始數(shù)據編碼為接近q?(z|x)隱含特征z,和另一個以θ為參數(shù)的解碼器產生接近Pθ(x|z)的似然數(shù)據。β控制了VAE內部的信息的表示與分類強度,DKL(?||?)代表了先驗分布p(z)與后驗分布q?(z|x)之間的KL散度。
LD(ω)如公式(4)所示,是以ω為參數(shù)的分類器的交叉熵損失。
兩個任務的聯(lián)合訓練可以被認為是解耦任務與分類任務的互相約束,γ避免模塊過分偏向于解耦任務或分類任務,使得兩個任務形成信息瓶頸約束。x-G(x)與G(x)分別代表了經過解耦的類別關鍵信息與分類無關的冗余信息。本文使用這個VAE作為一個圖像分類信息分離模塊,使用聯(lián)合訓練的方法在數(shù)據集上進行預訓練,只使用C(x)對原始圖像數(shù)據的分類關鍵信息的解耦。
2.1.2 圖像自注意力嵌入模塊
上述的VAE方法被認為可以提取類之間用于分類的關鍵信息,但這樣的輸出除去了大多數(shù)紋理和顏色信息。傳統(tǒng)的卷積嵌入方法可能因卷積核的感受野問題受到影響,無法更好地表現(xiàn)類別被分類的關鍵信息,而且圖像仍然存在一定的噪聲這些噪聲信息會給圖神經網絡學習節(jié)點分類帶來一定的性能瓶頸。而且,在進入圖神經網絡前,需要把圖像數(shù)據嵌入到向量形式,作為一個圖結構的節(jié)點送入用于學習節(jié)點差異的圖神經網絡中。因此,引入圖像自注意力的Swin-Tiny模塊[24],Swin-Tiny是基于vision transformer(Vit)[23]改進的一種圖像自注意力模型。可以將圖像通過圖像注意力機制將原始數(shù)據轉換到一個帶有注意力權重的n維向量。
自然語言處理(natural language processing,NLP)領域中一個出色的研究Transformer[22]提出了自注意力計算方法如公式(5)所示:
其中,輸入Q、K、V分別代表了查詢、鍵、值,通過計算所有查詢Q和鍵K的點積并除以。接上Softmax函數(shù)[32]計算值V的注意力權重。隨后,多頭注意力模塊可以被簡單地表達為公式(6),目的是在一維長距離詞嵌入向量序列上進行注意力權重的計算。
在這個基礎上,vision transformer(Vit)將一張圖像輸入拆分成16×16的小圖像塊,生成一個小圖序列化數(shù)據。通過模仿NLP的自注意力模型中的詞嵌入,對每個小塊中的圖像進行嵌入,將原始圖像數(shù)據轉化為Transformer模型能夠接受詞嵌入數(shù)據。這個過程可以由公式(7)表示:
其中,(H,W)是輸入圖像的分辨率,P表示為拆分子圖像的分辨率,N代表了所有小圖像塊的數(shù)量同時也是進入Transformer模型序列的長度。
Vit提出了將圖像數(shù)據轉換為Transformer能接受的序列化信息,以P×P為分辨率的等距圖像拆分對于多尺度的信息挖掘效果不夠明顯。為了挖掘圖像數(shù)據中更多的原始特征,Swin-Tiny在Vit的基礎上將圖像切分成比Vit更小的塊,將滑動窗口的多頭注意力機制作為算子逐漸融合上一層的圖像塊嵌入信息。移動窗口自注意力計算方式如公式所示,構建了一個層次化的特征表達,能夠更好地應用在需要不同尺度類型的任務上。
其中,xi-1是經過基于公式的窗口自注意力計算后,再經過層歸一化操作得到的特征,滑動窗口自注意力的引入有效構建了小圖像塊之間的特征關聯(lián)。
將Swin-Tiny模塊作為一個圖像自注意力編碼器,將VAE解耦的圖像作為輸入x轉化為一個帶有自注意力轉換的嵌入向量。這樣編碼的信息能夠更好地表達類別本身的信息,削弱與分類無關信息對圖神經網絡的干擾。
圖神經網絡,可以被概括地表述為一個級聯(lián)更新圖結構數(shù)據輸入的模型,用于更新節(jié)點、邊、全局的隱向量表示。最早是文獻[25]提出來,后來被文獻[26]完善。根據任務的不同可以被分為圖卷積網絡,圖注意力網絡,圖消息傳遞網絡等。在圖卷積神經網絡中,圖結構數(shù)據分別被三種算子來更新節(jié)點的隱含特征,邊的隱含特征,圖全局的隱含特征。根據實際任務的不同,改變這三者之間的信息相互引入從而實現(xiàn)不同的圖神經網絡效果。
本文使用的圖神經網絡模型是以邊的隱含特征引入到節(jié)點的隱含特征中,以相似度信息作為邊的隱含特征傳遞消息給節(jié)點的隱含特征進行更新,網絡的結構圖如圖3所示。
圖3 圖神經網絡結構Fig.3 Figure of graph neural network
圖神經網絡的前向學習的其中一種方式是通過節(jié)點的隱含特征和邊特征結合消息信息更新節(jié)點的隱含特征,如公式(10)和公式(11)所示:
節(jié)點的隱含特征與消息信息通過節(jié)點更新函數(shù)Ut如公式(11)所示,得到的節(jié)點隱含特征的更新,這種方式也被定義為圖神經網絡的消息傳遞。上述方式主要圍繞了節(jié)點進行更新,根據任務不同圖神經網絡也可以圍繞邊的特征進行更新,這個過程可以被公式(12)所描述。
公式(12)所描述的邊的特征更新替換了公式(11)中描述的節(jié)點的隱含特征的計算,節(jié)點隱含特征與消息信息被邊特征更新函數(shù)Et更新,得到更新后的邊特征信息e。
而在文獻[33]這個工作中,詳細描述了邊的特征的更新過程,如公式(13)所示。作為邊特征直接被節(jié)點隱含特征與消息信息更新。通過這樣的形式,這個邊特征匯聚了周圍節(jié)點隱含特征信息。
邊特征的更新方式如公式(13)所示,α為RELU激活函數(shù),如公式(14)所示,W1,W0是兩個可以被學習到的參數(shù)矩陣。
受到文獻[8]和文獻[33]的啟發(fā),結合小樣本圖像分類的任務驅動。本文定義了邊特征構建方式為與邊鄰接的兩個節(jié)點之間的度量計算,如公式(15)所示:
其中,xi和xj分別表示了節(jié)點i和節(jié)點j的解耦自注意力嵌入特征,圖結構數(shù)據中的邊特征具體由公式計算得出:
其中,節(jié)點i和j之間的邊的特征eij由節(jié)點特征xi與xj通過多層感知機進行初始化構造,邊特征向量eij代表了兩個節(jié)點之間的度量差異。通過構建所有節(jié)點之間全連接的邊特征,將每個輸入原始圖像數(shù)據作為一個節(jié)點構造出一個全連接圖結構形式的網絡輸入數(shù)據。隨后,網絡按照公式與公式的形式對節(jié)點的隱含特征進行更新,從具有隱含度量信息的邊特征中對節(jié)點進行差異化更新。對于每一層訓練過程,都由MLP對上一層更新后的節(jié)點間邊特征進行更新銜接圖節(jié)點隱含特征更新組成。在模型最后一個網絡層后,使用softmax對節(jié)點進行分類。
ImageNet是深度學習圖像領域非常著名的一個數(shù)據集,擁有超過1 400萬張圖片和2萬多個類別,每個類別均有不少于500張圖像。由于訓練ImageNet需要非常昂貴的計算成本,因此文獻[9]在ImageNet的基礎上提取了Mini-Imagenet用于自定義深度學習網絡的快速建模與驗證。DeepMind團隊首次將Mini-ImageNet數(shù)據集用于小樣本學習研究,這個數(shù)據集共有100個類別,每個類別有600個樣本,每個樣本由84×84×3的RGB圖像組成。本文使用了文獻[15]提出的分割方法,如表1所示。將其中64個類用于訓練,16個類用于驗證,20個類用于測試,表1總結了Mini-Imagenet的分割統(tǒng)計數(shù)據。
表1 數(shù)據集分割統(tǒng)計Table 1 Statistics of datasets segmentation
為了使VAE-ST中的VAE模塊能夠在Mini-Imagenet上擁有解耦能力,需要在Mini-Imagenet上進行重建圖像與分類的聯(lián)合預訓練。在生成器G(?)上選擇了VQ-VEA模型[34],而分類器D(x)使用了ResNet-50。使用AdamW作為優(yōu)化器,優(yōu)化損失函數(shù)如公式所示。隨后,將數(shù)據集以8比2的方式分割為訓練集和測試集。以學習率為0.000 05,最小學習率為0.000 01,訓練迭代數(shù)60,平衡因子γ為2的情況下得到了最好的解耦效果。由VAE解耦得到圖像數(shù)據需要經過Swin-Tiny將圖像嵌入為長度為768的一維向量,這個向量代表了原始圖像的在圖結構數(shù)據中的一個節(jié)點。
在小樣本任務的一次迭代訓練中,通常用N-wayK-shot來描述。對于每個小樣本任務T,從Mini-Imagenet抽取N個隨機類并從每個類中抽取K個隨機樣本在圖神經網絡上進行訓練。從這N個類中抽取一個與訓練樣本互斥的樣本用來評測模型的小樣本學習性能。本文總體模型按照以上描述方式,在5-way 1-shot的任務中,設置批次數(shù)據(batch-size)為40,學習率為0.000 1,迭代次數(shù)為6 000。在5-way 5-shot的任務中,設置批次訓練量為20,學習率為0.000 1,迭代次數(shù)(epoch)為6 000。
在VAE模型預訓練期間,使用Mini-Imagenet中100類中80類的數(shù)據進行訓練,剩下20類的數(shù)據對VAE模型進行評估。而在圖神經網絡的小樣本訓練中,在5-way 1-shot和5-way 5-shot這兩個小樣本學習設置中使用分別使用互斥的16類和20類進行驗證與測試。所有的驗證與測試環(huán)節(jié),都是用簡單的精確率P(Precision)作為評價指標,如公式(17)所示,其中TP代表預測正確數(shù),F(xiàn)P代表預測錯誤數(shù),TP+FP代表被測試數(shù)據總數(shù)。
3.4.1 VAE解耦
本文實驗探討了平衡因子γ對VAE模型解耦效果的影響,當γ接近0.002時,聯(lián)合訓練更偏向于圖像重建的效果。而隨著γ數(shù)值增大,可以觀察到聯(lián)合訓練逐漸偏向分類性能,如表2所示。本文的任務更加傾向分類指標,即希望VAE能夠解耦更多分類的關鍵信息。所以最終選擇γ為2作為在重建圖像和分類間平衡點。
表2 參數(shù)γ對VAE的影響Table 2 Effect of parameterγon VAE
在圖4中可視化了VAE生成圖像與解耦圖像的效果,其中本文使用的VAE在圖像重建能力上明顯不足于專注重建任務的VQ-VAE方法。但是通過分類損失影響重建效果與原始圖像之間的差異,本文使用的VAE可以將樣本的主要特征從原始圖像中解耦出來,減少干擾分類的背景信息。而專注于重建原始的輸入圖像的VQ-VAE方法,在重建效果上比較突出,但不能從原始圖像和生成圖像的差異中獲取到類別被分類的特征信息。
圖4 解耦效果Fig.4 Effectiveness of decoupling
3.4.2 與其他方法進行對比
為了驗證提出的VT-GNN模型的性能,模型分別在5-way 1-shot和5-way 5-shot的設置下進行訓練與測試,如圖5所示。本文模型的側重點在于提取決定類別分類的關鍵信息,相較于基線模型與其他模型的原始數(shù)據嵌入方法,本文數(shù)據樣本的表征信息更明顯。圖神經網絡能夠更快地學習到從節(jié)點間學習到邊的隱含特表示,同時是更新并差異化圖節(jié)點隱含特征的關鍵。
圖5 模型訓練過程精確率統(tǒng)計Fig.5 Precision statistics of model training process
根據表3所示,可以看到本文的模型分別在5-way 1-shot和5-way 5-shot的設置與6 000的迭代次數(shù)下快速收斂并取得了68.23%和82.66%的準確率,分別超過基線模型CE-GNN[8]17.9和16.25個百分點。相較于基線模型中使用的卷積神經網絡的嵌入方式,本文提出的VAE-ST模塊實現(xiàn)了對原始數(shù)據更好地被分類關鍵信息的提取,并把圖像這樣的三維數(shù)據嵌入到圖節(jié)點這樣的一維特征向量。這樣的嵌入提升了圖網絡中節(jié)點之間的差異性與顯著性,也為圖神經網絡去掉了更多的原始數(shù)據噪聲,是性能提升的關鍵。
表3 不同模型的性能對比Table 3 Performance comparison of different models 單位:%
3.4.3 消融實驗與分析
為了驗證本文提出的VAE-ST模塊在基于圖神經網絡方法上的有效性,并對模塊中VAE圖像解耦和圖像注意力編碼兩個部分的效果進行研究。本文在Mini-Imagenet數(shù)據集上進行了消融實驗的研究,結果如表4所示。本文模型是在基于圖神經網絡的小樣本方法上進行的改進,將常用的卷積神經網絡嵌入方法替換為了帶有自注意力的類別解耦嵌入,因此消融實驗采用CNN作為嵌入作為對比的基準方法。
表4 本文方法的消融實驗Table 4 Abalation experiment of this methods 單位:%
消融實驗結果如表4所示,VAE+CNN的嵌入組合對比傳統(tǒng)的CNN嵌入分別提升了7.83個百分點和7.23個百分點。證明了VAE的信息解耦的有效性,分類任務監(jiān)督的VAE為卷積嵌入減少了分類信息噪聲,提高了圖節(jié)點特征中的類代表性。
使用Swin-Tiny嵌入模塊對比CNN嵌入也有明顯的性能提升,分別為12.38個百分點和8.72個百分點。猜測由于CNN嵌入方法容易受到感受野問題的影響,難以從全局表現(xiàn)原始數(shù)據的分類關鍵數(shù)據,而Swin-Tiny模仿自然語言任務中的Transformer,并且使用了跨窗口的多頭注意力機制的嵌入相比卷積的嵌入帶來更多類代表的語義信息。
使用VAE+Swin-Tiny+GNN的模型對比基線模型分別提升了17.9個百分點和16.25個百分點,對比Swin-Tiny+GNN提升5.52個百分點和7.53個百分點。對于經過VAE解耦后的圖像信息如圖4所示,缺少了大部分卷積方法擅長處理的紋理信息與顏色信息。雖然圖像背景信息的影響被減少,但是猜測CNN嵌入方法影響了VAE的解耦后的類代表信息的表現(xiàn),從而影響了在圖神經網絡中的性能。與卷積方法不同的是,具有多頭自注意力模塊的圖像自注意力嵌入,從跨窗口的切分的小圖像序列嵌入中尋找特征聯(lián)系,實驗證明這兩個模塊結合帶來的在圖神經網絡模型中的性能提升。
3.4.4 嵌入方法開銷對比
傳統(tǒng)的CNN嵌入方法替換為VAE結合Swin-Tiny的方式會帶來一定的計算開銷。本文對從84×84的圖像輸入數(shù)據嵌入到768維特征向量這個過程進行了推理開銷計算,分別使用參數(shù)量Parm和浮點運算量FLOPs在基線方法和本文的方法上進行統(tǒng)計對比,如表5所示。
表5 不同嵌入方法的開銷對比Table 5 Comparison of different embedding methods
從表中可以看出,VAE+Swin-Tiny的方式相比CNN的推理開銷分別增加了40.16×106參數(shù)量和1.70 GFLOPs浮點運算量。主要是因為Swin-Tiny相比CNN嵌入方法在單張圖片的推理上增加了15.93×106參數(shù)量和0.6 GFLOPs,此外VAE的引入額外增加了24.23×106的參數(shù)量和1.10 GFLOPs浮點計算量。本文模型的嵌入方法相較于基線模型的CNN方法增加了較多的計算開銷,但是VT-GNN在小樣本任務上收斂更快,分類準確度提升明顯。
與卷積神經網絡擅長處理圖像這類平移不變性的數(shù)據不同,圖神經網絡擅長從不規(guī)則的非歐幾里德的圖結構數(shù)據中學習潛在的信息。為了讓圖神經網絡在圖像與圖像之間學習到類別之間的關聯(lián)與差異,本文提出了一種基于VAE與圖像自注意力機制結合的嵌入編碼器。主要用于對圖像所屬類進行分類信息解耦,設置一個重建與分類的聯(lián)合訓練損失,引導VAE從編碼到解碼過程中重建與分類無關冗余噪聲。通過與原始圖像做差的方式對樣本圖像進行分類特征解耦。解耦得到的特征可以被認為是類別之間樣本被分類的關鍵特征。在此之后本文引入了基于窗口轉移的圖像自注意力機制,通過建立多層特征融合的方式對解耦的圖像的噪聲進行進一步的減弱。同時對每個圖像進行編碼嵌入,使每個樣本能夠成為圖神經網絡學習的圖節(jié)點特征。這樣在圖像數(shù)據中建立起了一個包含原始圖像類別信息的圖結構數(shù)據,通過圖神經網絡的消息傳遞機制實現(xiàn)小樣本學習能力。
未來考慮將提出的VAE-ST模塊進行輕量化,用于研究基于圖結構數(shù)據轉換的增量學習上。通過對新增樣本的特征解耦,降低新增樣本噪聲特征對增量學習網絡的影響,改進增量學習網絡的性能。