f-VAEGAN-D2:VAE+GAN处理零样本学习问题
雖然f-VAEGAN-D2在題目中說“適用任意樣本”,但對比的Few-shot相關的實驗較少,這里僅討論零樣本學習的情況。
1. 背景介紹
由于為每個對象收集足夠數量的高質量帶標簽樣本難以實現,使用有限的標簽進行訓練學習一直是一個重要的研究方向。零樣本學習(Zero-Shot Learning, ZSL)最初被稱為計算機視覺中的零數據學習,目標是在標簽受到極大限制的設置下,完成訓練。在傳統的ZSL中(或稱為歸納零樣本學習),沒有為目標類提供訓練示例,因此這些類被稱為未見類。對于訓練示例,是有著標簽配對的大量訓練樣本,這些樣本的類被稱為可見類。傳統零樣本學習的核心挑戰是:對于存在的相關知識,使分類器能夠從可見類中提取的知識轉移到未見類中。類別相關的信息一般以輔助信息的形式給出,作為可見類與未見類知識遷移的橋梁,輔助信息被編碼為嵌入向量后使用,輔助信息可以是由人工標注的屬性信息、文本描述、知識圖譜或本體(Ontology)等。
對于未見類,僅使用輔助信息學習會導致未見類真實分布與建模分布之間存在差異,這被稱為域轉移問題。為了簡化零樣本學習,提出了轉導零樣本學習(Transductive Zero-Shot Learning, TZSL),它允許在訓練中額外包含未見類的未標記樣本。
在足夠的數據樣本示例支持下,使用生成模型學習數據點的概率分布,以便從中采樣并合成示例,實現數據增強,幫助TZSL學習未見類的數據分布。
2. 方法
f-VAEGAN-D2
設置
- 對于一組圖像\(X={x_1,\ldots,x_l}\cup{x_{l+1},\ldots,x_t}\),編碼在圖像特征空間\(\mathcal{X}\)中。
- 一個已見類別標簽集\(Y^s\),一個新類的標簽集\(Y^n\)(也就是零樣本學習中的未見類別標簽集\(Y^u\))。
- 類別嵌入集合\(C=\{c(y)|\forall y\in Y^s\cup Y^n\}\)(也就是描述圖像的信息)編碼在語義嵌入空間\(\mathcal{C}\)中。
- 前\(l\)個樣本\(x_s\ (s\le l)\)標記為已見類別\(y_s\in Y^s\),其余點\(x_{\boldsymbol{n}}(l+1\leq n\leq t)\)是未標記的,可能是已見或新類。
在歸納設置中,訓練集僅包含已見類別圖像的標記樣本,即\(X=\{x_1,\ldots,x_l\}\)。在轉導設置中,訓練集包含標記和未標記樣本,即\(X=\{x_1,\ldots,x_l,x_{l+1},\ldots,x_t\}\)。
在零樣本學習中,任務是預測屬于新穎類別的那些未標記點的標簽,即\(f_{zsl}:\mathcal{X}\rightarrow\mathcal{Y}^n\)。而在廣義零樣本學習中,目標既可以是已見類別也可以來自新類的未標記數據并進行分類,即\(f_{gzsl}:\mathcal{X}\rightarrow\mathcal{Y}^s\cup\mathcal{Y}^n\)。
VAE與WGAN的損失函數
生成器\(G(z,c)\)接受隨機噪聲\(z_p\)(文中假設\(z_p\sim\mathcal{N}(0,1)\))和條件\(c\),生成特征空間\(\mathcal{X}\)上的CNN特征\(\hat{x}\)。判別器D(x,c)判斷一對特征和類別嵌入是真實的還是生成的。GAN的優化目標(實際上就是WGAN的損失函數:'Earth-Mover'距離+梯度懲罰項)為:
\[\mathcal{L}_{WGAN}^{s}= \mathbb{E}[D(x,c)]-\mathbb{E}[D(\tilde{x},c)]-\lambda\mathbb{E}[(||\nabla_{\hat{x}}D(\hat{x},c)||_2-1)^2] \]\(\tilde{x}=G(z,c)\)為生成的特征,\(\hat{x}=\alpha x+(1-\alpha x),\alpha\sim U(0,1)\),\(\lambda\)為懲罰系數。
編碼器\(E(x,c)\)將一對特征\(x\)和作為條件的類別嵌入\(c\)編碼為潛在向量\(z\)(但從圖中可以看到\(c\)并沒有被處理)。VAE的優化目標為:
\[\mathcal{L}_{VAE}^{s} =KL(q(z|x,c)||p(z|c)) -\mathbb{E}_{q(z|x,c)}[\log p(x|z,c)] \]\(q(z|x,c)\)即為\(E(x,c)\),表示建模的條件分布;\(p(z|c)\)被假設為\(\mathcal{N}(0,1)\);\(p(x|z,c)\)等同于解碼器\(Dec(z,x)\)。
優化目標設置
圖中的編碼器\(E(x,c):\mathcal{X}\times\mathcal{C}\rightarrow\mathcal{Z}\)將一對特征和類別嵌入編碼為潛在向量。判別器\(D_{1}:\mathcal{X}\times\mathcal{C}\rightarrow\mathbb{R}\)判斷一對特征和類別嵌入是真實的還是生成的。整個VAE-GAN的優化目標為:
\[\mathcal{L}_{VAEGAN}^s=\mathcal{L}_{VAE}^s+\gamma\mathcal{L}_{WGAN}^s \]VAE的Decoder與GAN的Generator共享參數(也就是同一個模塊兩個名字,就像圖中畫出的);上標\(s\)表示該損失僅用于可見類;\(\gamma\)為超參數控制VAE和WGAN損失的權重。
而對于未見類,使用了無條件判別器\(D_2\mathcal{X}\to\mathbb{R}\)區分是真實的還是合成的未見類特征,優化目標為一個WGAN的損失函數:
\[\mathcal{L}_{WGAN}^n=\mathbb{E}[D_2(x_n)]-\mathbb{E}[D_2(\tilde{x}_n)]-\lambda\mathbb{E}[(||\nabla_{\hat{x}_n}D_2(\hat{x}_n)||_2-1)^2] \]其中\(\tilde{x}_n=G(z,y_n), y_n\in Y^n,\hat{x}_n=\alpha x_n+(1-\alpha x_n),\alpha\sim U(0,1)\)。
\(\mathcal{L}^s_{WGAN}\)的訓練依賴語義嵌入的質量并存在域轉移問題(緩解域轉移問題也是歸納ZSL發展至轉導ZSL的重要原因)。于是通過\(\mathcal{L}^n_{WGAN}\)學習CNN特征的邊緣分布,為新類提供可轉移的CNN特征。因此整個f-VAEGAN-D2優化函數為:
\[\min_{G,E}\max_{D_1,D_2}\mathcal{L}_{VAEGAN}^s+\mathcal{L}_{WGAN}^n \]其他
圖中的隨機噪聲\(z\sim \mathcal{N}(0,1)\)與類嵌入\(c(y)\),經過串聯后進入生成器,它們的維度相同時,即\(d_z=d_c\)效果較好(沒有解釋,也許是測試發現的?)。同樣,視覺特征和類嵌入串聯后進入判別器。\(\mathcal{L}_{REC}\)為二元交叉熵損失函數,表示重構損失。
3. 實驗
論文中,對于合成的特征進行解釋。圖像特征通過上采樣生成圖片;文本解釋通過訓練的LSTM生成,LSTM根據圖像的平均隱藏層生成類嵌入,得到合成特征的解釋。
圖展示了從真實特征和合成特征獲得的解釋。我們觀察到該模型為可見類和未見類的合成特征生成圖像相關和類特定的解釋。例如,“King Protea”特征包含有關“紅色花瓣和尖尖”的信息,而“Purple Coneflower”特征包含有關“粉紅色和向下下垂的花瓣”的信息,這些特征是這種花在視覺上最顯著的特征。
另一方面,如圖底部所示,對于圖像特征缺乏一定細節水平的類,生成的解釋存在一些問題,例如重復,例如“喇叭形”和“星形”在同一個句子中和未知單詞,例如參見“氣球花(Balloon Flower)”的解釋。
參考文獻
- Xian, Yongqin, et al. "f-vaegan-d2: A feature generating framework for any-shot learning." Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2019.
總結
以上是生活随笔為你收集整理的f-VAEGAN-D2:VAE+GAN处理零样本学习问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kafka源码阅读之MacBook Pr
- 下一篇: 星球重启高危险异种位置在哪(星球重启高危