1. 程式人生 > >深度學習:zero-shot-learning(四)_DAEZSL_2017

深度學習:zero-shot-learning(四)_DAEZSL_2017

參考:

https://www.leiphone.com/news/201810/STIq4kDL6mbIKUmH.html

論文地址:https://arxiv.org/pdf/1711.06167.pdf

 

問題:對映域遷移 (projection domain shift)

視覺特徵稱為視覺空間 (visual space)

種類語義資訊稱為語義空間 (semantic space):種類語義資訊包括屬性 (attribute) 和詞向量 (word vector)

現有的一大類零示例學習的方法是把視覺空間對映到語義空間,或者把語義空間對映到視覺空間,或者把兩者對映到共同的子空間。其中學習到的對映稱為視覺語義對映 (visual-semantic mapping)。

比如語義空間有一種屬性是 has_tail,我們需要學習從視覺空間到該屬性的對映,這樣給定一張新的動物圖片,我們就可以判斷它有沒有尾巴。在這種情況下,視覺語義對映相當於由若干個屬性分類器構成。但是對於不同種類來說,視覺語義對映有很大的差異。比如斑馬和豬都有尾巴,但是它們尾巴的視覺呈現差別很大,因而對應的屬性分類器差異也很大。如果對於所有種類使用相同的視覺語義對映,在測試種類上得到的效果就會大打折扣。這個問題被稱為零示例學習中的對映域遷移 (projection domain shift) 問題。

之前大多數解決對映域遷移的方法都是在訓練階段使用未標註的測試種類資料,為訓練種類和測試種類學習一個共同的對映,或者為訓練種類和測試種類分別學習一個對映。但是由於各個種類的對映之間差異性都很大,僅僅學習一個或兩個對映是遠遠不夠的。所以我們提出為每一個種類都學習一個不同的視覺語義對映 (category-specific visual-semantic mapping)。

具體來說,我們先提出了一種傳統的方法 AEZSL,利用種類之間的相似關係為每一個測試種類訓練一個視覺語義對映。但是對於大規模任務來說這種訓練成本十分高昂,所以我們又提出一種基於深度學習的方法 DAEZSL只需要訓練一次就可以應用到任意測試種類。下面分別介紹 AEZSL 和 DAEZSL。

(1) Adaptive Embedding Zero-Shot Learning (AEZSL)

我們的方法基於 Embarrassingly Simple Zero-Shot Learning (ESZSL)。ESZSL 的表示式如下,

其中 X 是視覺特徵,A 是語義資訊,W 是視覺語義對映,Y 是種類標籤資訊。ESZSL 為所有種類學習一個相同的視覺語義對映 W。我們在 ESZSL 的基礎上稍作修改,利用每一個測試種類和所有訓練種類的相似關係(根據種類的語義資訊計算得到),為每一個測試種類學一個單獨的視覺語義對映

,表示式如下:

其中 Wc 是第 c 個測試種類的視覺語義對映,Sc 是第 c 個測試種類和所有訓練種類的相似矩陣。這樣就可以利用種類之間的相似關係把視覺語義對映遷移到各個測試種類。但是我們的 AEZSL 需要對每一個測試種類都訓練一個視覺語義對映,對於大規模的任務訓練成本非常高昂。因此我們又提出了一種基於深度學習的方法 Deep AEZSL (DAEZSL),只需要在訓練種類上訓練一次就能應用到任意測試種類,具體介紹如下。

(2) Deep AEZSL (DAEZSL)

我們旨在學習一個從語義資訊到視覺語義對映的對映函式,這樣給定任意一個種類的語義資訊,我們就能很方便地獲得該種類的視覺語義對映。但是這樣一個對映函式複雜度較高,所以我們採取一種替代的方式,假設每一個種類都存在學習視覺特徵權重,然後學習從語義資訊到視覺特徵權重的對映函式。學習針對每個種類的視覺特種權重相當於隱性地學習針對每個種類的視覺語義對映,具體解釋請參考論文。我們設計的網路結構如下圖。在訓練階段,假設共有 C 個訓練種類,在上面的子網路中,訓練圖片的視覺特徵被複製成 C 份,在下面的子網路中,所有種類的語義資訊通過 MLP 產生所有種類的視覺特徵權重,作用於複製了 C 份的視覺特徵。加權後的視覺特徵通過全連線層(相當於視覺語義對映)後和所有種類的語義資訊相乘得到最終的預測值。在測試階段,測試圖片通過上面的子網路,所有測試種類的語義資訊通過下面的子網路,相乘得到該測試圖片的預測值。

我們在三個小規模資料庫 CUB, SUN, Dogs 和一個大規模資料庫 ImageNet 上做了大量的實驗,實驗結果表明我們的方法在小規模和大規模資料庫上均取得了最優的結果。除了定量結果,我們也提供了深入的定性分析。我們選擇了兩張「flea market」種類的圖片,這兩張圖片被我們的 AEZSL 方法成功分類,卻被 ESZSL 錯分為「shoe shop」。通過對比「flea market」和「shoe shop」的語義資訊,「cloth」和「cluttered space」這兩個屬性更能代表「flea market」。我們在下圖列出了兩張圖片通過 ESZSL 和 AEZSL 方法得到的在「cloth」和「cluttered space」兩屬性上的投影值。從下圖可以看出我們的方法 AEZSL 在兩個屬性上有更高的投影值,也就是說我們的方法能更好地捕獲「flea market」種類在「cloth」和「cluttered space」兩屬性上的語義資訊。

 

為了更好的解釋說明,我們列舉了同樣包含「cloth」屬性的兩個種類「badminton court」和「bedchamber」, 以及同樣包含「cluttered space」屬性的兩個種類「recycling plant」和「landfill」。從下圖可以看出,同一個屬性在不同種類上的視覺呈現和語義資訊大相徑庭。

對於「flea market」種類,我們列舉了和它最相近的幾個種類 bazaar, thrift shop, market, general store(如下圖所示)。可見對於「cloth」和「cluttered space」兩個屬性,「flea market」和上述種類更為接近。我們的方法通過關聯和「flea market」相近的幾個種類,更好地捕獲了「flea market」種類的「cloth」和「cluttered space」屬性的語義資訊,學到了更契合該種類的視覺語義對映。

 

總結一下,我們提出了為每一個種類學習單獨的視覺語義對映,更好地捕獲每個種類的語義資訊,從而解決零示例學習中的對映域遷移問題。具體來說,我們提出了傳統的 AEZSL 方法和基於深度學習的 DAEZSL 方法。AEZSL 方法為每個測試種類訓練得到一個視覺語義對映,而 DAEZSL 只需要在訓練種類上訓練一次便可應用到任意測試種類。在四個資料庫上的定量結果和定性分析充分展示了我們方法的優越性。