コンテンツに移動
AI & 機械学習

Gemini 2.5 を使用して Vertex AI で動画をファインチューニングする方法

2025年7月4日
Megha Nawhal

AI Engineer, UK/I Customer Engineering, Google Cloud

May Hu

Product Manager

【Next Tokyo ’25】

【Next Tokyo】 8/5、6 話題の Gemini、生成 AI、AI エージェントなど、ビジネス変革を加速させるヒントが満載です。

今すぐ登録

※この投稿は米国時間 2025 年 6 月 25 日に、Google Cloud blog に投稿されたものの抄訳です。

Google は先日、Vertex AI での Gemini 2.5 の一般提供開始を発表しました。今回のアップデートではチューニング機能が拡張され、テキストだけでなく画像、音声、動画Vertex AI の入力としてチューニングできるようになりました。

教師ありファインチューニングは、独自のデータを使用して LLM の出力をカスタマイズする優れた手法です。チューニングを通じてチューニング例から学習することで、LLM はビジネス コンテキストとタスクに特化したより高品質な出力を実現します。動画入力を使用したお客様のユースケースをいくつかご紹介します。

  • 動画の自動要約: LLM をチューニングし、長い動画の主なテーマ、イベント、ストーリーを捉えた簡潔で一貫性のある要約を生成します。コンテンツの検出、アーカイブ、迅速な確認に役立ちます。

  • 詳細なイベント認識と位置特定: ファインチューニングにより、LLM は動画タイムライン内の特定のアクション、イベント、オブジェクトをより高い精度で識別し、特定できます。たとえば、マーケティング動画内の特定商品の出現箇所をすべて特定する、またはスポーツ映像内の特定のアクションを識別する、といったことが可能です。

  • コンテンツの管理: 専門的なチューニングにより、動画内のデリケートなコンテンツ、不適切なコンテンツ、ポリシー違反のコンテンツを検出する LLM の能力が向上し、単純なオブジェクト検出を超えてコンテキストとニュアンスを理解できるようになります。

  • 動画の字幕起こしと字幕作成: すでに一般的なアプリケーションですが、非言語的なメッセージの説明など、自動生成される字幕起こしと字幕作成の精度、流暢さ、コンテキスト認識をチューニングにより向上させることが可能です。

今回は、Vertex AI チューニング サービスを使用して、動画入力で真に効果的なチューニング テストを行うための実用的なベスト プラクティスをご紹介します。このブログ記事では、次の手順について説明します。

  1. プロンプトを作成する

  2. 複数のラベルを検出する

  3. 単一ラベルの動画タスク分析を実施する

  4. 動画チューニング データセットを準備する

  5. チューニングのハイパーパラメータを設定する

  6. 動画タスクでチューニングされたチェックポイントを評価する

I. プロンプトを作成する

適切なプロンプトの設計は効果的なチューニングの要であり、モデルの動作と出力の品質に直接影響します。動画チューニングに効果的なプロンプトは、通常いくつかの重要な要素で構成され、プロンプトの明確性を保ちます。

  • タスクのコンテキスト: この要素は全体的なコンテキストを設定し、タスクの意図を定義します。動画分析の主な目的を明確に示す必要があります。次に例を示します。

  • タスク定義: このコンポーネントは、分類や時系列による位置特定といったタスクのラベル定義を含め、モデルがタスクをどのように実行すべきかについて具体的かつ詳細なガイダンスを提供します。たとえば、動画分類では、プロンプト内でポジティブ マッチとネガティブ マッチを明確に定義してモデルを正確に誘導します。

  • 出力仕様: この要素は、モデルがどのように出力を生成するかを定義します。これには、JSON などの構造化形式に関する具体的なルールやスキーマが含まれます。明確性を最大限に高めるには、サンプル JSON オブジェクトをプロンプトに直接埋め込み、想定される構造、スキーマ、データ型、書式設定規則を指定します。

II: 複数のラベルを検出する

マルチラベル動画分析では、1 つの動画に対応する複数のラベルを検出します。複数のラベルに対して 1 つのモデルをトレーニングし、推論時にチューニングされたモデルに対して 1 回のクエリ リクエストを行うことですべてのラベルの予測を取得できるため、これは動画タスクに適した設定です。これらのタスクは通常、既製モデルでは非常に難しく、多くの場合でチューニングが必要になります。

以下の例のプロンプトを参照してください。

読み込んでいます...

マルチラベル動画タスクの課題とその対策:

  • チューニングされたモデルは、主要なラベル(データセット内で頻繁に出現するラベル)を学習する傾向があります。

  • 対策: 可能な限り、ターゲット ラベルの分布を均等にすることをおすすめします。

  • 動画データを扱う場合、ラベル分布の偏りは時間的側面によってさらに複雑化します。たとえばアクションの位置特定では、動画セグメントに「イベント X」が含まれていなくても、「イベント Y」が含まれていたり、単に背景映像であったりする場合があります。

  • チューニングされたモデルは、動画タスクでインスタンスあたりに使用されるラベル数が多い場合(通常、動画入力あたり 10 ラベルを超える場合)、ハルシネーションが生じやすい傾向があります。

  • 動的なシーンにおいて時間的理解を必要とする動画タスク(イベント検出、アクションの位置特定など)の場合、重複している、あるいは非常に近い複数の時間ラベルに対しては、チューニングされたモデルが効果を発揮しない可能性があります。

III: 単一ラベルの動画タスク分析を実施する

マルチクラス単一ラベル分析は、1 つの動画に対して事前定義された互いに排他的なラベルのセットから 1 つのラベルだけを割り当てる動画タスクを含みます。マルチラベル チューニングとは対照的に、マルチクラス単一ラベル チューニングのレシピは、個別のラベルの数が増えるにつれて優れたスケーラビリティを示します。そのため、マルチクラス単一ラベルの形式は複雑なタスクにおいて実用的かつ堅牢な選択肢となります。動画を多数の排他的なカテゴリの一つに分類するタスクや、動画内における複数の重複する時間的イベントを検出するタスクなどが例として挙げられます。

このような場合、定義済みのセットから 1 つのラベルのみが動画入力に適用可能であることをプロンプトで明示する必要があります。プロンプト内で考えられるすべてのラベルをリストして、モデルにオプションの完全なセットを提供します。また、動画内にラベルが 1 つも含まれていない場合など、モデルがネガティブなインスタンスをどのように処理すべきかを明確にすることも重要です。

プロンプトの例を以下に示します。

読み込んでいます...

マルチクラス単一ラベル動画タスクの課題とその対策

  • 極端に偏ったデータ分布を使用すると、チューニングされたモデルの品質が低下する可能性があります。モデルは単に多数派のクラスを予測するように学習し、まれに出現するポジティブ インスタンスを特定できなくなる可能性があります。

    • 対策: レシピをチューニングする効果的な戦略として、ネガティブ インスタンスをアンダーサンプリングするか、ポジティブ インスタンスをオーバーサンプリングして分布のバランスを取る方法があります。アンダーサンプリングとオーバーサンプリングの割合は、具体的なユースケースによって異なります。

動画のユースケースによっては、マルチクラス単一ラベルタスクとマルチラベル タスクの両方として定式化できます。たとえば、動画内における複数のイベントの時間間隔を検出するタスクなどです。

  • 時間間隔が重複せず、イベントの種類が少ない(通常は動画あたり 10 ラベル未満)場合は、マルチラベル形式が適しています。

  • 一方、時間間隔が短く複数の類似したイベントタイプの場合は、マルチクラス単一ラベルのレシピの方が優れたモデル パフォーマンスを発揮します。モデル推論では、クラスごとに個別のクエリを送信します(例: 「イベント A は存在しますか?」、次に「イベント B は存在しますか?」)。このアプローチでは、マルチクラス問題を一連の N 個の二値決定問題として効果的に処理します。つまり、N 個のクラスがある場合、チューニングされたモデルに対して N 回の推論リクエストを送信する必要があります。

この場合、高い推論レイテンシとコストと引き換えにターゲット パフォーマンスを得るというトレードオフの関係になります。この選択は、ユースケースにおいて予測されるモデルのターゲット パフォーマンスに基づいて行う必要があります。

IV. 動画チューニング データセットを準備する

Vertex Tuning API では、トレーニング データセットと検証データセットの両方に *.jsonl ファイルを使用します。検証データはチューニング プロセスからチェックポイントを選択するために使用されます。train.jsonl と validation.jsonl に含まれる JSON オブジェクトに重複がないようにするのが理想的です。チューニング データセットの準備方法と制限事項に関する詳細はこちらをご覧ください。

Gemini 2.0(およびそれ以降)のモデルを動画でチューニングする際に効率を最大限に高めるには、入力ファイル内の各動画の generationConfig オブジェクト内にある MEDIA_RESOLUTION_LOW 設定を使用することをおすすめします。この設定は、各フレームを表現するために使用されるトークンの数を指定し、トレーニングの速度とコストに直接影響します。

この場合は、次のどちらかを行ってください。

  • MEDIA_RESOLUTION_LOW(デフォルト): 64 個のトークンを使用して各フレームをエンコードします。

  • MEDIA_RESOLUTION_MEDIUM: 256 個のトークンを使用して各フレームをエンコードします。

MEDIA_RESOLUTION_MEDIUM は、微妙な視覚的手がかりに依存するタスクでわずかに優れたパフォーマンスを示す可能性がありますが、その代償としてトレーニング速度が約 4 倍遅くなります。低解像度設定でもほとんどのアプリケーションで同等のパフォーマンスが得られることを考えると、デフォルトの MEDIA_RESOLUTION_LOW を使用するのが、パフォーマンスと重要なトレーニング速度の向上を両立させる最も効果的な戦略です。

V. チューニングのハイパーパラメータを設定する

チューニング データセットを準備できたら、最初の動画チューニング ジョブを送信する準備が整います。Google は 3 つのハイパーパラメータをサポートしています。

  • epochs: トレーニング データセット全体に対する反復回数を指定します。データセットのサイズが 500 サンプル程度の場合は、epochs = 5 からが動画チューニング タスクのデフォルト値です。500 サンプル未満の場合は epochs 数を増やし、500 サンプルを超える場合は減らします。

  • learning_rate_multiplier: 学習率の乗数を指定します。モデルが過学習している場合は 1 未満の値を、学習不足の場合は 1 より大きい値を試すことをおすすめします。

  • adapter_size: LoRA アダプタのランクを指定します。Flash モデルのチューニングの場合、デフォルト値は adapter_size=8 です。ほとんどのユースケースではこの値を調整する必要はありませんが、サイズを大きくするとモデルがより複雑なタスクを学習できるようになります。

チューニング プロセスを合理化するために、Vertex AI はインテリジェントな自動ハイパーパラメータ デフォルトを提供します。これらの値は、サイズ、モダリティ、コンテキストの長さなど、データセットの特定の特性に基づいて慎重に選択されます。高品質なモデルへの最も直接的なアプローチとして、これらの事前構成値を使用してテストを開始することをおすすめします。パフォーマンスをさらに最適化したい上級ユーザーは、これらのデフォルトを強力なベースラインとして扱い、完了したチューニング ジョブの評価指標に基づいて体系的に調整することが可能です。

VI. 動画タスクでチューニングされたチェックポイントを評価する

Vertex AI チューニング サービスでは、トレーニング データセットと検証データセットの損失および精度のグラフを標準で利用できます。チューニング ジョブの進行に応じて、モニタリング グラフがリアルタイムで更新されます。中間チェックポイントは自動的にデプロイされます。検証データセットの損失値が飽和状態になっていることを示すエポックに対応するチェックポイントを選択することをおすすめします。

チューニングされたモデルのエンドポイントを評価するには、以下のサンプルコード スニペットをご覧ください。

読み込んでいます...

最適なパフォーマンスを得るには、推論プロンプトの形式、コンテキスト、分布がチューニング データセットと一致していることが重要です。また、評価にはトレーニング中に使用したものと同じ mediaResolution を使用することをおすすめします。

Gemini 2.5 Flash のような思考モデルの場合、最適なパフォーマンスと費用効率を実現するために、思考予算を 0 に設定して、チューニングされたタスクでの思考を無効にすることをおすすめします。そうすることで、教師ありファインチューニングにおいてモデルがチューニング データセットの正解を模倣するように学習し、思考プロセスを省略します。

今すぐ Vertex AI を使ってみる

動画からコンテキストを深く理解する能力は、もはや未来の概念ではなく現実のものとなっています。ここまでお話ししてきたプロンプト エンジニアリング、データセット設計のチューニング、Vertex AI のインテリジェントなデフォルトの活用に関するベスト プラクティスを適用することで、特定の動画ベースのタスクに合わせて Gemini モデルを効果的にチューニングできるようになります。

どのような課題を解決したいですか?どのような新しいユーザー エクスペリエンスを創造したいですか?そのために必要なツールがここにあります。皆様がどのようなものを構築されるのか楽しみにしています。

-Google Cloud、UK/I カスタマー エンジニアリング、AI エンジニア Megha Nawhal
-プロダクト マネージャー、May Hu

投稿先