您的位置:首頁>手機>正文

解析:Google開源的“Show and Tell”,是如何讓機器“看圖說話”的?

雷鋒網按:9月23日,Google Brain宣佈在TensorFlow 上開源了其最新版的自動圖像描述系統“Show and Tell”,採用採用編碼器-解碼器神經網路架構,可以根據新的場景生成準確的新圖說

作者系圖普科技工程師,本文將會解析機器如何“看圖說話”?以及,Google為什麼要開源其系統?雷鋒網獨家文章。

|

機器的

Image Captioning(自動圖像描述)能力

電影《HER》中的“薩曼莎”是一款基於AI的OS系統,基於對希歐多爾的手機資訊和圖像內容的理解,“她”可以為他處理日常事物、可以陪他談心、甚至進行Virtural Sex,還可以讀懂所有的書、跟哲學家交流,“她”所做的一切儼然就是一個有血有肉的人類才能實現的。但薩曼莎還勝於人類,她能夠同時和8316個使用者聊天,和641個使用者in love,並且對每個人都是真情實感。

電影的“她”是人類想像中的強AI,“她”有思維,具備比人還強的智力以及運算能力,雖然目前的AI還不能完全做到“她”那樣強,但近年來人工智慧技術的發展讓機器可以越來越像人類,電腦開始能夠理解更高層次的圖像內容,

“看圖說話”

似乎不再是專屬於人類的專利。

在人工智慧領域,這是機器的 Image Captioning(自動圖像描述)能力。

從表現上看,機器不僅需要能夠知道圖像中包括哪些物體,同時還

必須描述物體之間的聯繫以及它們的屬性和參與的活動

,這顯然是機器一種更加高級的智慧形態。如下圖:

圖1. Automatic image caption 的例子

從原理上看,這依賴于智慧的兩個部分:“看”和“語言表達”,分別對應人工智慧最重要的兩大子領域:

 機器視覺和自然語言處理

機器視覺和自然語言處理從來都不是相互割裂的,兩者技術上相互借鑒歷史由來已久,更重要的是,從一個完整的智慧系統上看,無論是現在的人類智慧還是終極機器的智慧,多模態的融合是一項必然的要求,視覺和語言理解表達缺一不可,兩者相互協助,共同產生高級智慧。

所以圖像自動描述能力作為兩個智慧領域的關鍵性連接,必然是人工智慧領域最頂尖的研究者最密切關注的任務之一。

雖然圖像自動描述並不是一個新興的任務,在此領域中已經積累了大量的研究工作,但在2015年,此任務才得到了一個顛覆性的突破,機器自動描述圖像的能力在某些案例上的表現會讓人產生一種強人工智慧即將要實現的錯覺。

9月23日,Google Brain宣佈在TensorFlow 上開源了最新版的自動圖像描述系統“Show and Tell”,成功地將機器這方面的能力提高到一個新臺階。在這之前的版本,更多的是告訴大家圖像裡面有什麼或者總是重複使用人類在訓練模型時使用的描述語言,對於圖像中的物體之間以及物體和環境之間的關聯、意義並不能給出滿意的描述。

而“Show and Tell”在遇見全新的場景時,能夠基於圖像中物體和環境之間的交互聯繫,自動生成更加準確的圖像描述,並且使用的自然語言更加流暢,與人類的表述差異無幾。

那麼Google是如何做到這樣效果?要弄清其中的原理,我們需要先瞭解下在如今的深度學習時代,引領機器視覺和自然語言處理兩個領域取得突破的

最重要的兩個技術

,分別是:

DCNN

(Deep Convolutional Neural Network,深度卷積網路)與

LSTM

(Long Short Term Memory,長短時記憶網路)。

|

 DCNN與LSTM(深度卷積網路與長短時記憶網路)

在自然語言處理領域,許多高難度的任務都可以歸結進序列到序列(sequence to sequence)的框架中。

比如說,機器翻譯任務表面上是將一種語言轉換為另一種語言,本質上就是從一段不定長的序列轉換為另一段不定長的序列。如今實現seq2seq最有效的方法即為LSTM,一種帶門的RNN(Recurrent Neural Network,遞迴神經網路),它可以將來源語言編碼為一個固定長度含豐富語義的向量,然後作為解碼網路的隱藏狀態去生成目的語言。而Image Caption Generator(自動圖像生成器)方法正是受到機器翻譯中seq2seq進展的啟發:

何不將來源語言信號替換成圖像信號,這樣就能夠將機器翻譯的任務轉換也就是把圖像轉成自然語言,即圖像自然語言描述

可是簡單地將圖像信號直接作為輸入是無法達到很好的效果,

原因是原始的圖像信號並不是一個緊致的表示,含有太多的雜訊

。所以需要引入DL(Deep Learning,深度學習)在機器視覺中最核心的部件:CNN(Convolutional Neural Network,卷積網路)。

在DCNN的高層神經元輸出可以表示圖像的緊致的高層語義資訊,如今眾多成功的機器視覺應用都得益於此,比如前段時間爆紅的Prisma(

《AI修圖藝術:Prisma背後的奇妙演算法》

),其texture transfer(風格轉換)演算法正是巧妙的利用了含有高層語義的圖像表示。

所以此圖像文字描述方法的基本思想就是

利用了DCNN生成圖像的高層抽象語義向量,將其作為語言生成模型LSTM的輸入進行sequence to sequence的轉換

,其結構圖如下: 

圖2. 系統結構

此方法的

巧妙之處

在於將視覺和自然語言處理領域中最先進的兩類網路連著在一起,各自負責其擅長的部分,同時進行端到端的訓練學習。

Image Caption的神經網路學習

可以用數學公式概括為:

其中I為圖片,S為生成的句子,θ為網路需要學習的參數,這個公式的含義指的是:學習最佳的網路參數θ最大化在給定圖片下其生成正確描述的概率。同時由於語言句子的長度是不定長的,所以一般將其概率用鏈式法則寫成:

其中N為句子的長度,S_i為句子的每一個詞。更具體的網路形式為下圖:

圖2. 語言模型LSTM,圖像模型CNN和詞嵌入模型

上圖將LSTM的recurrent connection(複現連接)以更加直觀的展開形式畫出來,在網路訓練過程中,目標可以寫為以下的損失函數:

其目標是更新LSTM、CNN和詞嵌入模型的參數,使得每一個正確的詞出現的概率最大,也就是讓此loss函數越小。除了LSTM、CNN模型的選擇和詞嵌入模型都會極大影響最後的效果,此方法最早發明時,最好的DCNN是2014年ImageNet競賽的冠軍網路

GoogLeNet

。而後,隨著更強的CNN網路Inception V1到V3系列的出現,作者發現在此框架的Image Caption的效果也隨之變得更好。這也是必然的,因為更強的CNN網路意味著輸出的向量表示可以做到更好的圖像高層語義表示。

作者在其開源的Tensorflow項目中號召大家去嘗試現在

最強的CNN分類網路Inception-Resnet-V2

,看看是否會有效果的繼續提升。對於詞嵌入模型,最簡單的方式是 one-hot-encoding的方法(向量中代表詞的維度為1,其餘為0),而此方法使用了一個更複雜的詞嵌入模型,使得詞嵌入模型也可以隨著其他兩個網路一起訓練,訓練出來的詞嵌入模型表示被發現可以獲取到自然語言的一些統計特性,比如以下的詞在學習到的空間中是非常相近的,這符合自然語言中這些詞的距離。

圖4. 一些詞在嵌入空間中的相近詞

在最早的版本中,CNN模型使用的是在ImageNet資料庫上預訓練好的分類模型,在Image caption訓練過程中其參數是不做更新的。而在最新的方法中,作者稱在訓練過程中更新CNN最高層的權重可以產生更好的效果,不過這些參數的更新需要在LSTM更新穩定後才能進行,不然LSTM的雜訊會對CNN模型造成不可逆的影響。

視覺模型和語言生成模型進行端到端的聯合訓練有利於相互提升效果。

例如在CNN模型中,可以將圖像中更有利於“描述”而不是用於“分類”的資訊遷移給語言模型,由於ImageNet的訓練資料的類別空間中比較缺少顏色資訊,所以在不使用聯合訓練的CNN模型的2015 CVPR版本中,並不會生成類似於“一輛藍色和黃色的火車”這樣的描述。當進行

聯合訓練後

,caption模型可以生成更精確、更細節化的句子,如下圖所示:

圖5. 初始模型和最新模型生成句子的對比

這讓人會不禁產生一個疑問:

現在的模型是否真的學會對圖片中未曾見過的情境和交互生成全新的描述,還是只是簡單的複述訓練資料中的句子?

這個問題關乎到演算法

是否真正理解

物體及其交互這個核心問題。

科學家們給出了一個令人振奮的答案: Yes。

如今的圖像語言描述系統確實已經發展出自主產生全新的句子能力,例如下圖粗體的描述為不在資料庫中的標注句子:

圖6. 生成的語言描述 (粗體的句子為不在訓練資料中的全新句子)

其生成全新描述過程可以用下圖進行很好的闡述:

圖7. 模型從訓練資料提供的概念中生成全新的描述

此領域的突破同時也得益於如今標注資料的增長,作者們通過實驗證明:

越多的圖像描述樣本,越是可以極大地增強如今已經效果不錯的圖像描述演算法

圖像描述資料庫對比於如今最大的標注資料庫ImageNet還差幾個數量級,所以我們有理由期待,一旦具備更多的標注資料,圖像描述演算法在如今的基礎上還可以得到大幅度的提升。

這也是Goolge的研究者開源其系統的

原因

,其希望讓更多人參與到此領域的研究中。

視覺資訊約占人類從外界獲取資訊的⅔,所以機器視覺的重要性自然不言而喻;語言作為人之所以為人的標誌,因而自然語言處理被稱為人工智慧皇冠上最亮的明珠。Image caption作為一個連接此兩個領域的問題,

其突破性的進展更深層次的意義在於表明人工智慧的全面進步

俗話說「一圖勝千言」,長久以來電腦視覺領域比較關注一些基本的視覺任務,如分類,檢測,分割等。近期在image caption領域的突破使得電腦可以用自然語言去描述圖片,實現真正的“

千言說圖

”。也許我們真的在進入一個嶄新的智慧時代,

而當強人工智慧真正出現之時,一切都將不可逆地去往技術奇點。

圖8. 取於《HER》影片末尾。

我想,如果有一天,“她”真的到來,看到此情此景。

“她”大概會說:天臺上一位穿著紅衣的女生依偎著白衣男生,眼前是鱗次櫛比的上海夜景,他們好像都有點心事重重。

喜欢就按个赞吧!!!
点击关闭提示