AIF / ドメイン3 基盤モデルの応用
重要な内容
ファインチューニングと継続的事前学習
は、既存のへ追加の学習を行い、目的の振る舞いへ寄せる手法です。 AIF-C01では、との違いと、必要なデータの形が問われます。
概要
の学習には段階があります。
| 手法 | 使うデータ | 目的 |
|---|---|---|
| 大量の未ラベルデータ | 汎用の言語能力を獲得します。提供者が行います。 | |
| 領域固有の | 業界の語彙や表現へ適応させます。 | |
| ラベル付きの入出力対 | 特定タスクの出力形式や精度を寄せます。 |
主要技術
①ファインチューニングのデータ ⚠️ 頻出
入力と望ましい出力の組を用意します。 件数はタスクによりますが、数百から数千件が目安です。
| 観点 | 注意点 |
|---|---|
| 品質 | 誤った出力例を混ぜると、その誤りを学びます。 |
| 一貫性 | 出力の形式や文体を揃えます。 |
| 実際に来る入力の分布に合わせます。 | |
| 量 | 少なすぎると効果が出ず、偏るとします。 |
| 分割 | 学習用と検証用に分けます。 |
| 検証 | 学習用データの損失が下がり続けても、検証用データの損失が上がり始めたら過学習です。エポック数を減らすか、データの多様さを増やします。 |
⚠️ 頻出: の成否はデータの品質と一貫性で決まります。量を増やすだけでは改善しません。
②継続的事前学習
ラベルを付けずに、領域固有の大量の文章で追加学習します。 専門用語や独特の言い回しを、モデルの土台の側へ取り込むことが目的です。
| 観点 | 内容 |
|---|---|
| データ | ラベルなしの領域テキストを大量に使います。 |
| 目的 | 語彙と表現への適応です。 |
| コスト | 手法の中で最も高くなります。 |
| 判断 | 一般的な言葉遣いでは通じない専門領域で検討します。 |
③関連する用語
| 用語 | 内容 |
|---|---|
| 指示チューニング | 指示に従う形式のデータで学習させ、指示への追従性を高めます。 |
| 転移学習 | すでに学習した知識を別のタスクへ活かす考え方です。はその一形態です。 |
| ドメイン適応 | 領域のラベルなしテキストで追加学習し、業界の語彙や表現へ寄せます。と同じ考え方です。 |
| 人間の評価を報酬として使い、人の好みへ出力を合わせます。 | |
| によるファインチューニング | 正解の出力の代わりに、応答を採点する報酬関数を与えて学習させます。 |
| パラメーター効率のよい調整 | モデル全体ではなく一部だけを学習し、費用を抑える方法です。LoRAが代表例です。 |
汎用の対話モデルは、一般に、で言語の力を得て、指示チューニングで指示に従う形を覚え、RLHFで人の好みへ寄せる順で作られます。
Point
- fine-tuning = 微調整 です。fine は「細かい」、tune は「調整する」 です。
- continued pre-training = 継続的事前学習、事前学習の続きを行うという意味です。
- 和訳
- tune: 調整する、調律する
- Weblio英和辞書「tune」
④運用面の負担 ⚠️ 頻出
カスタマイズしたモデルには、作った後の費用と手間が続きます。
| 項目 | 内容 |
|---|---|
| モデルの保管 | カスタムモデルの保管に費用がかかります。 |
| 実行環境 | では、プロビジョンドを確保するか、対応するモデルならカスタムモデルを配置してで呼び出します。 |
| データや要件が変われば作り直します。 | |
| 評価 | 元のモデルと比べて改善したかを毎回確かめます。 |
| 版の管理 | どのデータで作ったモデルかを記録します。 |
⚠️ 頻出: 「は安く済む」という選択肢は誤りです。学習だけでなく運用の費用も増えます。
⑤RAGとの使い分け
| 要件 | 選ぶ手法 |
|---|---|
| 知識を足したい | |
| 更新が頻繁 | RAG |
| 出典が必要 | RAG |
| 出力の文体や形式を固定したい | |
| 特定タスクの精度を上げたい | ファインチューニング |
| 専門領域の語彙に適応させたい |
⑥Amazon BedrockとSageMaker JumpStartでのカスタマイズ ⚠️ 頻出
は、学習の基盤を管理せずにモデルをカスタマイズできます。 は、公開モデルを含むを、自分のアカウントの学習ジョブとで調整します。
| 観点 | Amazon Bedrock | SageMaker JumpStart |
|---|---|---|
| 主な方法 | 教師あり、によるファインチューニング、です。 | 指示ベースのファインチューニング (指示と応答の組) と、ドメイン適応のファインチューニング (領域のラベルなしテキスト) です。 |
| 学習の基盤 | で、インスタンスを選びません。 | 学習とデプロイのインスタンスを選び、稼働を管理します。 |
| 調整できる範囲 | エポック数や学習率などのです。 | ハイパーパラメーターに加え、LoRAなどのパラメーター効率のよい調整の設定やインスタンスの種類を選べます。 |
| データの扱い | 基盤モデルの個別の複製を学習させます。データは基盤モデルの改善に使われず、モデルの提供者とも共有されません。 | 自分のアカウントの中で学習し、できたモデルを自分のエンドポイントで動かします。 |
| プロビジョンドか、対応するモデルの推論です。 | エンドポイントの稼働時間で課金されます。 |
は、Amazon Bedrockでは対応するモデルが一部に限られます。 ラベルなしの領域テキストでオープンなモデルを適応させたい場合は、JumpStartのドメイン適応のファインチューニングが同じ考え方の方法です。
Amazon Bedrockの強化学習によるファインチューニングは、正解の出力の代わりに報酬関数で応答を採点して学習させます。
| 観点 | 内容 |
|---|---|
| データ | 用途のです。呼び出しのログも使えます。正解の出力は必須ではありません。 |
| 報酬 | 応答を採点する報酬関数を、のコードや、モデルに採点させる方法で定義します。 |
| 向く用途 | 正解の例を集めるのは高価でも、良し悪しを自動で判定できるタスク (コードの生成、計算など) です。 |
| との違い | RLHFは人間の評価を報酬にします。こちらは報酬関数が自動で採点します。 |
⚠️ 頻出: 学習の基盤を持たずに手早く調整するならBedrock、モデルの重みや学習の環境を自分で扱うならJumpStartです。
試験対策
①判断マトリクス
| 問題文のキーワード | 判断 |
|---|---|
| 入力と出力の対を数千件用意した | が可能です。 |
| ラベルなしの社内文書が大量にある | またはです。 |
| 毎月内容が変わる規程を反映したい | RAGです。 |
| 独自の報告書形式で必ず出力させたい | ファインチューニングです。 |
| 学習後の費用を抑えたい | RAGやを選びます。 |
②よくある誤答
- で最新情報を反映できると考えること。更新にはが必要です。
- とファインチューニングを同義と考えること。使うデータと目的が違います。
- カスタムモデルを作れば運用費用が下がると考えること。保管との費用が増えます。