News
『大規模言語モデル入門Ⅱ〜生成型LLMの実装と評価』が発売されます
News
2024-08-30
Chief Scientistの山田が監修し、Studio Ousiaのメンバーも執筆に参加している「大規模言語モデル入門Ⅱ〜生成型LLMの実装と評価」が9月4日に発売予定です。
本書は、「大規模言語モデル入門」の続編で、前著の実装部分で扱い切れなかった大規模言語モデルの評価と生成LLMに関連する解説などを掲載しています。
LLMの性能を高めるためのトピックの実装と評価について、実践のための解説書となっています。
書籍詳細
本の概要
※技術評論社のページより抜粋
「大規模言語モデル入門」の続編です。「大規模言語モデル入門」は理論と実装のバランスをとって構成しましたが,本書では実装部分で扱い切れなかった話題を取り上げ,特に大規模言語モデルの評価と生成LLMに関連する解説を充実させます。「大規模言語モデル入門」の9章に続き,10章から始まります。
10章では,後続する章で行う言語モデルの評価方法について解説します。自動評価と人手評価の2つの側面から,ベンチマーク,評価指標,具体的な評価ツールやデータセットなどを取り上げます。11〜13章では,主に大規模言語モデルの性能を上げるためのトピックとして,指示チューニング,人間のフィードバックからの学習,RAGに焦点を当て,それぞれの実装方法,利用するデータセット,評価の方法について解説します。14章では大規模言語モデルの学習における並列・分散処理について詳しく解説します。大規模なデータを限られた計算資源で学習させるノウハウは多くのエンジニアにとって有益な情報となるでしょう。
大規模言語モデルの性能を高めるための各トピックの実装とともに,それぞれの評価について理解できる一冊です。
目次詳細
第10章 性能評価
10.1 モデルの性能評価とは
- 10.1.1 モデルの性能評価方法
- 10.1.2 LLMの性能を評価する上で重要なポイント
- 10.1.3 LLMのベンチマークとリーダーボード
10.2 評価指標を用いた自動評価
- 10.2.1 llm-jp-evalとは
- 10.2.2 llm-jp-evalで扱うタスク
- 10.2.3 llm-jp-evalで使用される評価指標
- 10.2.4 多肢選択式質問応答タスクによる自動評価
10.3 LLM を用いた自動評価
- 10.3.1 Japanese Vicuna QA Benchmark
- 10.3.2 Japanese Vicuna QA Benchmarkによる自動評価
第11章 指示チューニング
11.1 指示チューニングとは
11.2 指示チューニングの実装
- 11.2.1 環境の準備
- 11.2.2 データセットの準備
- 11.2.3 チャットテンプレート
- 11.2.4 トークンIDへの変換
- 11.2.5 モデルの読み込み
- 11.2.6 訓練の実行
- 11.2.7 モデルの保存
11.3 指示チューニングしたモデルの評価
- 11.3.1 モデルの動作確認
- 11.3.2 指示追従性能の評価
- 11.3.3 評価結果の分析
- 11.3.4 安全性の評価
第12章 選好チューニング
12.1 選好チューニングとは
- 12.1.1 RLHF
- 12.1.2 DPO
- 12.1.3 DPOの導出
12.2 選好チューニングの実装
- 12.2.1 準備
- 12.2.2 データセット
- 12.2.3 モデルの用意
- 12.2.4 学習設定
- 12.2.5 訓練の実行
- 12.2.6 モデルの保存
12.3 選好チューニングの評価
- 12.3.1 モデルの動作確認
- 12.3.2 指示追従性能の評価
- 12.3.3 安全性の評価
第13章 RAG
13.1 RAGとは
- 13.1.1 RAGの必要性
- 13.1.2 RAGの基本的なシステム構成
- 13.1.3 RAGが解決を目指すLLMの五つの課題
13.2 基本的なRAGのシステムの実装
- 13.2.1 LangChainとは
- 13.2.2 LangChainでLLMと文埋め込みモデルを使う
- 13.2.3 LangChainでRAGを実装する
13.3 RAG向けにLLMを指示チューニングする
- 13.3.1 AI王データセットを用いた指示チューニング
- 13.3.2 指示チューニングしたモデルをLangChainで使う
13.4 RAGの性能評価
- 13.4.1 RAGの性能評価の三つの観点
- 13.4.2 RAGの性能評価を自動で行う手法
- 13.4.3 RAGの構成要素としてのLLMの能力の評価
第14章 分散並列学習
14.1 分散並列学習とは
- 14.1.1 分散並列学習のメリット
- 14.1.2 分散並列学習を理解するための基礎知識
14.2 さまざまな分散並列学習手法
- 14.2.1 データ並列
- 14.2.2 DeepSpeed ZeRO
- 14.2.3 パイプライン並列
- 14.2.4 テンソル並列
- 14.2.5 3次元並列化
14.3 LLMの分散並列学習
- 14.3.1 Megatron-LMの環境構築
- 14.3.2 学習データの用意
- 14.3.3 Llama2の分散並列学習