【论文阅读CVPR2019】Text2Scene: Generating Compositional Scenes from Textual Descriptions
目錄
寫在前面:
1.本文的主要貢獻:
2.相關工作:
3.模型各個部分介紹
3.1文本編碼器
3.2對象和屬性解碼器
3.2.1基于注意力機制的對象解碼器
3.2.2基于注意力機制的屬性解碼器
3.3 前向嵌入模塊
論文題目:Text2Scene: Generating Compositional Scenes from Textual Descriptions
(根據文本描述生成合成場景)
論文原文:https://arxiv.org/abs/1809.01110
論文出處:CVPR2019
論文原作者:Fuwen Tan1 Song Feng2 Vicente Ordonez1 1University of Virginia, 2IBM Thomas J. Watson Research Center.?
報告人:蘇葉??
寫在前面:
這篇文章沒有使用當下比較流行的GANS,而是通過關注輸入文本的不同部分和生成場景的當前狀態,學會在每一個時間步上依次生成對象及其屬性(位置、大小、外觀等)。作者證明在較小的修改下,所提出的框架模型可以處理生成不同形式的場景。包括卡通場景,與真實場景對應的對象布局和合成圖像。和最先進的使用自動度量的GANS和基于人類判斷的高級方法相比,具有可解釋結果的優勢。
本文調整和訓練模型可以生成三種類型的場景:(1)抽象場景(2)圖像場景相對應的對象布局(COCO 數據集)(3)針對對應的圖像合成場景(coco數據集中)。
用了一個可解釋性模型,通過每一個時間步預測和添加新對象來迭代生成場景。在自動評價指標和人工評價時候均表現了最好的性能。
為生成文本描述圖像是一個非常有挑戰的工作,例如,1.輸入文本描述間接暗示屬性的存在,比如輸入MIKE IS SURPRISED, 應該是mike非常吃驚,需要在面部表情有所體現。2.文本描述往往包含了包括相對空間復雜的信息。例如,輸入jenny 向著mike和鴨子跑去,這里面jenny的方向依賴了后面兩個對象的空間位置,在最后一個例子,大象走在一條直線上,也暗示了相對空間信息。
我們的模型,首先使用sequence to sequence方法將對象放在了一個空白的畫布上,Text2Screen有一個文本編碼器A,可以映射句子的潛在表示,為輸入提供一系列的表征;接著是一個圖像編碼器B,為目前狀態的生成場景編碼,生成當前的畫布;接著是一個卷積循環模塊C,用于追蹤空間位置,目前已經生成的歷史,可以將當前的狀態傳給下一個步驟。D是注意力模塊,集中于輸入文本的不同部分,連續不斷地集中于輸入文本的不同部分;E是一個對象解碼器,可以根據當前場景狀態于已參與的輸入文本預測下一個對象,可以決定放什么對象。F是一個屬性解碼器,可以為我們的預測對象分配屬性。還有一個可選的前向嵌入G,用來學習合成圖像生成任務中批量檢索外表特征。
1.本文的主要貢獻:
2.相關工作:
大多數關于視覺描述語言的研究都是關于從圖像生成標題的。最近,在文本到圖像生成有了很多研究工作。大多數方法都利用了條件生成推理對抗網絡(GANs)。雖然這些工作已經成功地生成了結果,質量也在不斷提高,但在嘗試合成具有多個交互對象的復雜場景的圖像時,仍然面臨著重大的挑戰。受合成性原則的啟發,我們的模型不使用GANs,而是通過連續生成包含組成場景的語義元素的對象(例如,以剪貼畫、包圍框或分段對象補丁的形式)來生成場景。
我們的工作還與之前的研究有關,前人也做了很多使用虛擬場景來反映和分析現實世界中的復雜情況。在[44]中,引入了一個圖形化模型來從文本描述生成一個抽象場景。與前面的工作不同,我們的方法不使用語義解析器,而是從輸入句子開始端到端的訓練。我們的工作還涉及到像素級語義標簽生成圖像的研究[13,4,27],特別是[27],它提出了一種基于檢索空間語義圖的圖像合成方法。我們的合成圖像生成模型可選地使用[27]中的級聯細化模塊作為后處理步驟。與這些作品不同的是,我們的方法并沒有給出場景中物體的空間布局,而是學會從文本中間接預測布局。
與我們的方法最接近的是[14,9,12]和[16],因為這些工作也試圖預測顯式的2D布局表示。Johnson等人提出了一種從結構場景圖生成圖像的圖形卷積模型,被呈現的對象及其關系作為場景圖的輸入,而在我們的工作中,對象的存在是從文本中推斷出來的。Hong等人使用傳統的GANs進行圖像合成,但與之前的工作不同的是,它在一個可分離的訓練模塊中生成中間表示。我們的工作還試圖預測攝影圖像合成的布局,不同的是,我們使用半參數檢索模塊生成像素級輸出,而沒有經過對抗性訓練,展示了優越的結果。Kim等人從聊天日志中生成圖形,而我們的工作使用的文本要少得多。Gupta等人提出了一種半參數化的生成類卡通圖像的方法,呈現的對象也作為輸入提供給模型,預測的布局前景和背景是由分開訓練的模塊執行。我們的方法是端到端的訓練,超越了卡通場景。據我們所知,我們的模型是第一個在一個統一的框架下針對不同類型的場景(如框架場景、語義布局和合成圖像)的工作。
3.模型各個部分介紹
Text2Scene采用了一個seq - seq框架,并介紹了空間推理和順序推理的關鍵設計。具體來說,在每一個時間步驟中,模型通過以下三個步驟來修改背景畫布:
為了對這個過程進行建模,Text2Scene包含一個文本編碼器,它以M個單詞作為輸入序列;包含一個對象解碼器,它可以預測順序的第T個對象Ot;一個屬性解碼器,它可以預測每個對象的屬性。
場景生成從最初的空畫布開始,每個時間步長更新它。在合成圖像生成任務中,我們還聯合訓練了一個前向嵌入嵌入網絡,并將嵌入的向量作為目標屬性。下圖展示了一個抽象場景的步進式生成。
3.1文本編碼器
我們的文本編碼器是一個利用GRUs單元構成的雙向循環網絡。對于給定的句子,我們利用下面的公式計算每個單詞wi:
這里BiGRU是一個雙向的GRU單元,xi為與第i個單詞wi對應的詞嵌入向量,hiE為編碼當前單詞及其上下文的隱藏向量。我們用hiE 和xi對,作為編碼的文本特征,寫作[hiE,xi]。
3.2對象和屬性解碼器
在每一步t,我們的模型通過對象表V(有k個特征)來預測下一個對象。使用上面生成的文本特征[hiE,xi]和當前畫布Bt作為輸入,使用卷積神經網絡(CNN) 對Bt進行編碼,得到一個C x H x W feature map,表示當前場景狀態。我們使用卷積GRU (ConvGRU)對歷史場景狀態{htD}進行建模:
初始隱藏狀態是通過文本編碼器的最后隱藏狀態來創建的。htD提供了場景中每個空間位置的時間動態信息表示。由于這種表示可能無法捕獲小對象,因此上一步Ot-1中預測的對象的one-hot vector也作為輸入提供給下游解碼器。初始對象被設置為一個特殊的場景開始標記。
3.2.1基于注意力機制的對象解碼器
我們的對象解碼器是一個基于注意力機制的模型,輸出一個對象詞匯表V中所有可能的對象的似然得分。它以循環場景狀態htD、文本特征[hiE,xi]和之前預測的對象Ot-1作為輸入。
這里Ψ0是在htD上有空間attention的卷積網絡。Ψ0的目標是收集對象預測所需的上下文,例如已經添加了哪些對象。已經參加的對象的空間特征通過平均池化得到一個向量Ut0。Φ0是基于文本的注意力模塊,它使用[Ut0,Ot-1]去attend語言上下文[hiE,xi]和收集上下文向量Ct0。理想情況下,Ct0對所有描述的對象信息進行編碼,這些對象到目前為止還沒有添加到場景中。Θ0是一個雙層感知器,它使用一個softmax函數,通過連接后面三個來預測下一個對象p(Ot)的可能性。
3.2.2基于注意力機制的屬性解碼器
基于注意力機制的屬性解碼器對響應對象Ot的屬性集進行相似的預測。我們使用另一個注意力模塊Φa捕捉Ot語言上下文信息,提取一個新的上下文向量Ct a更側重于與當前對象Ot的內容。對于htD 每個空間位置,該模型預測一個位置似然和一組屬性似然。這里,可能的位置被離散成相同的空間分辨率:
Φa是一個基于文本的注意力模塊,將Ot與上下文[hiE,xi]對齊。Ψa是一個以圖像為基礎的注意力模塊,旨在找到一個負擔得起的位置來添加Ot。在與htD連接之前,Ct a在空間上被復制。最終的似然映射由卷積網絡進行預測,接著是softmax分類器。對于連續屬性{例如外觀向量Qt用于程序檢索(下一節)。我們使用l2-范數對輸出標準化。
3.3 前向嵌入模塊
我們預測了一個特定的屬性:一個外觀向量Qt,僅用于訓練生成合成圖像組合的模型。與其他屬性一樣,Qt對輸出特征圖中的每個位置進行預測,在測試時用于從其他圖像中預先計算的對象段集合中檢索類似的補丁。我們使用CNN訓練一個patch的嵌入網絡,將目標圖像中的前向patch壓縮成一個一維向量Ft。目標是使用triplet embedding loss來最小化Qt與Ft之間的l2-距離。
?
總結
以上是生活随笔為你收集整理的【论文阅读CVPR2019】Text2Scene: Generating Compositional Scenes from Textual Descriptions的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ssm毕设项目基于的少儿编程学习系统2l
- 下一篇: 阿里高级测开:软件测试(功能、接口、性能