BERTScore (metric) — BERTスコア

From Systems analysis Wiki
Jump to navigation Jump to search

BERTScoreは、生成されたテキストの品質を評価するための自動評価指標であり、BERTのような事前学習済み言語モデルから得られる文脈埋め込みを用いて、意味的な類似度を測定する手法です。この指標はTianyi Zhangらによって論文「BERTScore: Evaluating Text Generation with BERT」で提案され、2019年にarXivで公開された後、ICLR 2020で発表されました[1]

n-グラムの完全一致に基づくBLEUやROUGEのような従来の指標とは異なり、BERTScoreは、単語や表現が異なる場合でも、類義語や言い換えによって生じる意味的な近さを一定程度捉えることができます[1]。ただし、BERTScoreはあくまで意味的な類似度を測る指標であり、意味の完全な等価性や事実の正確性まで保証するものではありません。

計算方法

BERTScoreの計算は、主に次の段階から構成されます。以下では、参照テキストをx、生成テキスト(候補テキスト)をyとします。

  1. 文脈埋め込みの取得: 参照テキストと生成テキストの両方をトークンに分割し、事前学習済みのトランスフォーマーモデル(例:BERT、RoBERTa、DeBERTaなど)に入力します。各トークンについて、その文脈に応じたベクトル表現(埋め込み)を抽出します。
  2. コサイン類似度の計算: 2つのテキストのすべてのトークンペアに対してコサイン類似度を計算し、トークン間の類似度行列を作成します[1]
  3. 適合率、再現率、F1スコアの計算: 類似度行列に基づき、生成テキスト内の各トークンに対して、参照テキスト内で最も類似したトークンを見つけることで適合率precision)を計算します。同様に、参照テキスト内の各トークンに対して、生成テキスト内で最も類似したトークンを見つけることで再現率recall)を算出します。これらを調和平均で組み合わせたF₁スコアが総合的な指標としてよく用いられ、BERTScoreはこの適合率・再現率・F₁スコアの3つを出力します。
   RBERT=1|x|xixmaxyjyxiTyj(Recall)
   PBERT=1|y|yjymaxxixxiTyj(Precision)
   FBERT=2PBERTRBERTPBERT+RBERT

ここでxiおよびyjは、それぞれ参照テキストと生成テキストのトークン埋め込みを表します。実装上は、埋め込みをあらかじめ正規化したうえで内積を計算するため、内積はコサイン類似度に一致します。

この指標は柔軟性があり、用途に応じて異なる事前学習済みモデルや層を選択したり、トークンをその重要度に応じて重み付け(IDFウェイトの使用)したりすることが可能です。また、特にRoBERTaなど一部のモデルではスコアが狭い範囲に集中しやすいため、公式実装では値を解釈しやすくするためのベースラインに基づく再スケーリング(rescale_with_baseline)も提供されています[2]

応用と有効性

BERTScoreは、様々なテキスト生成タスクにおける参照ベースの品質評価に応用されています。

  • 機械翻訳: 翻訳の表現が参照訳と異なる場合でも、意味内容がどの程度保たれているかを捉えます。
  • 画像キャプション生成: 原論文でも評価対象とされたタスクであり、生成キャプションと参照キャプションの意味的な近さを測定できます。
  • 自動要約: 異なる表現で同じ主要な情報を伝えている場合でも、n-グラム一致に依存する指標より柔軟に評価できることがあります。
  • 対話システム: 参照応答が用意されている場合、候補応答が参照応答と意味的にどの程度近いかを測る補助として役立ちます。ただし、対話では妥当な応答が多数存在しうるため、BERTScore単独で応答品質を十分に評価することは難しい場合があります。

原論文では、機械翻訳および画像キャプション生成の363システムの出力を用いた評価が行われ、多くの設定でBERTScoreが既存指標よりも人間の評価との相関が高いことが示されました。また、敵対的な言い換え検出タスクにおいて、従来の指標よりも頑健な傾向を示しました[1]

利点

  • 意味的類似度の考慮: 類義語や言い換えを一定程度考慮し、表層的な語彙の一致だけでなく意味レベルでテキストを比較できます。
  • 人間評価との相関: 従来の表層的な指標と比べて、テキストの品質に関する人間の判断と一致しやすい傾向があります[1]
  • 柔軟性: 対象とする言語やタスクに適した事前学習済みモデル(BERT、RoBERTa、多言語モデル、DeBERTaなど)を選択することで、幅広い用途に利用できます。
  • 追加学習が不要: BERTScore自体は、評価タスクごとの教師あり学習やファインチューニングを必要としません。ただし、利用する埋め込みモデルは事前学習済みモデルである点には注意が必要です。これは、人間の評価データでの学習を要するBLEURTのような指標とは対照的です。
  • 適合率・再現率・F₁の出力: 候補テキストが参照テキストの情報をどの程度カバーしているか(再現率)、また余分な内容をどの程度含むか(適合率)を、複数の観点から確認できます。

限界と批判

  • 高い計算コスト: BERTScoreはトランスフォーマーモデルで文脈埋め込みを計算するため、n-グラムのカウントに基づく指標よりも計算負荷が高く、大規模な評価では多くの場合GPUの利用が望ましくなります[2]
  • モデルへの依存性: 評価結果は、使用する事前学習済みモデル、層、トークナイザ、IDF重み付けの有無などに左右されます。そのため結果を報告する際には、モデル名・層・ライブラリのバージョン・ハッシュコードなどを明記することが推奨されており、これらが異なると再現性の問題が生じる可能性があります[2]
  • 語順・構造・事実性の考慮不足: BERTScoreは主にトークンレベルの局所的な意味的類似度に基づくため、テキスト全体の語順や論理構造、数値や事実の正確性を保証するものではありません。語句の順序が入れ替わっていたり、事実に誤りがあったりするテキストでも、語彙的・意味的に参照文へ近ければ高いスコアを得る可能性があります。
  • 参照文への依存: BERTScoreは基本的に参照文との比較に基づく指標です。そのため、参照文が不十分であったり、正解が多数存在するタスクで参照文が少なすぎたりする場合には、評価が偏ることがあります。
  • 解釈可能性の限界: BLEUやROUGEのようなn-グラムベースの指標と比べると、個々のスコアがどのトークン対応に由来するのかを直感的に説明しにくく、標準的な数値だけではエラー分析が難しい場合があります。
  • 社会的バイアス: BERTScoreは事前学習済み言語モデルの表現を利用するため、モデルに内在するステレオタイプや社会的バイアスを引き継ぐ可能性があります。2022年の研究では、BERTScoreを含む事前学習済み言語モデルベースの評価指標が、従来の指標よりも大きな社会的バイアスを示す場合があることが報告されました[3]

評価における意義と役割

BERTScoreは、単なる語彙的な一致だけでなく、文脈埋め込みに基づく意味的な近さを評価に取り入れた点で、生成テキスト評価の発展における重要な指標の一つです。もっとも、いかなる自動評価指標もテキストの品質を完璧に測定することはできません。したがって、BERTScoreはBLEUやROUGEのような古典的な指標を完全に置き換えるものではなく、それらを補完する参照ベースの評価指標として広く用いられています。

実際の評価では、BERTScoreを手動での専門家評価やタスク固有の評価指標、BLEU・ROUGEなどの従来指標と組み合わせることで、生成モデルが一貫性のある意味的に適切なテキストをどの程度生成できているかを、より多面的に把握することができます。

外部リンク

脚注

  1. 1.0 1.1 1.2 1.3 1.4 Zhang, Tianyi; Kishore, Varsha; Wu, Felix; Weinberger, Kilian Q.; Artzi, Yoav. “BERTScore: Evaluating Text Generation with BERT”. International Conference on Learning Representations (ICLR), 2020. arXiv:1904.09675 [cs.CL], 21 Apr. 2019. [1]
  2. 2.0 2.1 2.2 Tiiiger. “bert_score”. GitHub. [2]
  3. Sun, Tianxiang; He, Junliang; Qiu, Xipeng; Huang, Xuanjing. “BERTScore is Unfair: On Social Bias in Language Model-Based Metrics for Text Generation”. Proceedings of the 2022 Conference on Empirical Methods in Natural Language Processing, 2022, pp. 3726–3739. arXiv:2210.07626. [3]