e4exp / paper_manager_abstract

0 stars 0 forks source link

Semi-Autoregressive Transformer for Image Captioning #552

Open e4exp opened 3 years ago

e4exp commented 3 years ago

現在の最先端の画像キャプションモデルは、自己回帰型デコーダを採用しており、過去に生成された単語を条件として各単語を生成するため、推論時の遅延が大きくなります。 この問題を解決するために,すべての単語を並列に生成することで推論速度を大幅に向上させる非自動回帰型画像キャプションモデルが最近提案されている. しかし、これらの非自動回帰モデルは、単語の依存性を過度に除去するため、必然的に生成品質の低下が大きくなります。 そこで本研究では、速度と品質のトレードオフを改善するために、グローバルでは自己回帰性を維持しつつ、ローカルでは単語を並列に生成する半自動回帰モデル(SATIC)を導入しました。 SATICは、Transformerをベースに、いくつかの変更を加えるだけで実装できます。 画像キャプション生成ベンチマークMSCOCOを用いた大規模な実験により、SATICはベルやホイッスルを使わずに、より良いトレードオフを達成できることが示されました。 コードは{{this https URL}}で公開されています。

https://github.com/YuanEZhou/satic

e4exp commented 3 years ago

image

1 Introduction

Image captioning [Vinyals et al., 2015; Yang et al., 2019; Pan et al., 2020]は、画像を自然言語で記述することを目的としており、視覚と言語を結びつける重要なタスクの1つである。 ほとんどの手法は一般的に、畳み込みニューラルネットワーク(CNN)が入力画像をエンコードし、シーケンスデコーダ、例えばリカレントニューラルネットワーク(RNN)またはTransformer[Vaswani et al.、2017]がキャプションを生成する、エンコーダ/デコーダのパラダイムに従っている。 現在の最新モデルは自己回帰デコーダを採用しており、これは以前に生成された単語のシーケンスを条件として各単語を生成することを意味します。 しかし、これらのモデルは、自己回帰的な特性のために、推論の際に高いレイテンシーに悩まされており、産業用のリアルタイムアプリケーションには手が出ないことがあります。 この問題に対処するために、すべてのターゲットワードを並行して予測することで推論の速度を大幅に加速する、非自動回帰復号化[Gu et al. これらの非自動回帰モデルは、基本的に自動回帰Transformerモデル[Vaswani et al. 違いは,非自動回帰モデルが,自動回帰モデルのように(図1の上段に示すように)以前に生成された単語を条件として各単語を生成するのではなく,(図1の下段に示すように)すべての単語を独立して生成する点にある。

しかし,これらの非自動回帰モデルは,自動回帰モデルに比べて,順序依存性を過度に除去しているため,単語の繰り返しや欠落の問題がある。 このような問題を解決するために、速度と品質のトレードオフを求める手法が提案されている。 例えば,反復精製に基づく手法[Lee et al., 2018; Gao et al., 2019; Yang et al., 2021a]は,先行する反復からのキャプション出力を入力とし,最大反復数に達するか変化が現れなくなるまで研磨することで,単語独立性の仮定を補おうとするものである. しかし、より良い品質を得るためには複数回の改良が必要であり、デコーディング速度が著しく低下する。 いくつかの作品[Fei, 2019; Guo et al., 2019]は、より多くのターゲット側のコンテキスト情報を提供することでデコーダの入力を強化しようとしているが、それらは一般的に余分なモジュールを組み込んでいるため、余分な計算オーバーヘッドが生じている。 また、部分的非自動回帰モデル[Fei, 2021; Ran et al., 2020]は、文を連結された一連の単語グループとみなすことで提案されている。グループはグローバルに並列に生成され、グループ内の各単語は左から右に向かって述語される。 このようなモデルは、より良いトレードオフが得られるものの、学習パラダイムがやや厄介です。

これに対して、本稿で紹介するモデル(SATIC)は、同様のトレードオフ性能を達成することができますが、学習時の煩わしさはありません。 具体的には、[Fei, 2021; Ran et al., 2020]と同様に、SATICでも文を単語群の連結とみなします。 しかし、図1の中央に示すように、グループ内の各単語は並行して述語され、グループは左から右へと生成されます。 これは、SATICがグローバルでは自己回帰性を保ち、ローカルでは非自己回帰性を保つことで、両方の世界の良いところを取っていることを意味しています。 また、グローバルに自己回帰性を保持していることから、自己回帰トランスフォーマーモデルと同じように学習することができる点も注目に値します。 SATICモデルを、難易度の高いMSCOCO[Chen et al., 2015]画像キャプションベンチマークで評価しました。 実験結果は、SATICが速度、品質、および容易なトレーニングのより良いバランスを達成することを示しています。 具体的には、SATICは非自動回帰モデルよりも優れたキャプションを生成し、自動回帰モデルよりも高速で、部分的に非自動回帰モデルよりも学習が容易である[Fei, 2021]。 そのほか、モデル全体の各コンポーネントの効果をよりよく理解するために、大規模なアブレーション研究を行っています。

e4exp commented 3 years ago

image

4 アプローチ

本節ではまず、よく知られたTransformer[Vaswani et al., 2017]をベースに構築された我々のSATICモデルのアーキテクチャを紹介し、次にモデル最適化のためのトレーニングパラダイムを紹介する。

4.1 Transformer-Based SATIC Model

事前に学習したFaster-RCNNモデル[Ren et al., 2015; Anderson et al., 2018]によって抽出された画像領域の特徴が与えられた場合、SATICは半順応的にキャプションを生成することを目的とする。 SATICモデルのアーキテクチャを図2に示しますが、これはエンコーダとデコーダで構成されています。

画像特徴量エンコーダ。

エンコーダは、画像の特徴を入力とし、視覚的なコンテキスト表現を生成するもので、L個の同一レイヤーから構成され、各レイヤーには、マルチヘッドアテンションサブレイヤーとポジションワイズフィードフォワードサブレイヤーの2つのサブレイヤーがあります。 両サブレイヤーは、安定した学習のために、残差接続[He et al., 2016]とレイヤー正規化[Ba et al., 2016]の演算を行います。 マルチヘッドアテンションはスケーリングされたドットプロダクトアテンションに基づいて構築されており、クエリQ、キーK、値Vを次のように操作する。

image

ここで dk はキーの次元である。 マルチヘッドアテンションでは、h個の異なるクエリ、キー、値を線形投影で計算し、それぞれについてスケーリングされたドットプロダクトアテンションを計算します。 その後、結果を連結し、連結部分を別の線形投影で投影します。

image

image

image

エンコーダの自己注目は、自分自身に対して注目を行う、つまり(Q = K = V )である。 マルチヘッドアテンションサブレイヤーの後、ポジションごとのフィードフォワードサブレイヤー(FFN)が各ポジションに別々に、かつ同一に適用される

image

学習パラメタ

image

image

Captioning Decoder。

デコーダは、視覚的コンテキスト表現と以前の単語埋め込み特徴を入力とし、予測された単語の確率を出力する。 順序情報を利用するために、単語埋め込み特徴量に位置符号化[Vaswani et al. 各ステップで単語を出力する元の自己回帰変圧器モデルとは異なり、SATICは入力として単語のグループを受け取り、復号時に各ステップで単語のグループを出力する。 各グループはK個の連続した単語を含みます。 復号の最初に、モデルにK個の<START>記号を述語y1, ..., yKに与え、その後、y1, ..., yKを述語yK+1, ..., y2Kの入力として並行して与えます。 この処理は、文が終わるまで続きます。 直感的な例として、K=2の場合を図1の中央に示します。

また、デコーダはL個の同一の層から構成され、各層には、リラックスした因果関係のあるマスクされたマルチヘッドアテンションサブレイヤー、マルチヘッドクロスアテンションサブレイヤー、位置を考慮したフィードフォワードサブレイヤーの3つのサブレイヤーがある。 また、各副層の後に残差接続と層の正規化が適用されます。 マルチヘッドクロスアテンションは、上述のマルチヘッドアテンションと似ていますが、キーと値が視覚的なコンテキスト表現になり、クエリが最後のサブレイヤーの出力になります。 特に、オリジナルのマスクドマルチヘッドアテンションが、リラックスした因果関係のあるマスクドマルチヘッドアテンションに置き換えられていることは強調しておくべきでしょう。 この2つの副層の唯一の違いは、自己注意のマスクにあります。 具体的には、オリジナルの下三角行列マスクが、リラックスした因果関係マスクに置き換えられています。 形式的には、キャプションの長さTとグループサイズKが与えられると、リラックスした因果マスクM∈R T ×Tは次のように定義される。

image

ここで、i,j∈[1,T]、[-]はフロア操作を表す。 直感的な例を図2の右に示すが、ここではT=6、K=2としている。 その結果、リラックスした因果関係のあるマスクされたマルチヘッドアテンションモジュールのスケールされたドットプロダクトアテンションは次のように修正される。

image

e4exp commented 3 years ago

5 実験

5.1 Dataset and Evaluation Metrics.

MSCOCO [Chen et al., 2015] は、画像キャプションの最も一般的なベンチマークです。 オフライン実験には、先行研究で広く使用されている「Karpathy」スプリット[Karpathy and Feifei, 2015]を使用する。 このスプリットには、それぞれ5つのキャプションが付いた113, 287枚のトレーニング画像と、検証スプリットとテストスプリットにそれぞれ5, 000枚の画像が含まれています。 また,オンライン評価のために,40,775枚の画像を含むMSCOCO公式テストセットのキャプションを生成してアップロードした. キャプションの品質を評価するために,BLEU-1/4, METEOR, ROUGE, SPICE, CIDEr [Chen et al., 2015] といった標準的な自動評価指標を使用し,それぞれB1/4, M, R, S, Cと表記しています。

5.2 実装の詳細

各画像は、Andersonら[Anderson et al., 2018]によって抽出された2, 048次元の10~100個の領域特徴で表現されます。 辞書は、5回未満しか出現しない単語を削除して構築され、最終的には9, 487の語彙になります。 16語よりも長いキャプションは切り捨てられます。 我々のSATICモデルと自己回帰型画像キャプションベースモデル(AIC)は、どちらもほぼ[Vaswani et al., 2017]と同じモデルハイパーパラメータの設定に従っています(dmodel = 512, dk = dv = 64, df f = 2048, L = 6, h = 8, pdropout = 0.1)。 学習プロセスとしては,クロスエントロピー損失下のAICをミニバッチサイズ10で15エポック分学習し,[Vaswani et al., 2017]のoptimizerを学習率を5e-4で初期化して使用し,ウォームアップステップを20000に設定しています。 予定されているサンプリング確率を5エポックごとに0.05ずつ増加させていく。 その後、初期学習率を1e-5に設定して25エポックの自己批判的な学習を行い、CIDErスコアを最適化します。 SATICモデルの学習スクリプトはAICモデルと同じですが、SATICモデルの重みを事前に学習したAICモデルで初期化し、クロスエントロピー学習の段階で、学習セットのグランドトゥルースキャプションを、ビームサイズ5のAICモデルのシーケンスナレッジ[Kim and Rush, 2016; Gu et al., 2017a]の結果に置き換える点が異なります。 特に示さない限り,Latencyはテスト分割全体で平均されたバッチングなしの単一画像をデコードする時間を表し,NVIDIA Tesla T4 GPUでテストされている。 画像特徴抽出の時間はレイテンシーに含まれていない。