見出し画像

HunyuanVideoがなぜ叡智な動画を生成出来るのか@論文と個人的な印象から

最近HunyuanVideoの記事をいくつか作成しています。
HunyuanVideoでは叡智な動画が出来るのですが、なぜそうなるのかはとても重要な事項なのかなと思っています。

以下の公式のGithubサイトにある文献をGPTにまとめてもらい、考えてみました。

[2412.03603] HunyuanVideo: A Systematic Framework For Large Video Generative Models

論文の要約
題名: HunyuanVideo: A Systematic Framework For Large Video Generative Models
どんなもの?
HunyuanVideoは、13億以上のパラメータを持つ大規模オープンソース動画生成モデルです。このモデルは、閉鎖的な動画生成モデルの性能を凌駕することを目指しており、データ収集、モデル設計、訓練インフラ、効率的な推論を統合した包括的なフレームワークを提供します。このモデルは、動画の視覚品質、動きのダイナミクス、テキストと動画の整合性、撮影技法において優れた性能を発揮します。
先行研究と比べてどこがすごい?
オープンソース化: 閉鎖的なモデルとの差を埋めるため、コードを公開し、コミュニティの研究を促進。
高性能: 閉鎖的なモデルを上回る視覚品質と動きのダイナミクスを実現。
大規模: 13億パラメータを持つ、オープンソースモデルとして最大規模。
効率性: 訓練コストを最大5倍削減しつつ高性能を維持。
技術や手法のキモはどこ?
階層的データフィルタリング: 動画と画像を高品質データに絞り込み。
3D VAEと拡張RoPE: 時間・空間次元の情報を効率的に圧縮し、位置情報を効果的に利用。
デュアルストリームからシングルストリーム: テキストと動画の情報を効率的に統合。
拡張可能な推論: タイル化やテキスト指導付き蒸留技術を採用して推論を高速化。
どうやって有効だと検証した?
ベンチマーク評価: 1,533個のテキストプロンプトを用いて、主要な閉鎖的モデル(Gen-3, Luma 1.6など)との比較を実施。特に動きのダイナミクスで優れた性能を示した。
人間評価: 60人の専門家が、テキスト整合性、動きの品質、視覚品質の3つの基準で評価。
応用実験: オーディオ生成やアバターアニメーションなど多様な応用領域で性能を確認。
議論はある?
課題: 訓練データの質や多様性に依存しすぎる点。
展望: 高解像度長時間動画の生成能力の向上や、マルチモーダル生成の強化が期待される。

これだけでは叡智なものが作成できる意味がよく分かりませんね。

下の図は、論文にあった図表です。
CLIP-LとMLLMに分かれていることがわかります。

ここで以前、tencentが出していたELLA-Diffusionを個人的に想起しました。

これは過去記事に取り上げたことがある技術ですが、SD1.5を対象にT5とCLIPで画像生成を行うことで、生成画像の質を上げるというものでした。

このELLAの特徴として、T5をLLMとして使用しているのですが、CLIPを使用しない場合と、使用する場合のワークフローがあります。

T5のみのフローの一部が下のものですが、プロンプトをCLIPの代わりにT5に渡しています。

CLIPがある場合は以下のような感じです。それぞれのプロンプトを結合して出力する感じになります。

CLIPとT5が分かれている

このワークフローを試してもらうと分かりますが、T5の部分のプロンプトに「叡智なワード」を入れてもどちらも反応しません。学習していないということですね。

しかし、CLIPの部分に「叡智なワード」を入れると反応します。強調など必要ですが。。。。

このELLAの仕組みだと、T5が学習していない内容でもCLIPにあれば画像として生成されています。この感じがHunyuanVideoにも適用されているのかなと感じました。

ということで、GPTにこのあたりについて、質問をしてみました。

Q:「CLIPLが「猫」を学習していて、MLLMが「猫」を学習していない場合に、「猫」の動画を作成しようとした場合

<GPT解答>
状況の整理
①CLIP-Lの役割: 視覚情報(画像や動画)の特徴を抽出し、モデルに「猫」の視覚的特徴を提供する。
②MLLMの役割: テキストプロンプトを解釈し、それに基づいた生成をガイドする。
問題: MLLMが「猫」を認識・理解していない場合、プロンプトが「猫の動画を生成せよ」という指示を正しく解釈できず、CLIP-Lが提供する視覚的特徴を活用できない可能性がある。
想定される問題
①テキスト解釈の不一致:MLLMが「猫」を学習していない場合、「cat」という単語を解釈できず、テキスト入力が無意味化する可能性があります。
②テキストと視覚情報の整合性欠如:MLLMが「猫」という概念を理解できないため、CLIP-Lが提供する「猫」の視覚的特徴を正しく活用できず、生成された動画がプロンプトに合致しない可能性があります。
③生成結果の曖昧さ:テキストプロンプトの情報が不十分または誤解される場合、生成された動画が他の一般的な動物や背景に偏る可能性があります。
具体例
シナリオ:ユーザーが「A white cat sits on a sofa」(白い猫がソファに座っている)というプロンプトを入力した場合。
期待される出力:白い猫がソファに座っている動画。
発生し得る問題:MLLMが「cat(猫)」を認識できず、プロンプト全体を無視または誤解。CLIP-Lは「猫」の視覚的特徴を提供するが、MLLMがそれを適切に関連付けられず、生成結果が不正確。
解決策
①CLIP-Lを主軸とした生成プロセス:テキストプロンプトから「cat」に関する情報をMLLMが解釈できない場合、CLIP-Lから得られる「猫」の視覚的特徴を直接使用して生成をガイドする。
例: CLIP-Lによる視覚的特徴を優先し、テキストプロンプトで提供される「sofa(ソファ)」などの補助情報をMLLMから統合する。
②補完的な埋め込みの活用:CLIP-Lが提供する「猫」の視覚的特徴をMLLMのテキスト表現に追加することで、MLLMが不足しているセマンティック情報を補完。
プロンプト「A white cat sits on a sofa」を「白い動物がソファに座っている」など、MLLMが解釈可能な形に簡略化する技術を活用。
③フィードバックループを構築:CLIP-Lの視覚的特徴を一度生成結果に反映させ、その結果をMLLMに再入力するフィードバックループを利用。
これにより、視覚情報に基づいたセマンティック補正を実現。
④テキストエンコーダの拡張:MLLMを微調整し、「猫」などの概念を学習させることで、テキスト解釈精度を向上させる。
実装例
HunyuanVideoの内部設計においては以下のように処理可能です:プロンプト解析で「cat」という単語が未学習の場合、CLIP-Lの視覚特徴を優先的に適用。
CLIP-Lから得られる「猫」の特徴ベクトルを、動画生成モジュールに直接統合。
生成動画を再度CLIP-Lで解析し、プロンプトとの整合性を評価。
結論
CLIP-LとMLLMの学習内容が不一致の場合、CLIP-Lの視覚的特徴をより優先的に活用することで問題を回避できます。また、MLLMの学習を拡張したり、CLIP-Lを中心とした補完的なアプローチを取ることで、望ましい生成結果を得る可能性が高まります。

ということで、HunyuanVideoで叡智なものが作成できる仕組みとして、元画像に叡智なものが学習されていることもあるかもしれませんが、CLIP-Lを中心としたアプローチがとられることで、生成されるものと考えられます。

<個人的な印象>
ELLAのワークフローを見ると、画像生成においてLLMで学習していないものが無視される仕組みだと叡智なものは省かれるということなのかなと感じます。
Tencentの仕組みだと、CLIPの内容を上手く反映してくれていることから叡智なものが出来ている可能性がありそうです。

FLUXとかSD3.5については十分そのあたりを調べていませんので、仕組みの比較はできていませんが、このELLAの経験からはLLMが学習していないものが弾かれているのかなと思ったりしています。
逆に、HunyuanVideoのCLIP優先にする仕組みをFLUXやSD3.5に適応させる猛者が出てくればFLUXやSD3.5が強くなる可能性もありそうです。


いいなと思ったら応援しよう!