機械学習のファインチューニングの概要

Jeffrey Erickson氏|シニア・ライター| 2025年2月25日

AI がビジネスにとってより有用となり、特に AI エージェントがより複雑なワークフローを担うようになる中で、AI のファインチューニングは重要な役割を果たすようになります。これらのエージェントは、データに関する質問に回答し、コードの作成、カレンダーの管理、分析インサイトの提示など、当社に代わってアクションを実行できます。途中で、AIモデルは連携してデータやドキュメント・ストアの調査、情報の収集、精度の再確認、適切なアクションのトリガー、コミュニケーションを行う必要があります。採用される高度な AI モデル は、一般的な言語パターンに精通しているだけでなく、独自の用語や知識ベースなど、特定の分野向けに最適化されている必要があります。AI モデルや将来の AI エージェントが細かいニュアンスや詳細を正確に理解できるようにするには、ファインチューニングがどのように役立つのでしょうか。次に、AIモデルのファインチューニングの側面について説明します。

ファインチューニングとは

AIモデルのファインチューニングは、データ・サイエンティストと機械学習(ML)エンジニアが、トレーニングを受けたMLモデルを適応させ、特定のタスクでパフォーマンスを向上させるために使用するプロセスです。たとえば、Cohere's CommandやMetaのLlama 2などの汎用大規模言語モデル(LLM)を、ファインチューニングを使用して医療現場やカスタマーサービスといった特定の分野においてより自然に応答できるように調整します。

これらの汎用モデルは、「基盤モデル」と呼ばれることもありますが、オープンなインターネットのほぼ全体からのデータなど、大規模な汎用データセットに基づいてトレーニングされます。これは、幅広い機能やパターンを学習および理解するのに役立ちます。言語処理に長けたモデルもあれば、テキストに加え画像、映像、音声などのマルチモーダルデータを扱えるモデルもあります。

ファインチューニングでは、この高度なモデルを使用し、特定のタスクまたはビジネス・ドメインから抽出された小規模なデータ・セットに関するトレーニングを継続します。これにより、モデルはタクソノミ、コンテキスト、さらにはその分野の専門的な知識を理解できます。

ファインチューニングの目的は、モデルがもともと持っている膨大な知識を維持しつつ、実際に運用される業務分野の細かなニュアンスや専門的な要素を追加することです。たとえば、一般的な AI モデルを医用画像を読み取って解釈できるようにファインチューニングしたり、特定地域の方言に精通したチャットボットを、より適切にカスタマーサービスに活用できるようにしたりすることが可能です。幅広いドメインで高性能AIエージェントを構築する取り組みは、多くの場合、ファインチューニング・モデルに依存します。次に、ファインチューニングの方法と仕組みに関する詳細な説明を示します。

主なポイント

  • AIファインチューニングは、センチメント分析、言語生成、画像検出、その他の多くのワークロードなど、特定のタスクに関するコンテキストと知識を提供するために、汎用AIモデルをトレーニングするプロセスです。
  • ファインチューニングは、AIエージェントを含むアプリケーションのLLMの出力を改善するいくつかの方法の1つです。
  • モデルを一から訓練する場合と比較して、ファインチューニングにははるかに少ないデータ量で済みます。
  • 微調整後、AIモデルは、医療、製造、カスタマーサービスなどの特定の分野において、より会話的で正確になる可能性があります。

ファインチューニングのメリットと課題

AIファインチューニングを実施する際にチームが直面する主な課題は、ユースケースに関連する高品質でラベル付けされたデータの可用性です。このようなデータの取得や作成には、コストと時間がかかる場合があります。たとえば、画像内の特定部分を AI に学習させるための領域をマーキングしたり、テキスト中の重要情報にラベルを付けたりといった作業には、かなりの時間を要します。それでも、微調整は、現代のAI開発において重要な技術となる魅力的な利点を提供します。いくつかの長所と短所を見てみましょう。

長所

  • AIモデルを最初からトレーニングするのではなく、時間とコストを節約: 基盤モデルのファインチューニングには、トレーニング時間を大幅に短縮し、計算コストを削減するなど、いくつかの利点があります。基盤モデルはすでに一般的な知識を学習済みのため、新しいタスクに適応するための時間とリソースが少なくてすみます。また、微調整は、タスク固有のデータ・セットが小さくても効果的です。これにより、データ収集および前処理に関連する時間とコストを削減できます。また、微調整のトレーニング時間と計算要件が減少すると、エネルギー消費量が減少し、コストが削減されます。
  • 特定のタスクにより優れたパフォーマンスを提供: 基盤モデルにファインチューニングを施すことで、精度が高まり、学習の収束も早くなります。収束とは、モデルの誤差率が一定になり、それ以上訓練しても精度が向上しない状態のことです。基礎モデルは、データの削減とトレーニングの反復の削減により、新しいタスクのニュアンスに迅速に適応できます。一般的な知識とタスク固有の学習のこの組合せは、新しいデータに遭遇したときにモデルが適切に動作するのに役立ちます。

短所

  • オーバーフィッティング: AIファインチューニングのオーバーフィッティングは、新しいデータのトレーニング・ラウンドが徹底しすぎて、汎用的な知識が損なわれる可能性があります。基盤モデルの一般的な知識と言語の柔軟性は、新しいデータに遭遇したときにパフォーマンスを向上させるために重要です。過学習が起こると、モデルは訓練データをそのまま覚えてしまい、データの背後にあるパターンを学習して汎用化する能力が低下します。その結果、新しいデータへの対応力が落ちてしまいます。
  • コスト: AIモデルのファインチューニングに必要な計算リソースと専門知識は、コストがかかる可能性があります。このプロセスは、高パフォーマンスのGPUまたはTPU (テンソル処理ユニット)に依存しており、クラウド・プロバイダーから購入またはレンタルするにはコストがかかる場合があります。また、機械学習や自然言語処理に必要な専門家を雇うこともコストがかかります。
  • 時間: ファインチューニングは、いくつかの方法で時間がかかる場合があります。まず、データの準備(収集、クリーニング、注釈付け、フォーマット変換)に時間がかかります。ファインチューニング・プロセスが開始されると、タスクのサイズと複雑さに応じて、ファインチューニングに数時間、数日または数週間かかる場合があります。時間が長くなるほど、計算時間のコストが高くなります。

ファインチューニングの仕組み

AIファインチューニングは、既存のモデルを開始点として使用することで機能します。MetaのLlama 2やCohere's Commandなど、これらの基盤モデルは、一般的にクラウド・プロバイダーから入手できます。多くの組織は、事前トレーニング済機械学習モデルをホストするHugging Face、TensorFlow Hub、PyTorch Hubなど、一元化されたリポジトリからデータ・サイエンス・プラットフォームに他のモデルを持ち込んでいます。

事前トレーニング済モデルから開始

テキストの分類、センチメントの分析、質問への回答、記事の記述、コードの生成、オブジェクトの検出、AIやMLを必要とするその他のジョブなど、タスクに適したモデルを選択します。

AIモデルのファインチューニングには、適切にフォーマットされたデータのコレクション、適切な基盤モデル、ディープラーニングのためのニューラル・ネットワークを提供するインフラストラクチャ、およびトレーニング・レジメンを強化するためのGPUという3つの基本的な要素が必要です。これらのリソースは、多くの場合、データ・サイエンス・プラットフォームまたは最近では生成AIクラウド・サービスにも統合されています。

オープン・ソース・プロジェクトやクラウド・プロバイダー開発チームによる新しいツールやインフラストラクチャ・サービスのおかげで、テクノロジーで頻繁に発生するように、AIファインチューニング・プロセスは時間の経過とともに容易になりました。これらのツールやサービスは、ハイパーパラメータの最適化、モデル選定、データ前処理といった複雑な作業を含むファインチューニングの自動化を支援しています。これにより、専門家以外のユーザーがプロセスにアクセスしやすくなります。

実際、業界の観察者たちは、ファインチューニングにおけるデータサイエンスの細かな作業を抽象化するツールが非常に優れてきたため、現在では最も難しいのは、最適なデータセットを収集してフォーマットすることだと指摘しています。ここでも、ヘルスケアや金融といった各分野向け、あるいはコンピュータビジョン、感情分析、異常検知といった用途向けに、あらかじめ用意されたデータライブラリが存在します。実際、こうしたライブラリを使って既にタスクに特化してファインチューニングされたモデルをそのまま活用する、という流れが広まりつつあります。そこから、組織はより小規模なデータ・セットを使用してさらに微調整し、場合によっては検索拡張生成(RAG)アーキテクチャを使用してAI出力をさらに改善できます。

企業は、従来のファインチューニング方法を強化学習と呼ばれる手法で補完する方法を導入しています。これにより、AI モデルはデータセットへのラベリングや教師ありファインチューニングとは異なる手法で、試行錯誤や自己改善を通じて学習できるようになります。

4ステップでAIモデルを微調整する方法

1.事前トレーニング済モデルの使用: 最初のステップは、タスクに適した基盤モデルを選択することです。自然言語処理、コンピュータビジョン、テキスト生成などの分野で人気のあるモデルがあります。

2.新しいデータの追加: 次に、タスク固有のデータ・セットを収集して準備します。たとえば、ラベル付けされたカスタマーレビューや、対象領域における質問と回答のサンプルなどが考えられます。

3.調整: ステップ3は、必要に応じてモデルを調整することです。これには、モデルが以前に学習した内容を保持するためにレイヤーを凍結する処理や、既存の知識を保つために学習率を調整する処理、または新しいタスク(テキスト分類用の分類レイヤーや予測のための回帰レイヤーなど)を学習させるためのレイヤー追加が含まれます。

4.モデルのトレーニング: このプロセスでは、モデルを介して新しいデータをフィードし、モデルのパラメータを更新します。目的は、初期のトレーニングで得た一般知識を維持しつつ、特定のタスクにおけるパフォーマンスを洗練させることです。

ファインチューニングの手法と方法

モデルをファインチューニングする場合、選択できる様々な手法があります。最初の決定は、完全ファインチューニングと選択的ファインチューニングのどちらが必要かです。

完全な微調整

完全なファインチューニングは、トレーニング・プロセス中に基礎モデルのすべてのレイヤーおよびパラメータが更新されるプロセスです。これは、オーバーフィッティングの危険なくモデルのパラメータを適切に更新できる大規模で多様なデータ・セットがある場合に適しています。

選択的ファインチューニング

選択的なファインチューニングでは、モデルの一部のレイヤーやパラメータだけを、小規模なデータセットを使って更新します。この方法は、基礎モデルの一般的な知識を維持し、トレーニング体制の時間と計算コストを削減するのに役立ちます。選択的ファインチューニングの手法の例を次に示します。

  • データ拡張: 既存のデータセットに変換を加えることで追加のトレーニングデータを生成する手法です。イメージの場合、変換には回転、スケーリング、クロッピングまたはノイズの追加が含まれる場合があります。これにより、タスク固有のデータ・セットが小さい場合のファインチューニング・パフォーマンスが向上します。
  • 早期停止: 検証用データセットにおける性能向上が止まった時点でトレーニングを中断する手法です。これにより、効率が向上し、オーバーフィットを防ぐことができます。
  • アンサンブル・メソッド: このメソッドは、複数のファインチューニング済みモデルを組み合わせて、出力のばらつきを抑える手法です。
  • 特定のレイヤーの微調整: この方法では、より深いレイヤーのロックまたは凍結中にディープ・ニューラル・ネットワークの浅いレイヤーのみを調整することで、微調整がより効率的になります。
  • ハイパーパラメータ・チューニング: これには、学習率やバッチ・サイズなど、ファインチューニング・プロセスの機能を調整するための様々な手法が含まれます。
  • レイヤーのフリーズ: ここでは、基本および普遍的な理解を担う基礎モデルのレイヤーがロックされます。これにより、モデルが新しいデータを正しく処理できる汎用的なパターンを学習するのではなく、トレーニング・データを基本的に記憶しているオーバーフィッティングを防ぐことができます。
  • 学習率スケジューリング: 学習率が遅いと、基盤モデルのパラメータをより微妙で正確に調整できます。このプロセスにより、学習率(ステップ・サイズ)が徐々に減少し、モデルが最適なソリューションに近づくにつれてより小さなステップを実行することで、新しい知識をより効果的に学習させることができます。
  • 正規化手法: オーバーフィッティングを防ぐために使用されます。
  • 転移学習: 基盤モデルを、ある特定のタスクに関連した小規模なデータセットでさらにトレーニングする手法です。

ファインチューニングとゼロからのトレーニング

ユースケースによっては、AIモデルをゼロから設計およびトレーニングすることが理にかなっています。しかし、ほとんどの場合、組織は基礎モデルを微調整することで目的の結果を得ることができます。

AIモデルを最初からトレーニングすることは、いくつかのインスタンスでより良い選択になる可能性があります。一例としては、非常に厳密な要件を持つドメインが挙げられます。たとえば、特定の画像データを扱うニッチな医療アプリケーションなどです。トレーニングを最初から行うには、大規模なデータ・セットを組み立て、AI固有のインフラストラクチャに関する長期間のトレーニングを実行する必要があります。これにはコストがかかり、最大数千のGPUと数百万ドルが必要になります。また、データ・サイエンティストやMLエンジニアの専門知識が必要になるタスクでもあります。

一方、AIモデルのファインチューニングには、基盤モデルを取得し、より小さなタスク固有のデータ・セットを使用してそれを特定のタスクに適応させるプロセスです。このプロセスは、モデルが言語や一般的な知識の強力な基盤から開始し、新しいタスクの微妙な違いに調整するだけで済むため、多くの場合、より高速で効率的です。これにより、データを組み立てて準備する作業が減り、トレーニングを最初から行うよりも少ない数で、AIモデルのニーズに応じたパフォーマンスを向上させることができます。次のファインチューニングの利点の詳細を参照してください。

ファインチューニングの一般的なユースケース

スタートアップ企業から多国籍企業まで、さまざまな業界の企業が、事前トレーニング済モデルの微調整を行っています。実際、AI の活用を検討するあらゆる組織にとって、これは標準的な手法になりつつあります。なぜなら、大規模なモデルトレーニングに必要な巨額の投資を必要とせずに、自社の特定のニーズに合わせたシステムを導入できるからです。ユースケースの例を次に示します。

実際の例

財務、ロジスティクス、ヘルスケアなどの多くの分野で働く組織は、ファインチューニングされた生成AIを日常業務に導入しています。これらの実際の事例は、幅広いユースケースを探るのに役立ちます。次に、3つの具体的な例を示します。

  • カスタマーサポート: 産業安全ソリューション企業は、AIを活用したツールを導入し、すぐにカスタマーサポート業務を改善しました。チームは、微調整されたCohere Command R+ LLMを使用して、顧客からの問い合わせを処理し、正確な回答を生成します。
  • ヘルスケア: 大学の研究者は、AIを使用して患者データをより深く確認し、新しいがん治療法の設計を支援しています。クラウド・インフラストラクチャを使用して大規模にLLMをホスト、実行、微調整しています。
  • サービス業界: ブラジルの応用AI企業はLLMをファインチューニングし、再考療法を支援しています。これは、認知低下に苦しむ患者を支援する実証済みの心理療法です。

ファインチューニングの次なる展開

AIのファインチューニングは、特にファインチューニングされたモデルを使用するAIエージェントが増えるにつれて、急速に進化しています。今後は、自動化のさらなる進展、新たな技術の登場、より多様なモデルの選択肢が期待されており、組織がAIモデルを自社のニーズに適応させやすくなるでしょう。

今後の革新としては、ハイパーパラメータの最適化、モデルの選定、データ前処理など、ファインチューニングを自動化する高度なMLサービスの充実が挙げられます。コンテキスト認識型のデータ拡張手法により、モデルがより関連性の高い特徴を迅速に学習できるようになり、動的学習では学習率を自動で調整できるようになると見込まれています。さらに、機械学習や基盤モデルの開発者は、異なるモダリティ(テキスト、画像、音声など)を横断して知識を活用できる、より汎用的かつ強力なモデルをリリースし続けるでしょう。今後重要となるのは、こうした新しい技術革新を最大限に活用できる柔軟なデータ基盤を構築することです。

生成AIソリューションでAIモデルを強化

Oracle Cloud Infrastructure(OCI)を活用すれば、機械学習モデルや基盤モデルのファインチューニングに必要なすべてを利用できることをご存じですか?オラクルは、物理インフラ、データ処理基盤、データサイエンス・プラットフォーム、そして生成AIサービスを、すべてフルマネージドな形で提供しています。たとえば、OCIの生成AIサービスは、使いやすいサービスで、汎用性の高いLLMとのシンプルでシームレスな統合を提供します。これを使用して、ライティング支援、要約、分析、チャットなど、幅広いユースケースのモデルをファインチューニングできます。

一方、データ・サイエンティストとMLエンジニアは、Oracleのデータ・サイエンス・プラットフォームを活用して、Pythonとオープン・ソース・ツールを使用してMLモデルの構築、トレーニング、導入に関するコラボレーションを行うことができます。JupyterLabベースの開発環境には、実験・モデル開発・トレーニングスケールに必要なすべてのリソースがそろっており、NVIDIA GPUや分散学習も利用可能です。さらに、自動パイプライン、モデルのデプロイ、モデル監視といったMLオペレーション機能により、モデルの本番環境への移行や継続的な運用も容易に行えます。

AIモデルのファインチューニングは、競争に一歩先んじるための手段のひとつにすぎません。他にも多くの方法で、ビジネスにメリットをもたらすことができます。

ファインチューニングに関するFAQ

他のタイプのモデル・トレーニングとファインチューニングはどのように異なりますか。

AIモデルの微調整は、AIモデルを最初からトレーニングすることとは異なります。これは、高度な基盤モデルに対して追加の学習を施し、特定のタスクにおいて文脈に即した出力を得るためのプロセスです。一般的に、ファインチューニングには少ないデータしか必要とせず、ゼロからモデルを構築・訓練するよりも短時間かつ低コストで行えます。

ファインチューニングはどのようなモデルにも使えますか?

AIのファインチューニングは、画像認識、テキスト分類、言語生成、音声出力など、さまざまなユースケースにおける基盤モデルに対して使用できます。