[AIGC] 7, BLIP | 統合された理解と生成タスクにより、画像のより高品質なテキスト記述が生成されます

ここに画像の説明を挿入

论文:BLIP: 統合されたビジョン言語の理解と生成のための言語イメージの事前トレーニングのブートストラップ

コード: https://github.com/salesforce/BLIP

オンライン体験: https://huggingface.co/spaces/Salesforce/BLIP

出典: ICML 2022 | Salesforce リサーチ

時間: 2022.02

助ける:

  • 理解タスクと生成タスクを共同でトレーニングできるマルチモーダル ハイブリッド モデル MED が提案されています。これは、シングル モーダル エンコーディング、画像ベースのテキスト エンコーディング、および画像ベースのテキスト デコーディングに使用できます。
  • CapFilt メソッドが提案されています。これは、ネットワークから画像の高品質のテキスト記述を生成し、データセットの信頼性と記述の豊富さを改善し、ダウンストリーム タスクのパフォーマンスを向上させることができます。

ここに画像の説明を挿入

1. 背景

Vision Language Pretraining (VLP) は、多くの視覚言語タスクの効果を大幅に改善しました

しかし、既存のモデルには 2 つの主な問題があります。

  • モデル レベル: 多くの既存の方法では、エンコーダー モデルまたはエンコーダー デコーダー モデルを使用しますが、エンコーダー ベースのモデルをテキスト生成タスクに直接使用することはできず、エンコーダー デコーダー モデルをテキスト検索タスクに適切に使用することはできません。
  • データ レベル: CLIP、ALBEF、SimVLM などの既存の方法は、ネットワークから取得した多数の画像とテキストのペアでトレーニングされます。文献調査は最良の選択ではありません)。

このホワイト ペーパーで提案されている BLIP は、視覚言語理解タスクと生成タスクのための統合された言語イメージ事前トレーニング フレームワークを提供する新しい VLP フレームワークです。主な貢献は次のとおりです。

  • Encoder-Decoder (MED) のマルチモーダル混合: マルチタスクを効率的にトレーニングでき、柔軟に移行できる MED をデカップリングするモデルを提案

    MED は、シングルモード エンコーダーとして、またはイメージに基づくテキスト エンコーダーまたはイメージに基づくテキスト デコーダーとして使用できます。

    MED は、画像とテキストの対照学習、画像とテキストのマッチング、画像言語モデリングの 3 つの視覚言語目的関数を使用してトレーニングされます。

  • キャプションとフィルタリング (CapFilt): ノイズの多い画像とテキストのペアのデータセットの改善された方法

    事前トレーニング済みの MED を微調整して、2 つのモデルを取得しました。1 つはタイトル生成モデルで、もう 1 つはノイズ タイトル フィルタリング モデルです。

次のタスクで優れたパフォーマンスを発揮します。

  • テキスト検索
  • 画像の説明
  • ビジュアルテキストクイズ

2.方法

ここに画像の説明を挿入

2.1 モデル構造

この記事の画像エンコーダーは Transformer 構造を使用します。これは、画像をパッチに分割し、線形マッピングと位置エンコードおよび cls トークンの追加後に Transformer レイヤーに入ります。

理解と生成の両方を達成できる統合モデルをトレーニングするために、次の 3 つのタスクのいずれかを達成できるマルチタスク モデルである MED が提案されています。

  • Unimodel エンコーダー: 画像またはテキストをエンコードできるシングルモード モデル。テキスト エンコーダーは BERT に似ています。
  • 画像に基づいたテキスト エンコーダー: 複数のセルフアテンションにクロスアテンションを挿入して視覚情報を注入し、FFN の後、テキストエンベディングにエンコードトークンもあり、画像とテキストのペアを表現できます
  • 画像に基づくテキスト デコーダー: 画像に基づくテキスト エンコーダーの双方向自己注意レイヤーを因果的自己注意レイヤーに置き換え、デコード トークンを使用して文の開始とシーケンスの終了トークンを識別します。終わりを告げる

ここに画像の説明を挿入

2.2 事前トレーニングの目的

事前トレーニング フェーズでは、作成者は、2 つの理解ベースの目的関数と 1 つの世代ベースの目的関数を含む 3 つの目的関数を共同で最適化します。

ここに画像の説明を挿入

1、画像テキストコントラスト損失(ITC)

シングルモード エンコーダーのトレーニングに使用されます。学習の目的は、正しく一致した画像とテキストのペアがより高い類似表現を持つようにすることです。

著者は、運動量エンコーダーを導入して特徴を生成する ITC 損失を使用し、運動量エンコーダーからソフト ラベルを作成して、ネガティブ ペアの潜在的なポジティブを説明するためのトレーニング ターゲットとして使用します。

2、画像-テキスト マッチング ロス (ITM)

画像テキストのマルチモーダル表現の学習と、視覚と言語のきめ細かな配置の取得に特化した、画像に基づくテキスト エンコーダーのトレーニングに使用されます。

ITM は 2 項分類タスクです。モデルは ITM ヘッドを使用して、画像とテキストのペアが一致 (正) か不一致 (負) かを予測します。

さらに、より多くのネガティブな情報をマイニングするために、著者はネガティブ サンプル マイニングを使用し、バッチ内でコントラストの類似性が高いネガティブ ペアを選択し、損失の計算に使用します。

3、言語モデリングロス(LM)

指定された画像のテキスト記述を生成するために、画像に基づいたテキスト デコーダーをトレーニングするために使用されます。

交差エントロピー損失を使用してモデルをトレーニングし、自己回帰法を使用してテキストの尤度関数を最大化します

また、筆者は損失計算時にラベルスムージング(0.1)も使用した

VLP で一般的に使用される MLM 損失と比較して、LM はグラフィック テキストに関してモデルの一般化能力を向上させることができます。

4. その他

事前学習を効率化するために、テキストエンコーダとテキストデコーダのパラメータを共有しています(SA層を除く) エンコーダとデコーダの機能は以下の通りで、中間の隠れ層(CAとFFN)は同様に、パラメーター共有を使用すると、トレーニング効率が向上します。

  • エンコーダーは、双方向のセルフアテンションを使用して、現在の入力トークンの式を作成します
  • デコーダーは因果的自己注意を使用して次のトークンを予測します

2.3 キャップフィルター

ここに画像の説明を挿入

人為的な高品質のラベル付けにはコストがかかるため、既存のラベル付けされた画像とテキストのデータは非常に小さい

現在の多くの VLP メソッドは、インターネットから直接収集された画像と代替テキストのペアを使用します. 代替テキストは特定の形式のテキストであり、画像をうまく説明できず、モデルの学習をうまく導くことができません. ノイズが発生します. .

そこで著者は、キャプションとフィルタリング (CapFilt) を提案しました。これは、2 つのモデルを含むテキスト コーパスの品質を向上させる方法であり、両方のモデルは事前トレーニング済みの MED で初期化され、COCO で微調整されます。

  • キャプション: LM 目的関数を使用して微調整された、画像に基づいたテキスト デコーダーであり、各画像のテキストをデコードします。つまり、指定された画像のテキスト説明を生成します。
  • フィルター: これは、ITC および ITM 目的関数を使用して微調整し、画像とテキストが一致するかどうかを学習し、ネットワーク テキストと生成されたテキストからノイズの多いテキストを削除する、画像に基づいたテキスト エンコーダーです。 ITM head. テキストは一貫性のない画像の一致であり、テキストはノイズのあるテキストと見なされ、削除されます。フィルターの機能は、Webテキストと合成テキストから一致するテキストを画像として選択することです
  • キャプショナーとフィルターを併用すると、まず画像の説明を生成し、次に、より適切な説明を選択して画像に対応するテキスト説明を更新し、Web データセットのテキスト説明の品質を向上させることができます。
  • 最後に、フィルタリングされた画像とテキストのペアを手動の注釈と組み合わせて、事前トレーニング用の新しいデータセットを形成します

ここでは理解しにくいかもしれませんが、下の図 4 を見てみましょう。

  • T w T_wTw:インターネットから直接取得した対応する画像のテキストデータ、インターネット上には良いテキストと悪いテキストがあります
  • Ts T_sTs: 画像用キャプショナーで生成されたテキストデータ、合成されたテキストデータにも良し悪しがある
  • 画像は一致するタグとしてのみテキストに対応するため、フィルターの責任はT w T_wにありますTwおよびT s T_sTs保持するものを 1 つ選択してください。緑色のものはフィルターによって保持されたテキストを意味し、赤色のものはフィルターによって除外されたテキストを意味します
  • つまり、フィルターは一致するテキストを Web テキストと合成テキストの画像として保持することを選択します。

ここに画像の説明を挿入

ここに画像の説明を挿入

3.効果

3.1 トレーニングの詳細

2 枚の 16 GPU カードでの事前トレーニング

  • 画像トランスフォーマーは、ImageNet の事前トレーニング済み ViT に基づいており、ViT の 2 つのバリアントである ViT-B/16 と ViT-L/16 も拡張します (特別な記述がない実験は ViT-B に基づいています)。
  • テキストトランスフォーマーはBERTです
  • この分布では、batch_size=2880 と batch_size=2400 を使用して、ViT-B と ViT-H を 20 エポックで事前トレーニングします。
  • AdamW オプティマイザ,重み減衰=0.05
  • 画像サイズは、事前トレーニングで 224x224、微調整で 384x384 です。

データセット:

  • 事前トレーニングでは合計 1,400 万のデータを使用
    • 2 つの人間が注釈を付けたデータセット (COCO と Visual Genome) が含まれています
    • 3 つのネットワーク データセット (概念キャプション、概念 12M、SBU キャプション)
  • ノイズの多いテキストを含むネットワーク データセット LAION もあり、これには合計 1 億 1,500 万枚の画像が含まれており、いくつかの実験で使用されます。

3.2 CapFilt の効果

ここに画像の説明を挿入

表 1 に示すように、モデルがさまざまなデータ セットで事前トレーニングされている場合、画像テキストの取得やテキストの説明の生成などのダウンストリーム タスクで CapFilt を使用した場合の効果が比較されます。

  • 14M データセットでキャプショナーまたはフィルターのみを使用すると、パフォーマンスが向上する可能性があります
  • キャプションとフィルターの両方を使用すると、効果が向上します

CapFilt の役割:

  • より大きなデータセットとより大きなバックボーンネットワークを使用することで、パフォーマンスをさらに改善できます。これは、モデルとデータの両方の点で改善する CapFilt の能力も検証します。
  • また、キャプショナーとフィルターにViT-Lを1ダース使用することで、ベースモデルの性能を向上させることもできます。

図 4 は、ネットワーク上のいくつかのテキスト記述 (赤) と合成テキスト記述 (緑) を示しており、キャプショナーのテキスト合成機能とフィルターのノイズ テキスト フィルタリング機能を示しています。

ここに画像の説明を挿入

ここに画像の説明を挿入

3.3 サンプルの多様性がテキストシンセサイザーの鍵

CapFilt では、作成者はニュークリアス サンプリングを使用して合成テキストの説明を生成します。

  • ニュークリアス サンプリングはランダムなデコード方法です. 各デコード トークンは、しきい値 (0.9 など) より大きいトークンからランダムに選択されます。効果が良くなる
  • Beam search は決定論的なデコード方法で、スコアが最も高いトークンが対応するテキストとして選択されるため、多様性が減少します。

ここに画像の説明を挿入

3.4 パラメータの共有と分離

表 3 に示すように、事前トレーニング フェーズでは、テキスト エンコーダーとデコーダーは自己注意以外のパラメーターを共有し、14M データ セットと LIONS ネットワーク データ セットでの事前トレーニングで、いくつかの異なるパラメーター共有方法を比較します。

結果は次のとおりです。

  • SA 以外のパラメーターを共有することは、共有しないよりも優れており、モデルのパラメーターを減らしてトレーニングを高速化することもできます
  • SA層のパラメータを共有すると、符号化タスクと復号化タスクの競合により効果が低下します

ここに画像の説明を挿入

CapFilt では、キャプションとフィルターは COCO で個別に微調整されます。

表 4 に示すように、著者は、キャプショナーとフィルターの間でパラメーターを共有することの影響も検証しました。これは、下流のタスクのパフォーマンス低下につながります。

これは、パラメーターが共有されている場合、キャプション作成者によって生成されたノイズの多いキャプションをフィルターで除外できないためです。つまり、フィルター処理されたノイズの比率が 8% から 25% に減少します。

ここに画像の説明を挿入

3.5 SOTAとの比較

1、画像テキスト検索

著者は、COCO および Flickr30K データセットに対する画像からテキストへの検索 (TR) およびテキストから画像への検索 (IR) の効果を検証しました。

ITC および ITM 損失を使用して事前トレーニング済みモデルを微調整した

効率を改善するために、作成者は最初に画像とテキストの特徴の類似性に基づいて k 個の候補を選択し、次に ITM スコアに基づいてこれらの候補をランク付けします。

表 5 および 6 に示すように、BLIP は良好な結果を達成しています。

ここに画像の説明を挿入

おお

2、画像キャプション

判定データセットとして NoCaps と COCO を使用する

著者は各キャプションの冒頭に「{}の絵」というヒントを与える

表 7 に示すように、14M データでトレーニングされた BLIP は他の方法よりも優れています。

129M データでトレーニングされた BLIP の効果は、200M データでトレーニングされた LEMON の効果と同様です。

ここに画像の説明を挿入

3、視覚的質問応答(VQA)

VQA には、入力画像と質問に答えるモデルが必要です

ここに画像の説明を挿入

ここに画像の説明を挿入

4、 自然言語視覚推論 (NLVR2)

5、ビジュアルダイアログ(VisDial)

ここに画像の説明を挿入

ここに画像の説明を挿入

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/jiaoyangwm/article/details/130036782
おすすめ