![見出し画像](https://assets.st-note.com/production/uploads/images/47566561/rectangle_large_type_2_fcdfbf40efd1e46b051314bffb79ade1.png?width=1200)
ニューラル要約時代における評価指標の最前線を眺める
はじめまして。メディア研究開発センターの田口です。普段は自然言語処理周りの研究開発をしています。
メディア研究開発センターではTSUNAという自動要約エンジンを開発しています。この開発チームのメンバーの田森がTSUNAに関する記事を書いているのでぜひご一読ください。
また、「長文要約生成API」を先日公開させていただきました。興味のある方はぜひ遊んでみてください。
当たり前の話ですが、要約システムの開発をする上で性能評価は非常に重要です。しかし、要約の評価指標には一体どういうものがあるのでしょうか?
要約研究では長くROUGEという指標が用いられています。この記事でもROUGEについては触れますが、より詳細に知りたいという方は下記の記事がオススメです。
今回の記事では、デファクトスタンダードな評価指標であるROUGEの紹介に加え、2020年に発表された論文の中から、
・人手評価指標
・モデルベースの評価指標
・正解の要約を必要としない評価指標
の3つのアプローチについて簡単に紹介していきます。
要約の評価指標「ROUGE」とは
ROUGE (Recall-Oriented Understudy for Gisting Evaluation) は、2004年に発表された論文で提案された評価指標です。約20年前に発表された指標ですが、現在も要約の論文ではほぼ必ず使われている指標です。
さて、このROUGEは一体何を計算しているのでしょうか?やっていることは非常に単純で、「要約システムが作成した要約 (予測) 」と「人手で書かれた要約 (正解) 」がどのくらい一致しているかを測っているだけです。
たとえば、「TSUNA」のAPIを使って下記の記事のタイトルを作ってみましょう。
生成されたタイトルは下記の通りです。
ユーハイム、バウムクーヘンを再現 名古屋に複合施設
これに対して正解となるタイトル (人が書いたタイトル) は、
AI、バウムクーヘン職人の味を再現 ユーハイム新施設
です。
さっそくROUGEを測ってみましょう。ROUGEといってもROUGE-1、ROUGE-2、ROUGE-Lなど様々な種類がありますが、今回はROUGE-1 (uni-gram、つまり一単語単位での一致) のみを計算してみます。
日本語の場合は、英語のように単語の境目が明確ではないので、ROUGEを計算する前に品詞毎に分解する「分かち書き」をする必要があります。今回はMeCab+IPA辞書で分かち書きをしています。
# 分かち書き後のシステム出力:9単語
['ユーハイム', '、', 'バウムクーヘン', 'を', '再現', '名古屋', 'に', '複合', '施設']
# 分かち書き後の正解タイトル:11単語
['AI', '、', 'バウムクーヘン', '職人', 'の', '味', 'を', '再現', 'ユーハイム', '新', '施設']
機械学習で分類モデルをつくる際に、Precision、Recall、F1という指標で評価しますが、ROUGEも同じことをしているため、まずはそれぞれの指標について見ていきましょう。
上記の例ですと、Recall (正解の要約に含まれる単語との一致率) は、
・バウムクーヘン
・、
・を
・再現
・ユーハイム
・施設
と、6単語です。これを正解タイトルの単語数11で割ると6/11=0.545…となります。一方、Precisionはシステム出力側からの一致率を見ます。システム出力側から正解タイトルとの一致を見ると、9単語のうち6単語が一致しているので6/9=0.666…となります。F1はRecallとPrecisionの調和平均なので0.6となります。
ROUGEは名前の通りRecall-Orientedのため、Recallを報告することが多いです。しかし、昨今のニューラル生成型要約の論文ではF1を報告しているものが増えています。これはRecallだとシステム出力の長さに対してバイアスがかからず、とりあえず長い文を出せば高いROUGEスコアが取れてしまうからです。
では、ROUGEでは一体何がいけないのでしょうか?
AAAI2018の発表されたCaoらの論文では、ニューラル生成型要約では忠実性が損なわれやすいと報告しています。これはどういうことかというと、先ほどのバームクーヘンの記事だと、
バームクーヘン、ユーハイムを再現 名古屋に複合施設
というタイトルでも、ROUGE-1で同じスコアが取れてしまいます。ROUGEスコアとしては高いかもしれませんが、ユーハイムとバームクーヘンの主述関係が逆転しています。
また、ROUGEは単語レベルの一致で計算しているため、言い換えなどが捉えられません。例えば、正解タイトルにある「AI」に対してシステムが「人工知能」が含まれるタイトルを出力しても加点されません。
ROUGEが提案された2004年には、要約アルゴリズムでおなじみのLexRankの論文が発表されています。つまり、当時の時代背景としては、
・抽出型要約の研究がメイン (元文の中から重要な文を引っ張ってくる)
・「主述の反転」や「原文に存在しない単語を生成」するというニューラル生成型要約のあるある事象が起き得ない
というポイントがあります。昨今では、ニューラル抽出型要約もありますが、Transformer Encoder-Decoderをはじめ、PEGASUSやBARTなど事前学習済みのモデルによる生成型要約は非常に盛んです。こういう背景もあって単純に単語の一致を計算するだけでなく、より踏み込んだ評価が必要になっています。
だいぶ前置きが長くなってしまいましたが、今回は3つの論文を中心に要約評価の最前線を”ざっくり”ご紹介したいと思います。
人手による評価―多次元クオリティ指標
自然言語処理のトップ会議の一つであるEMNLP2020に採択されたこちらの論文。“What Have We Achieved on Text Summarization?”という論文のタイトルにもあるように、昨今のニューラルモデルが実際にどの程度うまく要約を書けているかを人手で評価しています。
「人手で評価するといってもどういう観点で評価するの?」というポイントがこの論文にはまとまっており、実際に人手評価を行う際にも参考になる点が多いと思います。
この論文ではMQM (Multidimensional Quality Metric) という評価指標を提案しています。日本語にそのまま訳すと「多次元クオリティ指標」といったところでしょうか (良い訳が思いつかず…) 。具体的には、Accuracy (正確性) とFluency (流暢さ) という2つの観点、8つのサブタイプで評価時のエラータイプを定義しています。
正確性、流暢性の詳細はこちらにまとめました。
正確性
・Addition:入力にはあるものの、要約に含めなくても良い不必要な情報が入っている
・Omission:要約に重要な情報が含まれていない
・Inaccuracy Intrinsic: 入力に書かれている用語やコンセプトの表記が、要約では間違って書かれているため忠実ではない
・Inaccuracy Extrinsic:入力とは無関係な情報が要約に含まれてしまっている
・Positive-Negative Aspect:入力では肯定的に扱われているものが要約では否定的に扱われてしまっている。もしくはその反対。
流暢性
・Word Order:構文上の語順が正しいか
・Word Form:時制など単語の表記が正しいか
・Duplication:ある単語やフレーズが繰り返し出現している
さらに、上記のエラーを3段階の重要度でランク付けしています。詳細は論文に譲りますが、エラータイプの一覧だけ下記に載せておきます。
人手評価にはアノテーションが必要です。この論文では、CNN/DailyMailの要約データセットから150件をランダムに抽出し、10種類のモデルで評価しています。気になるアノテーションについては、「スキルのあるアノテーターは1つのアノテーションに2分半から4分かかった」と書いてあるので、結構な工数がかかっていますね。
肝心の結果はどうでしょう?
簡単にまとめると、ROUGEにおいてはニューラル生成型モデル (Abstractive Methods) が高かったが、MQMで定義した人手評価 (PolyTope Score) ではニューラル抽出型要約 (Extractive Methods) の性能が安定していることがわかりました。
表からもわかるように、抽出型のモデルではエラータイプが3種類 (Addition、Omission、Duplication) に留まるのに対して、生成型のモデルでは幅広いエラーが観測されています。
しかし、結果的には事前学習済みモデルであるBARTの生成型要約がROUGE/MQMともに最高性能を達成しています。BARTに関しては、
・Encoder-Decoderの両方が事前学習されている
・BARTの事前学習時のタスクの一つである「文書の回転」が効いているのではないか
と分析しています。また、ニュース記事の要約の場合リード文に含まれる単語を取りがちなのがニューラルモデルの特徴 (リード文バイアス) ですが、BARTの場合はそのバイアスが少ないとのこと。
事前学習済みモデルについては下記の資料が非常にわかりやすいです。
また、著者らは実際にCNN・DailyMailのデータセットのアノテーション結果や、アノテーションに用いたエクセルシートをGithub上で公開しています。
含意関係認識モデルで忠実性、事実性を評価する
2本目の論文は、こちらも言語処理のトップ会議であるACL2020に採択された論文です。ニューラル生成型要約モデルの出力には、入力には存在しない情報が含まれることがあります。この論文では、そのような現象をHallucinations in summarization (要約の幻覚) と呼び、既存の要約手法を
・要約に含まれる情報がきちんと入力に書かれているか。論文ではFaithfulness (忠実性) と定義
・要約の内容がそもそも事実化どうか。論文ではFactuality (事実性) と定義
の2点で評価しています。1本目に紹介した論文とは異なり、この論文はXSUMというBBCニュースの一文要約データセットを使用し、要約モデルの出力に対してアノテーションを行っています。アノテーションデータは、MQMのアノテーション結果と同じようにGithubで公開されています。
個人的に参考になった知見は下記の2点です。
・含意関係認識のスコアは忠実性、事実の観点と相関がある
・含意関係認識のスコアで訓練データをフィルタリングするとモデルの忠実性、事実性を向上できる
含意関係というのは2つの文A、Bが与えられたときに、ある文Aが真の場合に文Bが真であるかどうかを判定するタスクです。含意関係のタスク、データセットについてはこちらの記事をご参照ください。
要約評価に含意関係認識を適用する場合は、入力に対して要約が含意しているかどうかの確率値をスコアとします。
さて、この含意関係認識モデルを使って評価すると、ROUGEとは何が変わるのでしょうか?本論文ではROUGE、BERTScoreなどの自動評価指標が忠実性・事実性がどの程度相関しているかを確認しています。結果としてはEntailment (含意関係認識) の指標が忠実性・事実性との相関が高いようです。
表にある「QA」って何?と思われた方もいるかもしれません。詳細はAlbertiらの論文をご参照ください。ざっくり言うと、モデルが生成した要約で質問に答えられるかどうかを評価値にするという話です。
含意関係認識が忠実性・事実性と相関があるのはわかりました。しかし、これを要約モデルの性能向上に活かすことはできるのでしょうか?論文内では、4種類のモデル (PTGEN、TCONV2S、TRANS2S、BERTS2S) が生成した4つの要約候補の中から含意関係認識モデルが「含意している」と判定した確率が一番高いものを出力としています (下記表の「ENTAIL」) 。忠実性・事実性のスコアを上げようとすると、ROUGEスコアとのトレードオフが発生してしまいます。また、含意関係認識モデルを本研究で作成したアノテーションデータでfine-tuningすることで、ROUGEをあまり下げずに忠実度・事実性のスコアを向上させています (下記表の「+Fact」) 。
上記の論文とは異なりますが、ACL2019に採択された松丸らの論文では、含意関係認識モデルを使って訓練データをフィルタリングすることで忠実性を向上させられることを報告しています (こちらでも忠実性とROUGEのトレードオフが観測されています) 。また、この論文ではメディア研究開発センターが公開しているJNC・JAMULが使われています (宣伝) 。
人手で書かれた要約なしに評価する
こちらもACL2020で採択された論文になります。論文のタイトルには「複数文書要約のための教師なし要約手法」と書かれていますが、他の要約タスク (単一文書要約、タイトル生成) にも適用可能だと思います。
論文中の表1が提案手法であるSUPERTのイメージ図です。
簡単に説明すると、
・複数文書の中から重要文を抽出して疑似要約を作成
・事前学習済みの言語モデルを使ってシステムが出力した要約と疑似要約の類似度を計算
という流れです。SUPERTで要約システムを評価した場合、既存の評価指標よりも人手評価との相関が高いと報告しています。
「評価対象となる疑似要約をつくれるなら、それで要約モデルを訓練すれば良いのでは?」と思われた方もいるかもしれません。この論文ではまさにその実験を行っているので、興味のある人はぜひ論文をご覧ください。評価手法のコードもGithubで公開されています。
SUPERTを含む自動評価指標14種類を用い、ニューラルの要約手法23種類を評価したこちらの論文も非常に参考になります。興味のある方はぜひご一読ください (個人的にはこういう研究は非常にありがたいです) 。
おわりに
最後に、今回した紹介した論文で日本語要約の評価に転用できるのか?について考えたいと思います。個人的な所感としては、
・MQM:できる
・含意関係認識による要約:(多分) できる
・SUPERT:できるかもしれない
1本目に紹介したMQMについては、アノテーションコストはかかりますが人手評価なので日本語でも可能です。
また、2本目に紹介した含意関係認識モデルで要約を評価する話については、下記のような公開データを使って自前でモデルを構築して評価すればできそうです。
SUPERTの論文では、類似度を計算する際に使うモデルとしてBERT、RoBERTa、ALBERT、SBERTのような事前学習済みモデルで実験しています。一方で、日本語の場合は公開されているモデルは多くなく、英語ほどの性能が出るかも不透明なため、SUPERTが良い評価指標になるのかは不明瞭です。
だいぶ長くなってしまいましたが、今回はこの辺でおしまいにしようと思います。今回紹介した論文全てが日本語でもすぐに転用可能とはいかないですが、参考にできる点は数多くあると思います。
メディア研究開発センターでは、このように最新の研究成果をキャッチアップしつつ、日々研究開発を行っています。今回の記事では紹介できなかった論文も多くあります。引き続き面白い論文があればこちらで紹介できればと思います。
(メディア研究開発センター・田口雄哉)