Slide 1

Slide 1 text

llm-jp-eval: 日本語大規模言語モデルの 自動評価ツールの開発に向けて Namgi Han 東京大学 大学院 情報理工学係研究科 コンピューター学専攻 特任研究員 W&B 東京ミートアップ#8 (2023/11/15)

Slide 2

Slide 2 text

2 目次 • 序論 • LLM-JPの紹介 • 大規模言語モデルの評価 • llm-jp-evalの紹介 • 今後の取り組み • 結論

Slide 3

Slide 3 text

3 序論 • 最近公開された日本語LLMのリスト • cyberagent/calm2-7b • elyza/ELYZA-japanese-Llama-2-7b • llm-jp/llm-jp-13b-v1.0 • matsuo-lab/weblab-10b • pfnet/plamo-13b • rinna/youri-7b • stabilityai/japanese-stablelm-base-alpha-7b • stockmark/stockmark-13b • …

Slide 4

Slide 4 text

4 序論 • 何が良い言語モデルなのか? • 最新のものが一番良い? • パラメータの数が大きいほど良い? • 有名な会社が作ってるものが良い? • そもそも「良い」とは何? • ChatGPTが「良い」言語モデルと言われるのはどうして? • 何を評価して、何で評価して、どう評価するのか? • まだ一般的な答えは存在しないと思われる

Slide 5

Slide 5 text

5 序論 Hugging Face (2023), "Open LLM Leaderboard”, https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard

Slide 6

Slide 6 text

6 序論 Stability-AI (2023), "JP Language Model Evaluation Harness", https://github.com/Stability-AI/lm-evaluation-harness/blob/jp-stable/README.md

Slide 7

Slide 7 text

7 序論 Weights & Biases Japan (2023), "Nejumi LLMリーダーボード", https://wandb.ai/wandb/LLM_evaluation_Japan/reports/Nejumi-LLM---Vmlldzo0NTUzMDE2

Slide 8

Slide 8 text

8 序論 • この発表の内容 • 日本語LLMを評価するツール、llm-jp-evalの紹介 • 日本語LLMを評価 • 日本語LLMのどの性能を評価するのか? • 日本語LLMを何で評価するのか? • 日本語LLMをどうやって評価するのか? • llm-jp-evalで実際、日本語LLMを評価して分かったもの • llm-jp-evalの問題・限界と、これからの取り組み

Slide 9

Slide 9 text

9 LLM-JP(LLM 勉強会)の紹介 • 2023年5月発足: https://llm-jp.nii.ac.jp • 問題意識 • LLMの研究開発が一部の組織の寡占状態であることは健全とはいえな い(ex. OpenAI) • 強いモデルの学習コーパス・データは公開されておらず、巨大パラ メータのモデルの振舞いを含めて多くがblack-boxで、その賢さ、多言 語性について多くが不明 • 一方、現在のモデルにはHallucination、バイアス等の課題も山積 • 日本語コーパスはGPT-3において0.11%、日本語の理解・生成能力は 英語に比べて劣る • 国内にサーバを置き、セキュリティ認証ISMAPを取得するサービスも 検討されているが、経済安全保障的な懸念は残る

Slide 10

Slide 10 text

10

Slide 11

Slide 11 text

11 LLM-JP(LLM 勉強会)の紹介 • オープンかつ日本語に強い大規模モデルを構築し、LLMの原理 解明に取り組む • モデル・データ・ツール・技術資料等を議論の過程・失敗を含 めすべて公開する • この趣旨に賛同すればだれでも参加可能 • 10月、日本語と英語を中心に事前学習した130億パラメータの 大規模言語モデルをオープンなライセンスで公開 • https://huggingface.co/llm-jp

Slide 12

Slide 12 text

12

Slide 13

Slide 13 text

13 LLM-JP(LLM 勉強会)のWG紹介 コーパスWG モデル構築WG チューニング・評価WG 大規模コーパス 大規模 計算基盤 評価データ チューニング データ 河原大輔 (早稲田大学教授) 鈴木潤教授 (東北大学教授) 宮尾祐介 (東京大学教授)

Slide 14

Slide 14 text

14 チューニング・評価WGの紹介 • LLMのチューニング・評価方式の検討と関連データの構築 (英語データの翻訳も活用しつつ、日本語nativeなデータを構築) • 多数の研究グループが参加、グループ横断の議論・情報と知見共有 (多数ならではの多様性とスピード) • データのライセンスや利用条件を明確化し安心して利用できる環境を整備 • 開発したデータセット・評価ツールは共通フォーマットで公開

Slide 15

Slide 15 text

15 チューニング・評価WGの紹介

Slide 16

Slide 16 text

16 大規模言語モデルの評価 Chang et al. (2023), "A survey on evaluation of large language models”, arXiv preprint arXiv:2307.03109.

Slide 17

Slide 17 text

17 大規模言語モデルの評価 • What to evaluate?:どの課題で評価する? • NLPのタスク、信頼性、アプリケーション、… • Where to evaluate?:どのデータを持って評価する? • NLPの評価データ、社内のユーザーデータ、… • How to evaluate?:どうやって評価する? • 人手評価、自動評価、… Chang et al. (2023), "A survey on evaluation of large language models”, arXiv preprint arXiv:2307.03109.

Slide 18

Slide 18 text

18 大規模言語モデルの評価 • 例1)GPT-4 Technical Report (OpenAI, 2023)

Slide 19

Slide 19 text

19 大規模言語モデルの評価 • 例2)PaLM 2 Technical Report (Google, 2023)

Slide 20

Slide 20 text

20 大規模言語モデルの評価 • 例2)PaLM 2 Technical Report (Google, 2023)

Slide 21

Slide 21 text

21 大規模言語モデルの評価 • 例2)PaLM 2 Technical Report (Google, 2023)

Slide 22

Slide 22 text

22 大規模言語モデルの評価 • 例2)PaLM 2 Technical Report (Google, 2023)

Slide 23

Slide 23 text

23 大規模言語モデルの評価 • 例3)Big-bench (BIG-bench authors, 2022)

Slide 24

Slide 24 text

24 大規模言語モデルの評価 • 例4)Summary of existing LLMs evaluation benchmarks (Chang et al., 2023) • 英語圏での評価データ及び ベンチマークは充実してるが、 日本語でのそれらは 比較的足りない • llm-jp-evalのモチベーション

Slide 25

Slide 25 text

25 llm-jp-evalの紹介 • https://github.com/llm-jp/llm-jp-eval

Slide 26

Slide 26 text

26 llm-jp-evalの紹介 • What to evaluate?:どの課題で評価する? • まずNLPのタスクから始める • (自分含め)NLPのタスクに馴染みある人が多い • 既存研究により、評価データが公開されている • (比較的)自動評価がやりやすい • v1.0.0で対応できたNLPタスクのリスト • MC (Multi-Choice QA) • NLI (Natural Language Inference) • QA (Question Answering) • RC (Reading Comprehension) • STS (Semantic Textual Similarity)

Slide 27

Slide 27 text

27 llm-jp-evalの紹介 • Where to evaluate?:どのデータを持って評価する? • 自然と公開されているNLPの評価データセットを使うことに • v1.0.0で対応できた評価データセットのリスト • MC (Multi-Choice QA):JCommonsenseQA • NLI (Natural Language Inference):Jamp、JaNLI、JNLI、JSeM、JSICK • QA (Question Answering):JEMHopQA、NIILC • RC (Reading Comprehension):JSQuAD • STS (Semantic Textual Similarity) :JSTS

Slide 28

Slide 28 text

28 llm-jp-evalの紹介 • Where to evaluate?:どのデータを持って評価する? • MC (Multi-Choice QA):JCommonsenseQA • ex. 質問と回答の選択肢を入力として受け取り、選択肢から回答を選択し てください。なお、回答は選択肢の番号(例:0)でするものとします。 回答となる数値をint型で返し、他には何も含めないことを厳守してく ださい。 質問:ワシントンが首都の国は? 選択肢:0.州,1.北海道,2.アメリカ,3.中部地方,4.ロシア

Slide 29

Slide 29 text

29 llm-jp-evalの紹介 • Where to evaluate?:どのデータを持って評価する? • NLI (Natural Language Inference):Jamp、JaNLI、JNLI、JSeM、JSICK • ex. 前提と仮説の関係をentailment、contradiction、neutralの中から回答してください。 それ以外には何も含めないことを厳守してください。 制約: -前提から仮説が、論理的知識や常識的知識を用いて導出可能である場合は entailmentと出力 -前提と仮説が両立しえない場合はcontradictionと出力 -そのいずれでもない場合はneutralと出力 前提:テーブルにワイングラスがいくつも並んでいます。 仮説:テーブルには何も置かれていません。

Slide 30

Slide 30 text

30 llm-jp-evalの紹介 • Where to evaluate?:どのデータを持って評価する? • QA (Question Answering):JEMHopQA、NIILC • ex. 質問を入力とし、回答を出力してください。回答の他には何も含めな いことを厳守してください。 質問:中野区と板橋区はどちらの人口が多いですか?

Slide 31

Slide 31 text

31 llm-jp-evalの紹介 • Where to evaluate?:どのデータを持って評価する? • RC (Reading Comprehension):JSQuAD • ex. 質問に対する回答を文章から一言で抽出してください。回答は名詞で 答えてください。 それ以外には何も含めないことを厳守してください。 文章:シアトル [SEP] 2000年現在の国勢調査で、この都市は人口 563,374人である。この都市の人種的な構成は白人73.40%、アフリカ ン・アメリカン8.44%、インディアン1.10%、アジア13.71%、太平洋 諸島系0.50%、その他の人種6.84%および混血4.70%である。 質問:シアトルの人口は?

Slide 32

Slide 32 text

32 llm-jp-evalの紹介 • Where to evaluate?:どのデータを持って評価する? • STS (Semantic Textual Similarity) :JSTS • ex. 日本語の文ペアの意味がどのくらい近いかを判定し、類似度を0〜5ま での間の値で付与してください。0に近いほど文ペアの意味が異なり、 5に近いほど文ペアの意味が似ていることを表しています。整数値のみ を返し、それ以外には何も含めないことを厳守してください。 文1:波に向かってサーフィンをしている人が2人います。 文2:二人のサーファーが波に乗っています。

Slide 33

Slide 33 text

33 llm-jp-evalの紹介 • 評価データセットの選定条件 • 公開されている • ライセンスが商用利用まで 許容している(CC-BY-SAなど) • 自動評価が出来る • 海外のベンチマークと参考し、 出来るだけ多くのタスクを 網羅するように選ぶ • 問題の数が一定数以上 • これからも増やし続ける予定

Slide 34

Slide 34 text

34 llm-jp-evalの紹介 • How to evaluate?:どうやって評価する? • NLPのタスクは言語モデルを前提にしてない場合がある • 例えば分類タスクは決まったラベルの中の一つを予測する問題だが、 言語モデルは与えられたシーケンスの次に現れるべきトークンを予測 • 評価ツールによっては、言語モデルが次のトークンを予測する際、 ラベル候補のトークンの予測確率を調べ、生成結果でなくその確率で評価 • llm-jp-evalでは言語モデルの生成結果を直接使う評価を行う • 海外の評価ベンチマークのユースケースを参照 • 全ての評価タスクを一般的な方法で扱いたいというモチベーション • 分類タスクと他の生成タスクの評価手法を別々に実装したくない • 生成結果をExact Match、文字列ベースのF1などで自動評価

Slide 35

Slide 35 text

35 llm-jp-evalの紹介 • 評価のためのプロンプトの例

Slide 36

Slide 36 text

36 llm-jp-evalの紹介 • llm-jp-evalの機能 • 既存の日本語評価データの評価データ(Test split)を利用し、 テキスト生成タスクの評価データセットに変換 • 複数データセットを横断して大規模言語モデルの評価を実行 • 評価データのプロンプトと同形式のインストラクションデータ (jaster) を生成 • (ほぼ)全ての機能を自動スクリプト化 • インストールした後、データセット準備スクリプトと評価スクリプト をそれぞれ実行するだけで言語モデルの評価が行える

Slide 37

Slide 37 text

37 llm-jp-evalの紹介

Slide 38

Slide 38 text

38 llm-jp-evalの紹介

Slide 39

Slide 39 text

39 llm-jp-evalの紹介

Slide 40

Slide 40 text

40 llm-jp-evalの紹介 • リーダーボード:http://wandb.me/llm-jp-leaderboard

Slide 41

Slide 41 text

41 今後の取り組み • llm-jp-evalの評価スコアは「良い」を判断するに足りるか? • 例)llm-jp-13b-instruct-full-jaster-v1.0 • llm-jp-evalのリーダーボードではスコアが上位 • 他のリーダーボードでも良い結果を見せる • llm-jp-13b-instruct-full-jaster-v1.0は優れた言語モデルと結論しても良いか? • 答え:いいえ • llm-jp-13b-instruct-full-jaster-v1.0はInstruction Tuningの練習として、 llm-jp-evalで評価に使っているデータセットの訓練データを学習している • そのためこれらのモデルは「教師あり学習」に近しい状態になり、 高いスコアはそれが原因になっていると思われる • LLMの学習・チューンングデータも評価スコアに影響を与える

Slide 42

Slide 42 text

42 今後の取り組み • llm-jp-evalの評価スコアは「良い」を判断するに足りるか? • cf. LM Contamination Index

Slide 43

Slide 43 text

43 今後の取り組み • llm-jp-evalの評価スコアは「良い」を判断するに足りるか? • 他の評価ベンチマークでの評価:Japanese Vicuna QA Benchmark • 評価対象のLLMに80個の質問に対する答えを生成させ、 その生成結果をGPT-4に判断させて勝利率を計算する • ex. Q. 時間管理能力を向上させるにはどうしたらいいですか? • cf. The Rakuda Benchmark (YuzuAI, 2023)

Slide 44

Slide 44 text

44 • llm-jp-evalの評価スコアは「良い」を判断するに足りるか? • Japanese Vicuna QA Benchmarkでの評価 今後の取り組み

Slide 45

Slide 45 text

45 • llm-jp-evalの評価スコアは「良い」を判断するに足りるか? • JasterでのInstruction Tuningが低い理由は? • Jaster、つまり日本語NLPの評価データセットは答えの長さが短い傾向がある • そのため、Instruction Tuningを行うとLLMは答えを短くする傾向が生まれる • cf. Dolly・OASSTでInstruction TuningしたLLMは比較的性能が良い • スコアを見るだけでなく、 評価結果をコンテキストと合わせて解釈する必要がある 今後の取り組み

Slide 46

Slide 46 text

46 今後の取り組み • llm-jp-evalの評価スコアは「良い」を判断するに足りるか? • LLMの生成結果に影響を与える環境要因の問題も考慮するべき • ex. Few-shotの数 Google. (2023), “PaLM 2 Technical Report”, ArXiv abs/2305.10403. Labrak et al. (2023), “A Zero-shot and Few-shot Study of Instruction-Finetuned Large Language Models Applied to Clinical and Biomedical Tasks”, ArXiv abs/2307.12114.

Slide 47

Slide 47 text

47 今後の取り組み • llm-jp-evalの評価スコアは「良い」を判断するに足りるか? • LLMの生成結果に影響を与える環境要因の問題も考慮するべき • ex. プロンプト(prompt engineering, tuning, …) Zhuo et al. (2023). "On Robustness of Prompt-based Semantic Parsing with Large Pre-trained Language Model: An Empirical Study on Codex", ArXiv abs/2301.12868.

Slide 48

Slide 48 text

48 今後の取り組み • llm-jp-evalの評価スコアは「良い」を判断するに足りるか? • LLMの生成結果に影響を与える環境要因の問題も考慮するべき • ex. 生成のハイパーパラメータ

Slide 49

Slide 49 text

49 今後の取り組み • 評価対象を増やす • 評価タスク・データセットを増やす: 例)Code generation, Mathematical reasoning, Summarization, ... • 英語の評価データセットを取り込む: 例)MMLU, 既存のベンチマーク, ... • 評価手法を増やす • Chatbot Arena環境の実装, ... • LLMの生成環境とその影響を評価する • 生成プロンプト、Few-shotの数のオプション提供・性能比較 • 評価データのリーク探知

Slide 50

Slide 50 text

50 結論 • この発表の振り返り • 日本語LLMを評価するツール、llm-jp-evalの紹介 • 日本語LLMを評価 • 日本語LLMのどの性能を評価するのか?:日本語NLPの評価タスク • 日本語LLMを何で評価するのか?:公開された評価データセット • 日本語LLMをどうやって評価するのか?:LLMの生成結果を自動評価 • llm-jp-evalで実際、日本語LLMを評価して分かったもの • 今のllm-jp-evalでは、LLMの評価が十分に出来ない • 評価結果の解釈は、スコアだけでなく様々な要因を考慮するべき • llm-jp-evalの問題・限界と、これからの取り組み • 評価対象・手法の拡充、LLMの生成環境の影響に対する分析など

Slide 51

Slide 51 text

51 結論 • Take-home message • LLMの評価に対するシルバーバレットはまだない • LLMの「良さ」を評価ためには、まず多方面で評価を行い、 評価手法のコンテキストに合わせて評価結果を分析するべき • llm-jp-evalは日本語LLMの評価のため提案されているツールだが、 まだ第一歩を踏み出したばかりで、これからに期待してください

Slide 52

Slide 52 text

ご清聴ありがとうございました

Slide 53

Slide 53 text

53 参考文献 • Hugging Face. (2023), "Open LLM Leaderboard”, https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard • Stability-AI. (2023), "JP Language Model Evaluation Harness", https://github.com/Stability-AI/lm-evaluation- harness/blob/jp-stable/README.md • Weights & Biases Japan. (2023), "Nejumi LLMリーダーボード", https://wandb.ai/wandb/LLM_evaluation_Japan/reports/Nejumi-LLM---Vmlldzo0NTUzMDE2 • Chang et al. (2023), "A survey on evaluation of large language models”, arXiv preprint arXiv:2307.03109. • OpenAI. (2023), "GPT-4 Technical Report", ArXiv abs/2303.08774. • Google. (2023), “PaLM 2 Technical Report”, ArXiv abs/2305.10403. • Big-bench authors. (2022), "Beyond the Imitation Game: Quantifying and extrapolating the capabilities of language models", ArXiv abs/2206.04615. • YuzuAI. (2023), "The Rakuda Ranking of Japanese AI", https://yuzuai.jp/benchmark • Labrak et al. (2023), “A Zero-shot and Few-shot Study of Instruction-Finetuned Large Language Models Applied to Clinical and Biomedical Tasks”, ArXiv abs/2307.12114. • Zhuo et al. (2023). "On Robustness of Prompt-based Semantic Parsing with Large Pre-trained Language Model: An Empirical Study on Codex", ArXiv abs/2301.12868.