1. 程式人生 > >原來,阿里工程師才是隱藏的“修圖高手”!

原來,阿里工程師才是隱藏的“修圖高手”!

阿里妹導讀:在現實世界中,資訊通常以不同的模態同時出現。這裡提到的模態主要指資訊的來源或者形式。例如在淘寶場景中,每個商品通常包含標題、商品短視訊、主圖、附圖、各種商品屬性(類目,價格,銷量,評價資訊等)、詳情描述等,這裡的每一個維度的資訊就代表了一個模態。如何將所有模態的資訊進行融合,進而獲得一個綜合的特徵表示,這就是多模態表徵要解決的問題。今天,我們就來探索多模態表徵感知網路,瞭解這項拿過冠軍的技術。

作者 | 越豐、簫瘋、裕巨集、華棠

摘要

近些年,深度學習飛速發展,在很多領域(影象、語音、自然語言處理、推薦搜素等)展現出了巨大的優勢。多模態表徵研究也進行入深度學習時代,各種模態融合策略層出不窮。

在這裡,我們主要對影象和文字這兩個最常見的模型融合進行探索,並在2個多模態融合場景中取得了目前最好的效果。

  1. 在文字編輯影象場景中,我們提出了雙線性殘差層 ( Bilinear Residual Layer ),對影象和文字兩個模態的特徵進行雙線性表示 ( Bilinear Representation),用來自動學習影象特徵和文字特徵間更優的融合方式。
  2. 在時尚影象生成場景中(給定文字直接生成對應的影象),我們採用了跨模態注意力機制(Cross Attention)對生成的影象和文字特徵進行融合,再生成高清晰度且符合文字描述的時尚影象。最後,在客觀評分和主觀評分上取得了最好的成績。

文字編輯影象

影象編輯是指對模擬影象內容的改動或者修飾,使之滿足我們的需要,常見的影象處理軟體有Photoshop、ImageReady等。隨著人們對於影象編輯需求的日益提升,越來越多的影象要經過類似的後處理。但是影象處理軟體使用複雜且需要經過專業的培訓,這導致影象編輯流程消耗了大量人力以及時間成本,為解決該問題,一種基於文字的影象編輯手段被提出。基於文字的影象編輯方法通過一段文字描述,自動地編輯源影象使其符合給出的文字描述,從而簡化影象編輯流程。例如圖1所示,通過基於文字的影象編輯技術可以通過文字命令改變模特衣服的顏色,紋理甚至款式。

圖1 基於文字的影象編輯技術示例

然而,基於文字的影象編輯技術目前仍然難以實現,原因是文字和影象是跨模態的,要實現一個智慧的影象編輯系統則需要同時提取文字和源影象中的關鍵語義。這使得我們的模型需要很強的表示學習能力。

現有方法

目前已有一些針對基於文字的影象編輯所提出的方法。他們都採用了強大的影象生成模型GAN(Generative adversarial network)作為基本框架。Hao[1]訓練了一個conditional GAN,它將提取出來的text embeddings作為conditional vector和影象特徵連線在一起,作為兩個模態資訊的混合表示,然後通過反捲積操作生成目標影象 (如圖2)。

圖2 使用傳統conditional GAN實現的基於文字的影象編輯方案

Mehmet[2]對以上方法做了改進,他認為特徵連線並不是一種好的模態資訊融合方式,並用一種可學習引數的特徵線性調製方法3去學習影象和文字的聯合特徵。FiLM減少了模型的引數,同時使得聯合特徵是可學習的,提高了模型的表示學習能力 (如圖3)。

圖3 使用FiLM+conditional GAN實現的基於文字的影象編輯方案

我們的工作

我們的工作從理論角度分析了連線操作和特徵線性調製操作間特徵表示能力的優劣,並將這兩種方法推廣到更一般的形式:雙線性 (Bilinear representation)。據此,我們提出表示學習能力更加優越的雙線性殘差層 (Bilinear Residual Layer),用來自動學習影象特徵和文字特徵間更優的融合方式。

Conditioning的原始形式

首先,本文將介紹conditional GAN中的連線操作和它的形式化表達,假設imageimage分別為前一層的輸出和conditional vector,其中D和image為特徵維度,連線的表示為image,後一層的權重image,其中imageimage分別為imageimage對應的權重,O為輸出維度,我們可得到如下變換:


其中image為輸出張量。

FiLM形式

FiLM源自於將特徵乘以0-1之間的向量來模擬注意力機制的想法,FiLM進行特徵維度上的仿射變換,即:

其中,image是縮放係數image的權重。顯而易見,當image為全1矩陣時,FiLM退化成Conditioning的原始形式,由此,可以得出FiLM是連線操作的更一般情況。

Bilinear形式

以上的方法都只是線性變換,我們的工作在此基礎上,提出了雙線性的形式,即輸出張量第i維的值由權重矩陣image控制:image

經過證明,Bilinear形式可以看做FiLM的進一步推廣,它具有更加強大的表示學習能力。證明如下:

為了證明FiLM可以由Bilinear的形式表示,首先要將FiLM變換寫成單個特徵值的情況,假設imageimage分別對應imageimage中第個i輸出值對應的權值,FiLM可以寫成:


以上形式等同於:


其中image,而image可以通過隨機選擇image中的一個非零元素image來構造,從而image構造如下:

image中除了第k行其他位置的元素全為0。顯而易見imageimage的秩均為1,由此可得出image,也就是說,當Bilinear變換矩陣image是稀疏的並且有不大於2的秩時,Bilinear形式等同於FiLM。這間接說明Bilinear形式是FiLM的推廣。

Bilinear的Low-rank簡化形式

雖然Bilinear有更強的表示能力,但它的引數實在是太多了,為了降低模型複雜度,實際中常常採用一種低秩的方法[4]簡化計算,通過將image分解為兩個低秩陣imageimage,其中d為指定的秩。由此,Bilinear的Low-rank簡化形式可寫為:


然後通過矩陣image將輸出張量投影到輸出維度上:

我們將imageimage和P作為網路內部可學習的層,並結合短路結構,提出雙線性殘差層 (Bilinear Residual Layer, BRL),具體可見圖4。

演算法的整體框架如圖4,網路由生成器和判別器構成,生成器有三個模組:編碼模組,融合模組,解碼模組。編碼模組由預訓練好的文字編碼器image和影象特徵提取器image構成,影象特徵提取器直接使用VGG16模型conv1-4層權值。融合模組由4個雙線性殘差層 (Bilinear Residual Layer, BRL)構成,解碼模組則是將處理好的特徵上取樣成影象。

圖4 方法的整體框架

訓練時,模型得到影象-文字對的輸入image,t為匹配影象x的對應描述,假設用於編輯影象的文字為image
,生成器接收image和x作為輸入得到:

其中,F表示融合模組。對抗訓練過程中,判別器被訓練以區分語義不相關的影象文字對,因此我們需要從文字庫中選擇不匹配的文字image作為負樣本,判別器的損失函式如下:

其中前兩項為了區分正負樣本對,第三項為了儘可能識別生成影象和文字image的不匹配。同時生成器G被訓練以生成和文字image匹配的影象:

整體目標函式即由imageimage所構成。

實驗結果

我們的方法在Caltech-200 bird[5]、Oxford-102 flower[6]以及Fashion Synthesis[7]三個資料集上進行了驗證。定性結果如圖5所示,第一列為原圖,第二列表示Conditional GAN原始形式的方法,第三列表示基於FiLM的方法,最後一列是論文提出的方法。很明顯前兩者對於複雜影象的編輯會失敗,而論文提出的方法得到的影象質量都較高。

圖5 生成樣本定性結果

除此之外,實驗還進行了定量分析,儘管對於影象生成任務還很難定量評估,但是本工作採用了近期提出的近似評價指標Inception Score (IS)[8]作為度量標準。由表6可見,我們的方法獲得了更高的IS得分,同時在矩陣秩設定為256時,IS得分最高。

表6 生成樣本定量結果

時尚影象生成

在調研多模態融合技術的時候,有一個難點就是文字的描述其實對應到影象上區域性區域的特性。例如圖7,Long sleeve對應了影象中衣服袖子的區域,並且是長袖。另外,整個文字描述的特性對應的是整個影象的區域。基於這個考慮,我們認為影象和文字需要全域性和區域性特徵描述,影象全域性特徵描述對應到整個影象的特徵,區域性特徵對應影象每個區域的特徵。文字的全域性特徵對應整個句子的特徵,文字的區域性特徵對應每個單詞的特徵。然後文字和影象的全域性和區域性區域進行特徵融合。

針對這種融合策略,我們在時尚影象生成任務上進行了實驗。時尚影象生成(FashionGEN)是第一屆Workshop On Computer VisionFor Fashion, Art And Design中一個比賽,這個比賽的任務是通過文字的描述生成高清晰度且符合文字描述的商品影象。我們在這個比賽中客觀評分和人工評分上均獲得的第一,並取得了這個比賽的冠軍。

我們的方法

我們方法基於細粒度的跨模態注意力,主要思路是將不同模態的資料(文字、影象)對映到同一特徵空間中計算相似度,從而學習文字中每個單詞語義和影象區域性區域特徵的對應關係,輔助生成符合文字描述的細粒度時尚影象,如圖7所示。

圖7 不同單詞描述影象不同區域示例

傳統的基於文字的影象生成方法通常只學習句子和影象整體的語義關聯,缺乏對服裝細節紋理或設計的建模。為了改進這一問題,我們引入了跨模態注意力機制。如圖8左邊區域,已知影象的區域性特徵,可以計算句子中不同單詞對區域特徵的重要性,而句子語義可以視為基於重要性權重的動態表示。跨模態注意力可以將圖片與文字的語義關聯在更加精細的區域性特徵層級上建模,有益於細粒度時尚影象的生成。

圖8 跨模態注意力機制,左圖表示通過影象區域性特徵計算不同單詞的重要性,右圖表示通過詞向量計算不同影象區域性特徵的重要性

我們用bi-LSTM作為文字編碼器,GAN作為對抗生成模型,並將生成過程分為由粗到精,逐步增加解析度的兩個階段:

  • 第一階段利用句子的整體語義和隨機輸入學習影象在大尺度上的整體結構。
  • 第二階段利用單詞層級的語義在第一階段低解析度輸出上做區域性細節的修正和渲染,得到細粒度的高解析度時尚影象輸出。

圖9 整體框架概覽,頂部分支利用文字整體語義學習低解析度的影象大致結構,底部分支在上一階段的輸出上做影象細節的修正,生成更加細粒度的時尚設計或紋理。

對抗生成網路

傳統的生成式對抗網路由判別器和生成器兩部分組成,判別器的目標是判別生成影象是否在真實資料集的分佈中,而生成器的目標是儘可能的騙過判別器生成逼近真實資料集的影象,通過兩者的迭代更新,最終達到理論上的納什均衡點。這個過程被稱為對抗訓練,對抗訓練的提出為建立影象等複雜資料分佈建立了可能性。

對於文字生成影象的任務,需要更改生成器的輸入以及目標函式,我們將兩個階段的生成器分別設為imageimage,整個流程可被形式化為:

其中image是句子向量,D為雙向LSTM兩個方向上輸出的維度和,image是詞向量矩陣,T指代單詞的個數,image表示第一階段啟用值輸出,image表示生成的影象。我們需要優化的目標函式定義為:

其中image是對抗損失,image是生成影象和對應描述的相似性損失,image由兩部分組成:

其中第一項非條件損失表示影象本身的真偽,第二項條件損失表示影象和句子語義是否匹配。對image也同理。

判別器image,同時也被訓練以最小化交叉熵損失:

該項對image也同理。

基於跨模態注意力的相似性

本節將詳細介紹在我們的方法中用到的跨模態注意力機制,給出影象-文字對image,我們取Inceptionv3中mixed-6e層的輸出768×17×17作為影象區域特徵,我們將空間維度展平得到768×289,averagepooling層的輸出2048作為影象全域性特徵,對這些特徵使用投影矩陣imageimage變換到imageimage。由此,可以得到相似度矩陣:

其中元素image代表了第i個單詞和第j個子區域的點積相似性。

影象-文字相似性

對於第i個單詞,我們最終可以建立不同區域特徵的加權和(越相似賦予越大的權重):

其中image是對應於第i個單詞,影象特徵的動態表述。

對第i個單詞,求得imageimage的餘弦相似度:

綜合可得圖片對image的相似度為:

其中超引數image表示最相關的單詞-影象區域對對最終相似度得分的影響程度。在一個batch的影象-文字對中,我們最大化正確對的相似度,最小化錯誤對的相似度:

其中,

M為batchsize的大小。

文字-影象相似性

同理的,文字-影象的相似性可以形式化為:

全域性相似性

以上我們計算了區域性特徵上的相似性得分,在全域性區域,我們可以利用imageimage的餘弦距離作為全域性相似度:

綜上,有:

通過優化以上損失函式,我們最終得到的生成的服裝圖片的效果圖如下所示:

附上演算法效果圖:

總結

我們主要對影象和文字這兩個最常見的模型融合進行探索,在文字編輯影象任務上,我們提出基於雙線性殘差層 (Bilinear Residual Layer)的圖文融合策略,並取得了最好的效果,相關工作已經發表在ICASSP 2019上,點選文末“閱讀原文”即可檢視論文。在時尚影象生成任務上,我們使用了細粒度的跨模態融合策略,並在FashionGen競賽中取得第一。

關於我們

阿里安全圖靈實驗室專注於AI在安全和平臺治理領域的應用,涵蓋風控、智慧財產權、智慧雲服務和新零售等商業場景,以及醫療、教育、出行等數億使用者相關的生活場景,已申請專利上百項。2018年12月,阿里安全圖靈實驗室正式對外推出“安全AI”,並總結其在智慧財產權保護、新零售、內容安全等領域進行深度應用的成果:2018年全年,內容安全AI呼叫量達到1.5萬億次;智慧財產權AI正在為上千個原創商家的3000多個原創商品提供電子“出生證”——線上與全平臺商品圖片對比,智慧化完成原創性校驗,作為原創商家電子備案及後續維權的重要依據;新零售場景的防盜損對小偷等識別精準度達到100%。


原文連結
本文為雲棲社群原創內容,未經