Jeffrey Erickson | シニアライター | 2025年2月25日
AIがよりビジネスに役立つようになり、特にAIエージェントがより複雑なワークフローを担うようになると、AIのファインチューニングが重要な役割を果たすようになります。これらのエージェントは、データに関する質問に答えたり、コードの記述、カレンダーの管理、分析インサイトの提示など、人間に代わってアクションを実行することができます。その過程で、AIモデルは連携してデータやドキュメント・ストアを調査し、情報を収集し、その精度をダブルチェックし、適切なアクションをトリガーし、それを伝達する必要があります。関連する高度なAIモデルは、言語の通常パターンに精通していますが、独自の言い回しやナレッジ・ベースなどを備えた特定 のドメインに最適化する必要もあります。ファインチューニング・プロセスは、AIモデルや将来のAIエージェントがニュアンスや詳細を適切に理解することをどのように支援するのでしょうか。AI モデルのファインチューニングのさまざまな側面について、以下でご紹介します。
AIモデルのファインチューニングとは、データ・サイエンティストや機械学習(ML)エンジニアが、学習済みのMLモデルを特定のタスクでより優れたパフォーマンスを発揮できるように適応させるために行うプロセスのことです。ファインチューニングは、たとえば、Cohere のCommandや MetaのLlama 2 のような、 汎用の大規模言語モデル (LLM) を、医療業界やカスタマーサービスに適したものにするために使用することができます。
こうした汎用モデルは「基盤モデル」と呼ばれることもあり、大規模で一般的なデータセット(ほぼオープンなインターネット全体のデータなど)でトレーニングされます。これは、幅広い特徴とパターンの学習と理解を支援します。言語を使いこなすものもあれば、画像、動画、音声に加えてテキストなどのマルチモーダル・データを認識および操作できるものもあります。
ファインチューニングは、この高度なモデルを使用し、特定のタスクやビジネス・ドメインから抽出したより小さなデータセットでトレーニングを継続します。これにより、モデルはその分野の分類、コンテキスト、さらには専門知識を理解することができます。
このアイデアは、モデルのオリジナルのトレーニングから得た膨大なナレッジを維持しながら、AIモデルが稼働する領域のニュアンスや詳細をよりよく理解させることです。たとえば、汎用AIモデルを医療画像の読み取りや議論向けにファインチューニングしたり、方言をより流暢に操るようになったLLM主導のチャットボットをカスタマーサービスでの役割を向上させるためにファインチューニングすることができます。さまざまな領域で高い能力を持つAIエージェントを構築する競争は、多くの場合、ファインチューニングされたモデルによって決まります。ファインチューニングの方法と仕組みに関する深い議論は次のとおりです。
主なポイント
チームがAIのファインチューニングを行う際に直面する主な課題は、ユースケースに関連する高品質なラベル付けされたデータの可用性であり、そのようなデータの取得や作成には費用と時間がかかります。たとえば、データのラベリングは、AIが認識するように学習する必要がある画像の領域を何時間もかけてメモしたり、重要な情報を強調するためにテキストの一部をラベリングすることを意味する場合があります。それでも、ファインチューニングには説得力のある利点があり、最新のAI開発において重要なテクニックとなっています。長所と短所をいくつか見てみましょう。
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エージェントがファインチューニングされたモデルをより多く利用するようになるにつれ、AIのファインチューニングは急速に進化しています将来的には、より自動化され、新しいテクニックが導入され、AIモデルを組織のニーズに合わせて支援するためのモデルの選択肢が広がることが期待されています。
これらのイノベーションには、ハイパーパラメータ最適化、モデル選択、データの前処理を含むファインチューニングを自動化する改良されたMLサービスが含まれます。コンテキストを考慮したデータ・オーグメンテーション技術は、モデルがより関連性の高い特徴をより迅速に学習できるよう支援し、動的学習によりモデルはその場で学習速度を調整できるようになることが期待されています。また、MLおよび基盤モデルのビルダーは、異なる態様にまたがりナレッジを伝達でき、複数の データ型を理解する必要があるタスクを実行するためにファインチューニングできる、より汎用的で強力なモデルを引き続きリリースすることが期待されます。このような新しいイノベーションが登場したときに、それを活用できるだけの汎用性を備えたデータ・インフラストラクチャを構築することが重要です。
Oracle Cloud Infrastructure(OCI)を使用すると、機械学習や基盤モデルのファインチューニングに必要なものにアクセスできることをご存知でしょうか。オラクルは、物理インフラストラクチャ、データ処理インフラストラクチャ、データ・サイエンス・プラットフォーム、生成AIサービスをフルマネージド・サービスで提供します。たとえば、OCIの生成AIサービスは、使いやすいサービスで、汎用性の高いLLMとシンプルかつシームレスな統合を提供します。これにより、文章作成サポート、要約、分析、チャットなど、さまざまなユースケースのモデルをファインチューニングできます。
一方、データサイエンティストとMLエンジニアは、オラクルのデータサイエンス・プラットフォームを活用して、Pythonやオープンソースのツールを使用して、MLモデルの構築、トレーニング、および導入に関するコラボレーションを行うことができます。JupyterLabベースの環境は、実験、モデル開発、NVIDIA GPUと分散トレーニングによるモデルトレーニングのスケールアップに必要なすべてのリソースを提供します。自動化されたパイプライン、モデルの導入、モデルのモニタリングなどのML運用機能により、モデルを本番環境に導入し、健全な状態に保つことができます。
AIモデルのファインチューニングは、このテクノロジーを活用して競合製品に打ち勝つ方法の1つに過ぎません。ビジネスにメリットをもたらすその他の方法をご覧ください。
ファインチューニングと他のモデル・トレーニングとの違いを教えてください。
ファインチューニングは、最初からAIモデルをトレーニングすることとは異なります。ファインチューニングは、最初からAIモデルをトレーニングすることとは異なります。これは、高度な基本モデルにトレーニングを追加するプロセスであり、特定のタスクにおいてよりコンテキストに関連した出力をもたらします。ファインチューニングは多くの場合、最初からモデルを構築してトレーニングするよりも必要なデータが少なく、時間もコストもかかりません。
ファインチューニングはあらゆる種類のモデルに使用できますか。
AIファインチューニングは、画像認識、テキスト分類、言語生成、音声出力、その他の出力など、さまざまなユースケースの基盤モデルで使用することができます。