BARTとは何か?破損→復元の事前学習で要約・翻訳を実現するSeq2Seqトランスフォーマーモデルの解説

BARTとは — 概要

BART(Bidirectional and Auto-Regressive Transformers)は、Facebook AI(現 Meta AI)が提案した、テキスト生成と理解の両方に強いシーケンス・ツー・シーケンス(seq2seq)型のトランスフォーマーモデルです。2019年に発表された論文「BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension」で紹介され、事前学習(pre-training)に「破損(noising)→復元(denoising)」という自己教師あり学習を導入することで、要約や翻訳、質問応答などの下流タスクで高い性能を示しました。

設計思想と位置づけ

BARTは、BERTのようなエンコーダ(双方向の文脈理解能力)と、GPTのようなオートレグレッシブなデコーダ(左から右への生成能力)を組み合わせたseq2seqアーキテクチャです。これにより入力文の深い表現を得ながら、出力を逐次生成する能力を両立しています。

他の代表的な事前学習モデルとの関係は次の通りです。

  • BERT:エンコーダのみで、主に理解タスクに強い。
  • GPT:デコーダのみのオートレグレッシブモデルで、生成タスクに強い。
  • T5:テキストを「入力→出力」に統一して学習するテキスト・トゥ・テキストフレームワーク。BARTと同様にseq2seqだが、事前学習目的やノイズ設計が異なる。

事前学習(Denoising)とノイズの種類

BARTのコアは「破損したテキストを復元する」事前学習です。入力テキストに意図的にノイズを入れ、そのノイズ化された入力から元のテキストを生成(復元)するようエンコーダ・デコーダを学習させます。論文で試した代表的なノイズ手法は以下の通りです。

  • トークンマスキング:単語やサブワードをマスクする(BERTの類似手法)。
  • トークン削除:いくつかのトークンを削除して欠落を作る。
  • テキストインフィリング(span masking):複数トークンの連続部分(スパン)をまとめて置換・マスクする。
  • 文の順序入れ替え(sentence permutation):文単位で順序をシャッフルする。
  • ドキュメント回転(document rotation):文の一部を先頭に移動して文脈を変える操作。

これらのノイズにより、モデルは局所的な穴埋めだけでなく、文脈の再構築や文間の整合性を学習します。結果として生成と理解の両面で汎用的な表現が得られます。

アーキテクチャの特徴と実装バリエーション

BARTは標準的なトランスフォーマーのエンコーダ・デコーダ構成を採用しています。公開時点での代表的なサイズは「BART-base」(比較的小規模)と「BART-large」(大規模)です。BART-largeは数億パラメータ規模で、より高精度な生成を可能にします。

また、BARTの設計は派生モデルや拡張(例えば多言語版の mBART)に容易に適用でき、実運用や研究コミュニティで広く採用されています。

代表的な応用例

BARTは事前学習後、下流タスクにファインチューニングすることで高い性能を出します。典型的な応用は次のとおりです。

  • 要約(abstractive summarization):CNN/DailyMailやXSumなどのデータセットで高スコアを達成。
  • 機械翻訳:seq2seqフレームワークを活かした翻訳タスクで有効。
  • 質問応答(生成型):質問に対して自然文を生成する用途。
  • 文書修復・ノイズ除去:欠損や誤りのあるテキストの補完。
  • スタイル変換やデータ拡張:生成能力を利用したテキスト変換。

BARTの長所

  • 理解と生成を1つのフレームワークで両立できるため、タスク幅が広い。
  • 事前学習時の多様なノイズがロバストな表現を育て、ファインチューニング先で高い性能を示す。
  • FairseqやHugging Face Transformersといった実装が整備されており、実務で使いやすい。

注意点・限界(実務上のリスク)

  • 幻覚(hallucination):生成モデル全般の問題で、モデルが事実と異なる情報を「自信をもって」生成することがある。特に知識が必要な出力では要注意。
  • バイアスと有害出力:事前学習データの偏りが生成結果に反映され得るため、検査やフィルタリングが必要。
  • 計算コスト:大規模モデルはトレーニング・推論ともにGPU/TPUなどの計算資源を多く消費する。
  • 長文処理の制約:標準トランスフォーマーの入力長制限(トークン数制限)により、非常に長い文書の直接的な処理は工夫が必要。

実装と運用上のポイント

実務でBARTを利用する際に抑えておくとよいポイントを挙げます。

  • トークナイザと特殊トークンの扱い:ライブラリ(Hugging Faceなど)で提供されるトークナイザを使うのが安全。
  • デコード戦略:ビームサーチ、長さペナルティ、トップk/トップpサンプリングなど、出力の品質と多様性を調整するハイパーパラメータが重要。
  • ファインチューニングのデータ量:タスクに応じて適切なデータ量が必要。少数ショットでは過学習や発散に注意。
  • 評価指標の選定:要約ではROUGE、翻訳ではBLEU、生成の質評価では人手評価も併用することが望ましい。
  • モデル圧縮と推論最適化:蒸留、量子化、オンデマンド生成などで実運用コストを下げられる。

派生モデルと関連技術

BARTの思想を受けた派生や関連モデルが複数あります。代表的なものを挙げると:

  • mBART:多言語対応のBART。翻訳向けなど多言語タスクで利用される。
  • PEGASUS:要約向けに特化した事前学習手法を用いるGoogleのモデル(BARTと比較されることが多い)。
  • T5:テキスト→テキストの統一表現を用いる別系統のseq2seqモデルで、目的関数設計が異なる。
  • 多くの実務ライブラリ(Fairseq, Hugging Face Transformers)がBART実装を提供し、容易に利用できる。

実例:要約タスクでの基本的な運用フロー(概略)

  • 事前学習済みのBART(largeなど)をライブラリから取得。
  • 要約データセット(入力文→要約)でファインチューニング。
  • 推論時はデコード戦略(ビーム幅、長さペナルティ)を調整して出力を生成。
  • 人手評価や自動評価(ROUGE)で品質を確認し、必要に応じてデータ増強や制約付き生成を導入。

まとめ

BARTは「破損→復元」という事前学習によって、理解と生成の両面で強力な能力を持つseq2seqモデルです。要約や翻訳など自然言語生成の主要タスクで実用的な性能を持ち、実装エコシステムも成熟しています。一方で幻覚やバイアス、計算コストといった課題があり、運用時には出力の検証や最適化が必要です。

参考文献