面向商業(yè)應(yīng)用的深度學(xué)習(xí)圖像字幕技術(shù)
譯文【51CTO.com快譯】采用人工智能技術(shù)將圖像上的像素序列轉(zhuǎn)換成文字的技術(shù)如今已經(jīng)不像5年前或更早以前那么原始了。更好的性能、準(zhǔn)確性、可靠性使從社交媒體到電子商務(wù)的不同領(lǐng)域的圖像字幕變得平滑、高效成為可能。而標(biāo)簽的自動創(chuàng)建與下載的圖像相對應(yīng)。
本文介紹了圖像字幕技術(shù)的用例、基本結(jié)構(gòu)、優(yōu)缺點(diǎn),此外還部署了能夠?yàn)檩斎雸D像上顯示的內(nèi)容創(chuàng)建有意義的描述的模型。
作為一種視覺語言目標(biāo),圖像字幕可以借助計算機(jī)視覺和自然語言處理來解決。人工智能部分采用卷積神經(jīng)網(wǎng)絡(luò)(CNN)和遞歸神經(jīng)網(wǎng)絡(luò)(RNN)或任何適用的模型來達(dá)到目標(biāo)。
在討論技術(shù)細(xì)節(jié)之前,先了解一下圖像字幕的位置。
人工智能驅(qū)動的圖像標(biāo)記和描述用例
微軟公司技術(shù)研究員、Azure人工智能認(rèn)知服務(wù)公司首席技術(shù)官Xuedong Huang指出:“圖像字幕是計算機(jī)視覺的核心功能之一,可以實(shí)現(xiàn)廣泛的服務(wù)。”
他的這一觀點(diǎn)是有道理的,因?yàn)閳D像字幕技術(shù)已經(jīng)有了廣泛的應(yīng)用,即電子商務(wù)中的圖像標(biāo)簽、照片共享服務(wù)和在線目錄。
在這種情況下,可以根據(jù)圖像自動創(chuàng)建標(biāo)簽。例如,當(dāng)用戶上傳圖像到在線目錄時,可以生成圖像字幕并簡化用戶的操作。在這種情況下,人工智能識別圖像并生成屬性——這些屬性可以是簽名、類別或描述。這項技術(shù)還可以確定物品的類型、材料、顏色、圖案,以及適合網(wǎng)上商店銷售的商品。
與此同時,圖像字幕可以通過圖像共享服務(wù)或任何在線目錄來實(shí)現(xiàn),為搜索引擎優(yōu)化或分類目的自動創(chuàng)建有意義的圖像描述。此外,圖像字幕技術(shù)還允許檢查圖像是否符合平臺的發(fā)布規(guī)則。在這里,它可以作為卷積神經(jīng)網(wǎng)絡(luò)(CNN)分類的替代,有助于增加流量和收入。
注:為視頻創(chuàng)建描述是一個更加復(fù)雜的任務(wù)。不過,目前的技術(shù)狀況已經(jīng)使它成為可能。
(1)盲人自動圖像標(biāo)注
為了開發(fā)這樣的解決方案,需要將圖像轉(zhuǎn)換為文本,然后再轉(zhuǎn)換為語音。這是深度學(xué)習(xí)技術(shù)的兩個著名應(yīng)用。
微軟公司開發(fā)的一款名為“Seeing AI”的應(yīng)用程序可以讓視力有問題的用戶采用智能手機(jī)看到周圍的世界。當(dāng)手機(jī)攝像頭對準(zhǔn)前方事物時,其應(yīng)用程序可以將圖像轉(zhuǎn)換成文本并給出聲音提示,還可以識別打印和手寫文本,也可以識別物體和人員。
谷歌公司也推出了一種可以為圖像創(chuàng)建文本描述的工具,允許盲人或視力有問題的人理解圖像或所在的場景。該機(jī)器學(xué)習(xí)工具由多個層組成。第一個模型識別圖片中的文本和手寫數(shù)字。然后,另一個模型識別周圍世界的對象,如汽車、樹木、動物等。第三層是一個高級模型,能夠在完整的文本描述中找到概要描述。
(2)社交媒體的人工智能圖片字幕
借助基于人工智能工具生成的圖像字幕已經(jīng)可用于Facebook和instagram。此外,其模型將變得更智能,學(xué)習(xí)識別新對象、動作和模式。
Facebook在近五年前創(chuàng)建了一個能夠創(chuàng)建Alt文本描述的系統(tǒng)?,F(xiàn)在它變得更準(zhǔn)確了。以前使用一般的文字來描述圖像,但現(xiàn)在這個系統(tǒng)可以生成詳細(xì)的描述。
人工智能標(biāo)識
圖像字幕技術(shù)也正在與其他人工智能技術(shù)一起部署。例如,DeepLogo是一個基于TensorFlow對象檢測API的神經(jīng)網(wǎng)絡(luò)。它可以識別標(biāo)識。標(biāo)識字的名稱作為圖像字幕顯示?;谏蓪股窠?jīng)網(wǎng)絡(luò)(GAN)的字形合成模型的研究可以揭示生成對抗神經(jīng)網(wǎng)絡(luò)(GAN)的工作原理。
圖像字幕深度學(xué)習(xí)模型研究
在此應(yīng)用了一個為圖像創(chuàng)建有意義的文本描述的模型,同時牢記可能的用例。例如,圖像字幕可以描述一個動作和對象,它們是每個圖像上的主要對象。對于訓(xùn)練模型,可以使用Microsoft COCO2014數(shù)據(jù)集。COCO數(shù)據(jù)集是大規(guī)模目標(biāo)檢測、分割和字幕數(shù)據(jù)集。它包含了大約150萬件不同的物品,分為80個類別。每個圖像都帶有五個人工生成的字幕。
采用Andrej Karpathy的訓(xùn)練、驗(yàn)證和測試分割,可以將數(shù)據(jù)集劃分為訓(xùn)練、驗(yàn)證和測試部分。此外,還需要像BLEU、ROUGE、METEOR、CIDEr、SPICE等參數(shù)來評估結(jié)果。
圖像字幕的機(jī)器學(xué)習(xí)模型比較
在通常情況下,圖像字幕的基線架構(gòu)將輸入編碼成固定形式,并逐字解碼成序列。
編碼器編碼的輸入圖像與三個顏色通道成為一個更小的打印與學(xué)習(xí)通道。這個較小的編碼圖像是原始圖像中有用信息的摘要。對于編碼,可以應(yīng)用任何一個卷積神經(jīng)網(wǎng)絡(luò)(CNN)架構(gòu)。此外,可以對編碼器部分使用遷移學(xué)習(xí)。
解碼器查看已經(jīng)編碼的圖像并逐字生成字幕。然后,每個預(yù)測的單詞被用來創(chuàng)建下一個單詞。在繼續(xù)實(shí)施之前,先看看通過模型創(chuàng)建和使用Meshed-Memory轉(zhuǎn)換器模型進(jìn)行測試得到了什么結(jié)果。
基于人工智能的圖像字幕
此外還研究了導(dǎo)致錯誤的例子。出現(xiàn)錯誤通常有幾個原因,最常見的錯誤是圖像質(zhì)量差和初始數(shù)據(jù)集中缺少某些元素。該模型是在一個包含一般圖片的數(shù)據(jù)集上訓(xùn)練的,所以當(dāng)它不知道內(nèi)容或不能正確識別它時就會出錯。這和人類大腦的工作方式是一樣的。
這里有另一個例子來說明神經(jīng)網(wǎng)絡(luò)是如何運(yùn)作的。例如數(shù)據(jù)集模型中沒有老虎,與其相反,人工智能系統(tǒng)會選擇它所知道的最近的物體,這和人類的大腦處理未知事物是一樣的。
圖像字幕的自上而下的注意力模型
自上而下的注意力模型是第一個可供比較的模型。自上而下的注意力機(jī)制結(jié)合了自下而上和自上而下的注意力機(jī)制。
Faster R-CNN用于建立目標(biāo)檢測和圖像字幕任務(wù)之間的聯(lián)系。由于利用了各行業(yè)領(lǐng)域知識,區(qū)域建議模型在目標(biāo)檢測數(shù)據(jù)集上進(jìn)行了預(yù)先訓(xùn)練。此外,與其他一些注意力機(jī)制不同的是,這兩個模型都使用了帶有自上而下的注意力機(jī)制。
使用Faster R-CNN(圖5A)進(jìn)行圖像特征提取。FasterR-CNN是一種對象檢測模型,用于識別屬于特定類別的對象,并使用包圍框?qū)ζ溥M(jìn)行定位。Faster R-CNN檢測物體分為兩個階段。
第一階段被稱為區(qū)域建議網(wǎng)絡(luò)(RPN),用于預(yù)測對象建議。采用具有交并比(IoU)和非極大值抑制(NMS),選擇頂框方案作為第二階段的輸入。
在第二階段,使用感興趣區(qū)域(RoI)池為每個框提議提取一個很小的特征圖(例如14×14)。然后,這些特征圖被批處理在一起,作為卷積神經(jīng)網(wǎng)絡(luò)(CNN)最后一層的輸入。因此,最終的模型輸出包括一個softmax分布在類標(biāo)簽上,以及每個框提議的特定于類的邊界框細(xì)化。
例如上圖中建議的字幕模型使用一個自上而下的注意力機(jī)制,在字幕生成過程中衡量每個特征。這是帶有上下注意機(jī)制的長短期記憶網(wǎng)絡(luò)(LSTM)。較高的層次上,字幕模型由兩個LSTM層組成。
用于圖像字幕的Meshed-Memory 轉(zhuǎn)換器模型
另一個用來解決圖像字幕任務(wù)的模型是Meshed-Memory 轉(zhuǎn)換器。它由編碼器和解碼器部分組成,并由多個層次堆疊而成。編碼器還包括前饋層,解碼器具有加權(quán)的可學(xué)習(xí)機(jī)制。
圖像的區(qū)域是用多級方式編碼的。該模型同時考慮了低級和高級關(guān)系。所學(xué)的知識被編碼為記憶向量。編碼器和解碼器部分的層連接在一個網(wǎng)狀結(jié)構(gòu)。解碼器從每個編碼層的輸出中讀取,并對單詞進(jìn)行自我注意,對整個編碼層進(jìn)行交叉注意,然后對結(jié)果進(jìn)行調(diào)制和求和。
因此,該模型不僅可以利用圖像的視覺內(nèi)容,還可以利用編碼器的先驗(yàn)知識。
兩種圖像字幕模型的比較
根據(jù)研究,可以比較Updown模型和M2 Transformer模型,因?yàn)樗鼈兪窃谙嗤臄?shù)據(jù)上訓(xùn)練的。以下兩個圖表提供了這兩種模型的比較。
表1 評估指標(biāo)
表2 推斷時間和記憶
圖像字幕:結(jié)果分析和未來展望
兩種模型都顯示出相當(dāng)好的結(jié)果。在他們的幫助下,可以為數(shù)據(jù)集中的大多數(shù)圖像生成有意義的字幕。此外,由于使用Faster-RCNN進(jìn)行特征預(yù)提取,并在龐大的Visual Genome數(shù)據(jù)集上進(jìn)行預(yù)訓(xùn)練,該模型可以識別人們?nèi)粘I钪械脑S多對象和行為,從而正確描述它們。
有什么區(qū)別?
Updown模型比M2 Transformer更快、更輕量。原因是M2 Transformer使用了更多的技術(shù),比如編碼器和解碼器之間的額外(“網(wǎng)格”)連接,以及用于記憶過去經(jīng)驗(yàn)的記憶向量。此外,這些模型使用不同的注意力機(jī)制。
自上而下的注意可以一次完成,而M2 Transformer中使用的多頭注意力應(yīng)該并行運(yùn)行幾次。然而,根據(jù)獲得的指標(biāo),M2 Transformer取得了更好的結(jié)果。在它的幫助下,可以生成更正確、更多樣的字幕。M2 Transformer預(yù)測在描述數(shù)據(jù)集的圖像和其他一些相關(guān)圖像時包含較少的不準(zhǔn)確性。因此,它能更好地完成主要任務(wù)。
本文比較了這兩種模型,但也有其他方法來完成圖像字幕的任務(wù)。它可以改變解碼器和編碼器,使用各種單詞向量,合并數(shù)據(jù)集,并采用遷移學(xué)習(xí)。
可以對該模型進(jìn)行改進(jìn),以實(shí)現(xiàn)更適合特定業(yè)務(wù)的結(jié)果,無論是作為一個應(yīng)用程序,可以為有視力問題的人員或作為額外的工具嵌入電子商務(wù)平臺。為了達(dá)到這個目標(biāo),模型應(yīng)該在相關(guān)的數(shù)據(jù)集上進(jìn)行訓(xùn)練。例如,對于一個能夠正確描述衣服的系統(tǒng)來說,最好是在帶有衣服的數(shù)據(jù)集上進(jìn)行訓(xùn)練。
原文標(biāo)題:Deep Learning Image Captioning Technology for Business Applications,作者:MobiDev
【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】