AI用語の基礎知識

【第12回】「ファインチューニング」とは――AIに“仕事の型”を覚えさせる技術

(筆者がChatGPT Image 2で生成)

 ファインチューニングとは、すでに大量のデータで学習済みのAIモデルに対し、特定のタスクや用途に合わせて追加学習を行ない、出力の傾向や振る舞いを調整する技術です。

 AIをゼロから作るには、膨大なデータと計算資源が必要です。しかし、すでに学習済みのモデルを土台にすれば、比較的少ないデータと計算コストで、特定用途に向いたAIへ調整できます。

 たとえば、問い合わせメールの分類、社内文書の表記統一、カスタマーサポートの回答トーン調、専門分野の表現への適応などに使われます。

 つまりファインチューニングは、AIの「答え方」や「判断の癖」を調整する技術だと考えるとわかりやすいでしょう。

ファインチューニングは「知識」よりも「仕事の型」を覚えさせる

 ファインチューニングというと、「AIに新しい知識を覚えさせること」と考えがちです。もちろん、特定分野のデータを使って学習させることで、その分野に強いモデルに近づけることはできます。

 ただし、最新の社内規定や製品仕様のように、頻繁に更新される情報を覚えさせる目的であれば、【第8回】で解説したRAGの方が向いている場合が多いでしょう。RAGは、必要なときに外部資料を検索して参照する仕組みなので、文書を差し替えれば比較的簡単に情報を更新できます。

 一方、ファインチューニングが得意なのは、AIの「振る舞い」や「仕事の型」を変えることです。

 たとえば、問い合わせメールを決まった分類に振り分ける、カスタマーサポートの回答を自社の方針に合わせる、社内文書の表記ルールをそろえる、といった用途です。こうした「この会社ではこう答える」、「この業務ではこう判断する」という型を学ばせるのに、ファインチューニングは向いています。

 たとえるなら、RAGが「必要な資料を開いて答える」方法だとすれば、ファインチューニングは「仕事の作法を身につけさせる」方法です。知識そのものを丸暗記させるというより、回答の仕方や判断の癖を調整する技術だと考えるとわかりやすいでしょう。

ファインチューニングは、重みが調整され、モデルの「癖」が変わる。(筆者がChatGPT Image 2で生成)

モデルの「癖」を変えるには、重みを調整する

【第11回】「オープンウェイトモデル」で説明したとおり、AIモデルには膨大な「パラメータ」、つまり「ウエイト(重み)」があります。

 ファインチューニングでは、この重み、または追加学習用の重みを調整します。これにより、ベースとなるAIの能力を生かしながら、特定の用途に合わせた出力をしやすくするわけです。

 たとえば、ある業界の専門用語を使った文章を多く学習させれば、その分野らしい言い回しに近づきます。過去の問い合わせと正しい回答例を学習させれば、似た問い合わせに対して、会社の方針に沿った回答を返しやすくなります。

 また、不適切な表現を避ける、回答を一定の形式にそろえる、短く答える、丁寧に説明する、といった出力傾向を調整することもできます。

 もちろん、ファインチューニングにも計算リソースは必要です。しかし、AIをゼロから学習させるよりははるかに効率的です。すでに賢いAIを土台にして、必要な部分だけを用途に合わせて調整する。これがファインチューニングの大きな利点です。

RAGとの違い

 では、【第8回】で解説したRAGとは何が違うのでしょうか。

 RAGは、社内マニュアルやデータベースなどの「外部の辞書」を参照して回答する仕組みです。最新情報や、頻繁に更新される事実を扱うのに向いています。

 一方、ファインチューニングは、AIモデルそのものの振る舞いを調整する方法です。回答の形式、判断の癖、文体、専門分野への慣れなどを変えたいときに向いています。

 つまり、RAGは「資料を読ませる」方法、ファインチューニングは「仕事の作法を覚えさせる」方法、と考えるとわかりやすいでしょう。

 実際のAI活用では、どちらか一方だけではなく、社内資料の参照にはRAGを使い、回答スタイルや業務ごとの判断の型にはファインチューニング、と組み合わせも考えられるでしょう。

 ファインチューニングとは、AIに知識をただ詰め込む技術ではありません。AIを、自社や特定業務の「やり方」に合わせて育てるための技術なのです。