?

基于門控循環單元的圖像描述方法

2020-12-18 07:55王少暉莫建文
桂林電子科技大學學報 2020年3期
關鍵詞:子網復雜度語句

王少暉, 莫建文

(桂林電子科技大學 信息與通信學院,廣西 桂林 541004)

圖像描述能夠使計算機生成與圖像內容對應的描述性語句,這種計算機“視說能力”倍受研究人員青睞。20世紀90年代就有了相關的研究[1],由于當時計算機計算能力的局限性,該技術的研究與發展受到了限制。近年來,計算機的計算能力得到飛躍的提升,圖像描述的研究得到有力支持,再次成為研究熱點。

隨著神經網絡在許多領域取得卓越成果,研究人員將卷積神經網絡[2](convolutional neural networks,簡稱CNNs)和循環神經網絡[3](recurrent neural networks,簡稱RNNs)引入到圖像描述任務中,實現了圖像語義特征的提取和語義特征語句的構建,這種基于神經網絡的網絡模型簡稱為CNN-RNN模型。Mao等[4]最先采用CNN-RNN模型,其中CNN子網負責圖像的特征提取,RNN子網將CNN子網提取的特征作為輔助信息生成語句,值得一提的是該方法中RNN子網僅是傳統的RNN。Vinyals等[5]提出的方法中使用長短期記憶網絡[6](long short-term memory,簡稱LSTM)代替RNN來生成語句,訓練網絡時出現的梯度消失和爆炸[7]狀況得到了改善。Karpathy等[8]在RNN子網中采用了一種改進的LSTM,稱為雙向長短期記憶網絡[9](bi-directional long short-term memory,簡稱BLSTM),并通過該網絡構建了更緊密的映射關系。Wang等[10]借助斯坦福句法分析器將語句分解為結構和屬性,用2個LSTM組成RNN子網分別生成結構和屬性,根據先驗知識得到描述性語句。為了使圖像描述更快地生成語句和更高效地利用計算機資源,針對LSTM中采用3個門分別控制信息的傳遞方式過于復雜的問題,在Vinyals等[5]的方法中引入門控循環單元,提出一種基于門控循環單元的圖像描述方法。

1 LSTM

LSTM的內部結構如圖1所示。

圖1 LSTM的內部結構

LSTM內部結構有單元狀態c和狀態h兩個隱含狀態,遺忘門、輸入門、輸出門3個門。LSTM的內部運算為3個門對信息的處理。

1)假設當前LSTM處于t時刻且輸入為xt,前一時刻單元狀態ct-1的信息保留,遺忘門讀入當前輸入xt和前一時刻隱含狀態ht-1,通過計算得到ft∈[0,1],ft控制單元狀態ct-1信息保留程度,即

ft=σ(Wf[ht-1,xt]+bf)。

ft=1時表示信息完全保留,ft=0時表示信息完全丟棄,σ(·)為Sigmoid激活函數,保證了輸出為0~1的實數。

2)輸入xt,保留前一時刻隱含狀態ht-1的信息,輸入門讀入當前輸入xt和前一時刻隱含狀態ht-1,通過計算得到it,it∈[0,1],it通過對輸入xt和前一時刻隱含狀態ht-1的新表示形式gt進行操作來控制輸入xt和前一時刻隱含狀態ht-1的信息保留程度,即

it=σ(Wi[ht-1,xt]+bi),

gt=δ(Wg[ht-1,xt]+bg),

其中δ(·)為Tanh函數。

3)更新單元狀態ct-1,將遺忘門操作后的單元狀態ct-1與輸入門操作后的gt相加得到t時刻單元狀態ct,

ct=ftct-1+itgt。

4)輸出門讀入當前輸入xt和前一時刻隱含狀態ht-1,通過計算得到ot∈[0,1],ot對經δ轉換的當前時刻單元狀態ct進行保留操作,得到LSTM的t時刻輸出ht,

ot=σ(Wo[ht-1,xt]+bo),

ht=otδ(ct)。

LSTM的門結構減緩了梯度消失或爆炸,但也增加了RNN子網的時間復雜度和空間復雜度。通過3個門逐一對信息的處理增加了計算量,各自的權重和偏置需要占用更多的計算機資源。

2 基于門控循環單元的圖像描述

2.1 門控循環單元

門控循環單元[11](gated recurrent unit,簡稱GRU)的內部結構如圖2所示。

圖2 GRU的內部結構

從圖2可看出,僅需計算隱含狀態h和復位門、更新門。

1)當t時刻的輸入xt傳入GRU時,首先保留前一時刻隱含狀態ht-1轉換為候選信息前的信息,復位門讀入當前輸入xt和前一時刻隱含狀態ht-1進行計算得到的rt∈[0,1],rt控制前一時刻隱含狀態ht-1的信息保留程度,即

rt=σ(Wr[ht-1,xt]+br)。

zt=σ(Wz[ht-1,xt]+bz),

其中δ(·)為Tanh函數。

3)對前一時刻隱含狀態ht-1進行更新,更新門的輸出zt減1后,將前一時刻隱含狀態ht-1控制后的結果與更新門保留操作后的候選信息ht相加,得到GRU的t時刻輸出ht,

循環神經網絡中,運算量主要集中在各個門權重矩陣與輸入的乘法上,因此在計算時間復雜度時將門的運算量記為N,則LSTM的時間復雜度為4N,GRU的時間復雜度為3N。占用存儲空間的參數主要是由隱含狀態和門的權重、偏置組成,隱含狀態參數個數與門總的參數個數相近,因此在計算空間復雜度時將隱含狀態和門的空間復雜度記為S,則LSTM的空間復雜度為5S,GRU的時間復雜度為3S。

在LSTM與GRU的內部結構、運算過程分析和復雜度比較中,顯然GRU的內部結構更為簡潔,運算過程更為高效,復雜度更有優勢,因此GRU可以有效地優化內部運算過程,減少RNN子網的網絡參數。通常,網絡在運行時需要將參數加載到內存中,因此減少參數個數會使網絡占用的內存相應減少??紤]到GRU的這些優點,引入GRU作為RNN子網的循環神經網絡,通過優化RNN子網來提高網絡的實時性,減少網絡消耗的計算機資源。為了突顯方法的有效性,在Vinyals等[5]的方法基礎上進行改進,設計了基于門控循環單元的圖像描述網絡。

2.2 基于門控循環單元的網絡結構

基于門控循環單元的網絡結構如圖3所示。CNN子網與Vinyals等[5]的方法相同,使用的是Google研究團隊提出的Inception v3,而RNN子網與Vinyals等[5]的方法不同,使用的是GRU這種循環神經網絡。

圖3 基于門控循環單元的網絡結構

網絡的運算過程分為2步:

1)CNN子網將待描述的圖像I經前向傳播生成圖像語義特征向量Ie。

Ie=CNN(I),h0=GRU(Ie,0),

其中:I為輸入圖像;CNN(·)為CNN的前向傳播計算;Ie為輸入圖像I經CNN前向傳播計算后生成的圖像語義特征向量;GRU(·)為GRU的前向傳播計算;h0為0時刻隱含狀態;E為詞嵌入矩陣;W、b分別為輸出層的權重、偏置;t=1,2,…,n。

網絡訓練時,CNN子網將圖像作為輸入樣本,將圖像對應的語句標簽P作為監督信號,則損失函數為

3 實驗設計及結果分析

網絡驗證時,采用主流的MSCOCO數據集進行網絡訓練和測試[12]。網絡性能的衡量采用BLEU、METEOR、ROUGE和CIDEr這4種評估方式,其中BLEU由B@1、B@2、B@3和B@4組成。

為了更好地比較性能,采用與NIC[5]相同的訓練方式和超參數設置。訓練完成后,生成的示例如圖4所示。從圖4可看出,本方法生成的描述性語句能夠簡潔地反映出圖像內容。

圖4 本方法生成的示例

客觀性能評估方面,將本方法(inception v3+GRU)與Deep VS、m-RNN、NIC(inception v3+LSTM)在MSCOCO測試集上進行比較,得到性能評價如表1所示。

表1 4種方法在MSCOCO數據集上的性能評價

從表1可看出,本方法在7種評估方式中的評分比Deep VS、m-RNN有明顯優勢;與NIC(改進前的方法)在小數點后一位依然保持一致,因此這2種方法整體生成的語句質量相差甚微,實際上,在訓練時這2種方法的收斂情況并無顯著區別,具體收斂情況如圖5所示。

圖5 2種方法的收斂情況

從圖5可看出,在10×105次迭代中2種方法得到的曲線基本重合,即收斂情況相當,本方法與NIC[5]方法在生成語句的整體質量及其收斂情況無法分出高低,但在生成語句時消耗的時間以及占用的計算機資源存在明顯差異,本方法中RNN子網生成語句時消耗的時間和占用的內存均少于NIC方法。2種方法在不同模式下RNN子網生成語句消耗的時間如圖6所示。

圖6 2種方法中RNN子網消耗的時間

從圖6可看出,2種方法都遠遠超過了各自CPU模式所消耗的時間,本方法無論在CPU模式下還是GPU模式下RNN子網生成語句消耗的時間都更少。2種方法RNN子網生成語句的平均時間和參數個數如表2所示。

表2 2種方法RNN子網生成語句的平均時間和參數個數

從表2可看出,CPU模式下,本方法RNN子網生成語句的平均時間比NIC方法減少了0.03 s,占NIC方法平均時間的3.15%;GPU模式下,本方法RNN子網生成語句的平均時間比NIC方法減少了0.01 s,占NIC方法平均時間的2.5%;參數個數方面,本方法減少了25%,通過參數個數的大幅度減少,使得網絡運行時占用的內存相應地減少。

4 結束語

將門控循環單元引入圖像描述任務中,提出了一種基于門控循環單元的圖像描述方法。該方法有效地解決了RNN子網生成語句時消耗時間較長和網絡運行時占用的內存較大的問題。在生成語句的性能評估中,本方法生成的語句質量仍然保持原方法的水平,且生成語句消耗的時間顯著減少,其中CPU模式下僅需0.92 s,GPU模式下僅需0.39 s;同時,通過減少RNN子網大約77萬個參數的方式,使得網絡運行時占用的內存更小。

猜你喜歡
子網復雜度語句
考慮荷電狀態的交直流微電網多模式協調控制策略
重點:語句銜接
子網劃分問題研究及應用
一種低復雜度的慣性/GNSS矢量深組合方法
航天器多子網時間同步系統設計與驗證
求圖上廣探樹的時間復雜度
某雷達導51 頭中心控制軟件圈復雜度分析與改進
出口技術復雜度研究回顧與評述
我喜歡
VLSM技術應用——以賀州學院行政辦公樓網絡為例
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合