nikkie-ftnextの日記

イベントレポートや読書メモを発信

要約タスクの評価指標 BLEUとROUGEの影にPerlありと知りました

はじめに

未来ちゃと静香ちゃんも赤と青。nikkieです。

以前書いた要約の評価指標について、思わぬつながりに気づいたことを綴っていきます

目次

要約タスクの評価指標

以前BERTScoreを取り上げました。

上の記事では『大規模言語モデル入門』を参照しています。

さて、『大規模言語モデル入門』では他にも要約タスクの評価指標が紹介されます。
それがBLEUとROUGEの2つ

  • BLEU:適合率(precision)に基づく
  • ROUGE:再現率(racall)に基づく

ブルー(青)とルージュ(赤)って、命名がめちゃめちゃきれいですよね。

Pythonではこれらはそれぞれライブラリとして公開されています。
これらのライブラリを少しだけ眺めたところ、なんとどちらも裏にPerlの存在があったことに気付きました!

Perlスクリプトの面影

BLEU

Inspired by Rico Sennrich's multi-bleu-detok.perl, it produces the official WMT scores but works with plain text.

It outputs the BLEU score without the comma, so you don't have to remove it with sed (Looking at you, multi-bleu.perl)

BLEUを算出するPerlスクリプトがある!
見つけたのはこちら:

ROUGE

This is a native python implementation of ROUGE, designed to replicate results from the original perl package.

ROUGEを計算できるライブラリは他にもいくつかあります。

それらで言及されているPerlスクリプトはROUGE-1.5.5.plのようでした。

ROUGEの提案論文は、2004年のこちらのようです

終わりに

要約タスクの評価指標、BLEUとROUGEについて、元となる実装がPerlにあると知ったプチ感動を綴ってきました。
Pythonのライブラリとして恩恵を享受していますが、だいぶ前からある評価指標で、当初はPerl実装だったのですね〜