🎲
JGLUE dev データのランダムベースラインを求めてみた
最近 LLM が流行っていることもあり、few-shot で JGLUE ベンチマークを求めている気運が高まっていると思うので、比較用にランダムベースラインを求めてみました。
ちなみに実際に日本語 LLM で few-shot 評価をしている結果はこちらにあったりします。
ランダムベースライン
この記事でのランダムベースラインとは、いくつかの選択肢の中から random.choice(選択肢)
で適当に回答を返すシステムを指します。
イメージとしては、学校のテストで鉛筆を転がす感覚に近いと思います。
実装として、sklearn.dummy.DummyClassifier
[link] などもありますが、今回はシンプルに python のランダムモジュールを使用しました。
実際に使用したノートブックがこちらです。
ベースライン算出
選択肢を回答するタスク、ということで今回は JGLUE の中でも下記のタスクに対して実施しました(すべて accuracy です)。
- MARC-ja: positive/negative の極性分類; 2値分類
- JNLI: entailment/neutral/contradiction の3値分類
- JCommonsenseQA: 与えられた5択の中から1つ選ぶ
ちなみにこれらのデータセットの統計情報(ラベルの分布など)はこちらの LREC 論文に記載されています。
結果
ランダムベースラインの結果は以下の通りです。
(seed 値を変えて5回実験し、その平均を記載しています。)
MARC-ja | JNLI | JCommonsenseQA |
---|---|---|
0.495 | 0.327 | 0.192 |
各 seed の結果
seed | MARC-ja | JNLI | JCommonsenseQA |
---|---|---|---|
0 | 0.498 | 0.316 | 0.197 |
1 | 0.501 | 0.324 | 0.196 |
2 | 0.497 | 0.329 | 0.188 |
3 | 0.482 | 0.335 | 0.190 |
4 | 0.497 | 0.329 | 0.188 |
few-shot でこれらのタスクを行う場合は少なくともこの値は超えたい...ですね。
Discussion