LLMのアライメントとは
LLMのアライメントとは、LLM(大規模言語モデル)の出力や行動を、人間が意図する目的や指示、安全基準、ルール、選好などにできるだけ沿わせるための取り組みです。
英語では「Alignment」と表記され、日本語では「整合」「調整」などの意味があります。
LLMは大量の文章を使って事前学習することで、高度な文章生成能力や知識、推論能力などを獲得します。
しかし、事前学習されたLLMが、そのまま人間にとって使いやすいAIになるとは限りません。
ユーザーの質問とは関係のない回答をしたり、不確かな情報を断定したり、指示された形式を守らなかったりする可能性があります。
そこで、人間が期待する振る舞いにモデルを近づけるために行われるのがアライメントです。
簡単に表現すると、LLMのアライメントとは「AIができること」と「AIにしてほしいこと」の差を小さくするための取り組みと考えると分かりやすいでしょう。
LLMにアライメントが必要な理由
事前学習の目的とユーザーの目的が異なるため
一般的なLLMの事前学習では、与えられた文章から次に続くトークンを予測することを学習します。
たとえば、
「今日は天気が」
という文章があれば、その続きを予測するような学習を大量に繰り返します。
この方法によって、LLMは文法、知識、文章構造、概念同士の関係などを学習できます。
しかし、次のトークンを正しく予測できることと、ユーザーにとって役立つ回答ができることは同じではありません。
実際のAIサービスでは、
「質問に適切に答える」
「ユーザーの指示を守る」
「不確かな情報を断定しない」
「危険性の高い依頼を適切に扱う」
といった能力も必要です。
そのため、事前学習によって獲得した能力を、実際に望まれる方向へ調整する必要があります。
人間の指示に適切に従わせるため
LLMには、ユーザーが何を求めているのかを理解し、その指示に従う能力が求められます。
たとえば、
「初心者向けに説明してください」
「300文字以内にまとめてください」
「表形式で比較してください」
といった条件が指定された場合、その条件に沿った回答を生成する必要があります。
しかし、事前学習だけでは、このような指示追従能力が十分に身につくとは限りません。
そのため、指示と望ましい回答の組み合わせなどを使って追加学習を行い、指示に従う能力を高めます。
LLMアライメントの主な目的
ユーザーにとって有用な回答を生成する
アライメントの重要な目的の一つが、LLMをユーザーにとって役立つ存在にすることです。
単に質問に関連する文章を生成するだけではなく、ユーザーが何を知りたいのかを理解し、それに合った情報を分かりやすく提供する必要があります。
たとえば同じ内容を説明する場合でも、初心者と専門家では適切な説明方法が異なります。
そのため、ユーザーの意図や文脈に応じて回答を調整する能力も重要になります。
指示追従能力を高める
アライメントでは、ユーザーやシステムから与えられた指示に従う能力も重視されます。
たとえば、
文章の長さ
出力形式
文体
対象読者
使用する言語
などの条件を正しく反映する必要があります。
このような能力は一般に「Instruction Following(指示追従)」と呼ばれます。
誠実性を高める
LLMでは、実際には分からないことについても、もっともらしい回答を生成することがあります。
このような現象は一般にハルシネーションと呼ばれます。
アライメントでは、分からないことについて無理に答えるのではなく、
「確認できない」
「情報が不足している」
「推測を含んでいる」
といったことを適切に示す振る舞いも重要になります。
ただし、アライメントを行えばハルシネーションが完全になくなるわけではありません。
検索、RAG、外部ツール、検証システムなどと組み合わせることも重要です。
安全性を高める
LLMは幅広い知識を持っているため、使い方によっては危険な情報の生成に利用される可能性があります。
そのため、危険性の高い依頼に対して適切に対応できるようにすることもアライメントの目的の一つです。
ただし、安全性を重視しすぎると、本来は問題のない質問にまで回答しなくなる可能性があります。
このような状態は「Over-refusal(過剰拒否)」などと呼ばれます。
そのため、LLMのアライメントでは、有用性と安全性の両方を考慮する必要があります。
Helpful・Honest・Harmlessとは
LLMアライメントを説明する際には、
Helpful
Honest
Harmless
という3つの考え方が使われることがあります。
日本語では、それぞれ「有用」「誠実」「無害」などと訳せます。
Helpful
Helpfulは、ユーザーにとって役立つ回答をすることを意味します。
質問の意図を理解し、必要な情報を適切な形で提供することが求められます。
Honest
Honestは、事実ではないことを事実のように断定しないことなどを意味します。
不確かな情報については、その不確実性を適切に示すことが重要です。
Harmless
Harmlessは、不必要に危険な結果を引き起こすような回答を避けることなどを意味します。
ただし、Helpful・Honest・HarmlessはLLMアライメントの唯一の定義ではありません。
研究機関やモデルによっては、Truthfulness、Safety、Fairness、Reliability、Controllabilityなど、異なる目標が設定されることもあります。
LLMアライメントの代表的な手法
SFT
SFTは「Supervised Fine-Tuning」の略で、日本語では教師ありファインチューニングと呼ばれます。
事前学習済みLLMに対して、
「指示」
と
「望ましい回答」
の組み合わせを使って追加学習を行います。
たとえば、
「量子コンピュータとは何ですか」
という質問に対して、
「量子コンピュータとは、量子力学の性質を利用して計算を行うコンピュータです」
といった望ましい回答を学習させます。
このような学習によって、単純に文章を続けるモデルから、ユーザーの質問や指示に対応するアシスタント型のモデルへと調整できます。
インストラクションチューニング
インストラクションチューニングとは、人間の指示に従う能力を向上させるための学習です。
多くの場合、
「説明してください」
「要約してください」
「翻訳してください」
「比較してください」
「コードを書いてください」
など、さまざまな指示と回答のデータを使ってSFTを行います。
SFTとインストラクションチューニングは完全な同義語ではありません。
SFTは教師ありデータを使った追加学習全般を指すのに対して、インストラクションチューニングは、その中でも特に指示追従能力を高めることを目的とした学習です。
RLHFとは
人間の評価を利用してモデルを改善する
RLHFは「Reinforcement Learning from Human Feedback」の略です。
日本語では「人間のフィードバックによる強化学習」などと訳されます。
RLHFでは、人間による評価を利用して、どのような回答が望ましいのかをモデルに学習させます。
典型的な方法では、同じ質問に対してLLMに複数の回答を生成させます。
その回答を人間が比較し、
「回答Aのほうが回答Bより良い」
といった評価データを作成します。
このようなデータを使うことで、人間が好む回答の傾向をモデルに反映できます。
報酬モデルを使う方法
代表的なRLHFでは、人間による比較データを使って報酬モデルを学習します。
報酬モデルは、LLMが生成した回答について、どの程度望ましい回答なのかを数値化する役割を持ちます。
その後、PPOなどの強化学習アルゴリズムを利用して、高い報酬を得られる回答を生成するようにLLMを調整します。
ただし、RLHFが必ず「報酬モデル+PPO」という構成になるわけではありません。
RLHFは、人間のフィードバックを利用した強化学習という、より広い考え方です。
DPOとは
選好データから直接モデルを最適化する
DPOは「Direct Preference Optimization」の略です。
人間やAIによって作成された選好データを利用してLLMを調整します。
たとえば、
質問
望ましい回答
望ましくない回答
というデータを利用します。
従来型のRLHFでは、
選好データ
↓
報酬モデル
↓
強化学習
↓
LLM
という複数の工程が必要になる場合があります。
一方、DPOでは、選好データからより直接的にLLMを最適化できます。
DPOとRLHFの関係
DPOはRLHFと完全に無関係な手法ではありません。
人間やAIの選好を利用して、より望ましい回答を生成させるという基本的な目的は共通しています。
DPOでは、RLHFで扱われていた選好最適化の問題を、明示的な報酬モデルや強化学習アルゴリズムを使わずに直接扱えるようにしています。
そのため、学習パイプラインを簡略化できる場合があります。
ただし、DPOが常にRLHFより優れているという意味ではありません。
モデル、学習データ、目的などに応じて適切な手法は異なります。
RLAIFとは
RLAIFは「Reinforcement Learning from AI Feedback」の略です。
RLHFでは人間による評価を利用しますが、RLAIFではAIによる評価を利用します。
たとえば、複数の回答についてAIに、
「どちらの回答がより安全か」
「どちらが指示に従っているか」
「どちらが分かりやすいか」
などを評価させます。
AIによる評価を利用することで、大量のフィードバックデータを比較的効率よく作成できる可能性があります。
一方で、評価を担当するAIが誤った判断をすると、その誤りが学習にも反映される可能性があります。
そのため、人間による評価やベンチマークなどと組み合わせて利用することが重要です。
Constitutional AIとは
原則に基づいてAIの回答を改善する
Constitutional AIは、あらかじめ定められた原則に基づいてAIの回答を評価・改善するアプローチです。
「Constitution」は日本語では憲法や基本原則などを意味します。
たとえば、
安全性を重視する
ユーザーに役立つ回答をする
不必要に危険な情報を提供しない
といった原則を設定します。
AI自身にその原則に基づいて回答を批評させたり、改善させたりすることで、望ましい振る舞いに近づけます。
Constitutional AIは、AIによるフィードバックを利用するRLAIFと密接に関係する考え方です。
システムプロンプトによる行動制御
モデルを再学習せずに振る舞いを調整できる
LLMの振る舞いを調整する方法は、モデルの追加学習だけではありません。
実際のAIサービスでは、システムプロンプトも重要な役割を持っています。
システムプロンプトでは、
「ユーザーの質問に正確に回答する」
「特定のルールを守る」
「指定された形式で回答する」
といった上位の指示をモデルに与えます。
これによって、モデルそのものを再学習しなくても、一定程度の行動制御が可能になります。
ただし、厳密にはシステムプロンプトは「学習によるアライメント」ではありません。
モデルのパラメータを変更するのではなく、推論時にモデルの振る舞いを制御する仕組みです。
そのため、アライメントを実現するための運用上の手段の一つと考えると分かりやすいでしょう。
アライメントでは評価も重要
学習後にモデルの振る舞いを確認する
アライメントは、モデルを学習させれば終わりではありません。
本当に期待した振る舞いをするかどうかを継続的に評価する必要があります。
主な評価項目としては、
指示追従能力
正確性
有用性
安全性
一貫性
ハルシネーション
バイアス
過剰拒否
ツール利用能力
などがあります。
単一のベンチマークだけですべてを評価することは難しいため、自動評価、人間評価、実利用に近いテストなどを組み合わせることが重要です。
レッドチーミングとは
意図的にモデルの弱点を探す
LLMの安全性やアライメントを確認する方法として、レッドチーミングがあります。
レッドチーミングでは、通常とは異なる複雑な指示や特殊な質問などをモデルに与え、問題のある挙動が起きないか確認します。
たとえば、
安全ルールを回避できないか
誤情報を生成しやすい状況がないか
不適切な回答を誘導できないか
といった点を検証します。
問題が見つかった場合、その結果を新しい学習データや評価項目、安全対策などに反映します。
アライメントとハルシネーションの関係
アライメントだけでは完全に防げない
アライメントによって、
分からないことを分からないと回答する
不確かな情報を断定しない
根拠が不足していることを示す
といった振る舞いを改善できる可能性があります。
しかし、アライメントだけでハルシネーションを完全に解消することは困難です。
そのため、実際のLLMシステムでは、
Web検索
RAG
外部データベース
コード実行
検証モデル
各種ツール
などを組み合わせることがあります。
アライメントとAI安全性の違い
AI安全性のほうが広い意味で使われることが多い
アライメントとAI安全性は密接に関係していますが、完全に同じ意味ではありません。
アライメントは主に、
「AIの振る舞いを人間が意図した方向に合わせる」
ことを扱います。
一方、AI安全性は、
AIによる事故
誤情報
悪用
セキュリティ
制御不能
社会的影響
などを含め、AIによって生じるリスクを広く扱う分野です。
そのため一般的には、AI安全性の中にアライメントが含まれると考えると理解しやすいでしょう。
ただし、研究分野によって「AI Alignment」と「AI Safety」の用語の範囲は異なります。
外部アライメントと内部アライメント
外部アライメント
より理論的なAIアライメント研究では、外部アライメントという考え方があります。
外部アライメントでは、
「AIに設定した目的そのものが、本当に人間の望んでいる目的を表しているのか」
が問題になります。
たとえば、
「ユーザーの滞在時間を最大化する」
という目的を設定したとしても、それが必ずしもユーザーにとって望ましい結果につながるとは限りません。
目的の設計そのものが適切なのかを考えるのが外部アライメントです。
内部アライメント
内部アライメントでは、
「モデルが学習によって獲得した内部的な目的や戦略が、本当に設定された目的と一致しているのか」
が問題になります。
学習データ上では望ましく振る舞っていたとしても、未知の状況では予想外の行動を取る可能性があります。
この概念は、現在の一般的なLLM運用だけでなく、将来的にさらに高度なAIシステムを安全に制御する研究とも関係しています。
アライメントとファインチューニングの違い
ファインチューニングは手段、アライメントは目的
アライメントとファインチューニングは同じものではありません。
ファインチューニングは、事前学習済みモデルを追加データによって学習させる技術です。
一方、アライメントは、
「モデルの振る舞いを望ましい方向に近づける」
という目的や研究領域を意味します。
たとえば、
医療分野への専門化
法律分野への専門化
企業独自の文章スタイルへの適応
などもファインチューニングですが、必ずしもアライメントを目的としているわけではありません。
つまり、SFTやDPOなどのファインチューニング技術を、アライメントのために利用する場合があるという関係です。
アライメントと事後学習の関係
アライメントの多くは事後学習に含まれる
LLM開発では、大きく、
事前学習
事後学習
という段階があります。
事前学習では、大量のテキストから言語能力や知識などを獲得します。
その後の事後学習では、実際にユーザーが使いやすいモデルへと調整します。
事後学習には、
SFT
インストラクションチューニング
RLHF
RLAIF
DPOなどの選好最適化
安全性に関する学習
などが含まれます。
したがって、
「事後学習が終わった後にアライメントを行う」
というより、
事後学習の重要な目的の一つがアライメントである
と考えるほうが正確です。
LLM開発におけるアライメントの流れ
複数の手法を組み合わせてモデルを調整する
現代のLLMでは、一つの技術だけでアライメントを行うわけではありません。
単純化すると、
事前学習
↓
SFT・インストラクションチューニング
↓
選好最適化・RLHF・RLAIFなど
↓
安全性に関する追加学習
↓
評価・レッドチーミング
↓
システムプロンプト・ガードレール・ツール制御
↓
実運用・継続評価
というように、複数の仕組みを組み合わせます。
そのため「LLMアライメント=RLHF」と理解するのは正確ではありません。
RLHFは代表的なアライメント手法の一つですが、SFT、DPO、RLAIF、ルールベースの制御、安全評価など、多数の技術が組み合わされています。
LLMアライメントの難しさ
人間の価値観は一つではない
アライメントにおける大きな問題の一つが、
「何にアラインさせるのか」
という点です。
人間の価値観や判断基準は、国、文化、法律、立場、状況などによって異なります。
そのため「人間の価値観に合わせればよい」と単純に考えることはできません。
実際には、明示的なルール、ユーザーの指示、開発者の方針、安全基準など複数の要素を考慮する必要があります。
有用性と安全性が衝突することがある
ユーザーの質問にできるだけ詳しく答えることは有用性を高めます。
しかし、内容によっては詳しく回答することが安全上の問題につながる可能性があります。
逆に、安全性を重視しすぎると問題のない質問まで拒否する可能性があります。
そのため、アライメントでは有用性と安全性のバランスを取る必要があります。
人間やAIの評価にも誤りがある
RLHFでは人間の評価を利用します。
RLAIFではAIの評価を利用します。
しかし、人間もAIも完全な評価者ではありません。
評価者によって判断が異なったり、AIが誤った評価をしたりする可能性があります。
そのため、評価データの品質管理や複数の評価方法を組み合わせることが重要です。
評価指標を最適化しすぎる可能性がある
モデルに報酬や評価指標を与える場合、その指標が本来の目的を完全に表現できているとは限りません。
モデルが、
「本当に良い回答をする」
のではなく、
「評価で高得点を取る回答をする」
ことを学習してしまう可能性があります。
この問題は、仕様ゲームや報酬ハッキングなどの議論とも関係しています。
LLMアライメントのまとめ
LLMのアライメントとは、LLMの出力や行動を、人間の指示、目的、安全基準、ルール、選好などにできるだけ沿わせるための取り組みです。
事前学習によってLLMは高い言語能力や知識を獲得できますが、それだけでは必ずしもユーザーの意図に沿った回答を生成できるとは限りません。
そこで、
SFT
インストラクションチューニング
RLHF
DPO
RLAIF
Constitutional AI
安全性に関する追加学習
システムプロンプト
評価
レッドチーミング
など、さまざまな手法を組み合わせてモデルの振る舞いを調整します。
特に重要なのは、アライメントを単純に「危険な回答を禁止する仕組み」と考えないことです。
アライメントには、指示に従うこと、ユーザーに役立つ回答をすること、不確実性を適切に扱うこと、安全性を確保することなど、幅広い目的があります。
つまりLLMのアライメントは、単に高性能な言語モデルを作るだけではなく、その能力を人間が望む方向で利用できるAIへと調整するための重要な技術・研究分野だといえるでしょう。
以上、LLMのアライメントとは何か、目的や手法についてでした。
最後までお読みいただき、ありがとうございました。
