目录
[三、Hunyuan Video](#三、Hunyuan Video)
[3.2HunyuanVideo Diffusion Backbone](#3.2HunyuanVideo Diffusion Backbone)
[3.3Large Lauguage Model](#3.3Large Lauguage Model)
一、概述
该论文介绍了HunyuanVideo,一个新颖的最大的开源视频基础模型,并在视频生成方面的性能,优于领先的闭源模型。该框架涵盖了训练基础框架、数据管理、模型架构优化、模型训练等,并提出一种有效的扩展策略,在不降低所需模型性能的情况下,减少5倍的计算资源需求。
基于这一扩展方法和基础框架,训练了一个130亿参数的大规模视频模型,并在互联网规模的图像和视频上进行预训练,并经过专门的渐进式微调策略后,在视觉质量、动态运动、视频文字对齐度、语义场景剪辑中都表现出色。
二、相关工作
VDM是第一个将2D U-Net从图像扩散模型扩展到3D U-Net实现基于文本生成的方法之一。
MagicVideo和Mindscope引入了1D 时间注意力机制,并通过建立潜在的扩散模型来减少计算。
该论文中没有使用传统的2D+1D时间块的方式进行运动学习,相反使用了类似于FLUX中的双流注意力块,应用于处理所有视频帧。
继Imagen之后,Imagen Video采用了一个级联采样管道,通过多阶段生成视频。
另外除了T2V生成外,还有通过其他条件诸如深度图、姿势图、RGB图像,其他参考运动视频辅助生成视频。但开源的Mochi-1,Open-Sora,Open-Sora-plan,Stable video diffusion,Allegro都落后于闭源的Sora和MovieGen。
三、Hunyuan Video
1、总论
Hunyuan Video包含三个部分:数据预处理,模型训练,下游应用。后续将对这三方面进行介绍。
2、数据预处理
采用图像-视频联合训练策略,视频被分为5个不同的组,图像分类为两个组,原始数据集包含广泛领域的视频,包括人物、动物、植物、风景、车辆、物体、建筑和动画,并保证每个视频都根据一系列基本标准获取,包括最低市场要求,另外保证更严格的标准,空间质量、特定宽高比、构图、色彩、曝光等专业标准,保证视频具备技术质量和美学吸引力。
2.1数据过滤
HunyuanVideo采用了一个分层的数据过滤管道来构建训练数据集。该管道包括以下步骤:
-
首先使用PySceneDetect将原始视频拆分成单镜头视频片段。然后使用OpenCV的Laplacian算子来识别每个视频片段的清晰帧,作为该片段的起始帧。
-
接下来,使用内部的VideoCLIP模型计算这些视频片段的嵌入向量。这些嵌入向量有两个用途:一是用于根据余弦距离去重相似的片段;二是使用k-means聚类得到约10,000个聚类中心,用于概念重采样和平衡。
-
为了持续提高视频的美学、动作和概念范围,实现了一个分层的数据过滤管道。该管道包括以下过滤器:
- 使用Dover评估视频片段的视觉美学和技术质量
- 训练模型检测视觉模糊,去除模糊视频
- 预测视频的运动速度,过滤掉静止或慢动作视频
- 结合PySceneDetect和Transnet v2获取场景边界信息
- 使用内部OCR模型去除包含大量文字的视频片段,并定位和裁剪字幕
- 使用YOLOX类似的视觉模型检测和去除遮挡或敏感信息,如水印、边框和logo
-
通过逐步提高这些过滤器的阈值,构建了分辨率从256x256到720x1280的5个训练数据集(256p,360p,540p,720p,SFT)。最后一个数据集是通过人工标注获得的,包含了一百万个视觉美观且动作细致入微的视频片段。
Our hierarchical data filtering pipeline.
2.2数据注释
结构化字幕:注释/字幕的准确性和全面性对提高生成模型的快速跟踪能力和输出质量起着至关重要的作用,以往的工作都在提供简短/密集的字幕,但是仍然存在缺点,比如存在信息不完整,冗余话语,不准确等问题,HunyuanVideo提供了一个室内视觉语言模型VLM,旨在为图像和视频生成结构化字幕,格式为JSON格式。
内容包括:简要描述(主要内容)、详细描述(场景内容、场景过渡、相机运动)、背景(主题所处环境)、风格(纪录片、电影、现实主义、科幻)、拍摄类型(航拍、特写、长镜头)、照明条件(柔和)、氛围(舒适、紧张、神秘)。
另外扩展了JSON结构,并且合并额外的元数据派生的元素,包括源标签,质量标签,来自图像和视频的其他标签,合成了不同长度和模式下的标题,旨在提高生成模型的泛化能力,防止过拟合。
相机移动类型:训练了一个相机运动分类器,能够预测14种不同的相机运动类型,包括放大、缩小、向上平移、向下平移、向左平移、向右平移,向上倾斜,向下倾斜,向左倾斜,向右倾斜,环绕向左,环绕向右,静态拍摄和手持拍摄。
3、HunyuanVideo模型框架
HunyuanVideo包括三个模块,3DVAE模块,扩散模块主干,大语言模型。
The overview of our HunyuanVideo model
3.13DVAE
3DVAE由CausalConv 3D encoder和CausalConv 3D decoder构成。在训练3DVAE过程中,输入,经过encoder压缩到,再经过解码器转换会原始维数。
为什么是而不是,由于3DVAE需要处理视频数据,除了T帧视频帧,还需要额外的一个帧作为起始帧,用于后续的视频片段拼接和处理。
相比于以往的大多数工作,从预训练的VAE中直接进行参数初始化,我们的工作从零开始训练VAE,将视频和图像按4:1混合,我的理解是在训练过程中不仅有视频(多帧)还有图像(单帧)。并且损失函数除了以往的L1损失和KL损失外,引入了LPIPS和对抗性损失adv来提高重建质量。
另外再训练过程中,逐步从低分辨率短视频到高分辨率长视频,为了获得高运动视频的重建能力,从1-8的范围内随机选择一个采样间隔,在视频剪辑中均匀采样帧,就是抽帧学习动作,变化比较快。
推理/评估过程中的比较。
VAE reconstruction metrics comparison.
3.2HunyuanVideo Diffusion Backbone
The architecture of our HunyuanVideo Diffusion Backbone
HunyuanVideo的扩散模型最重要的是做了一个双流DiT+单流DiT的混合设计策略,另外是文本嵌入采用以往clip+最新的MLLM结合的办法,对于全注意力机制(他自己提了一下,但是这是cogvideox做的)。
统一的全注意力机制有三个原因:一是全注意力优于分割时空注意力的性能,保证了运动的一致性,第二支持图像和视频统一生成,简化训练过程,提高模型可扩展性。三是有效地利用现有LLM相关的加速能力,提高训练和推理效率。
输入信息
对于输入到扩散主干模块的视频和图像信息,视频来说直接经过encoder压缩,图像来说处理成单帧视频,然后进encoder压缩。对于压缩的特征维度假设是,再经过三维卷积+patchify转为一维的tokens。
对于输入到扩散主干的文本信息,首先经过高级的LLM将文本编码成一组捕捉细粒度的tokens,另外再使用CLIP模型生成一个包含全局文本表示的信息。
设计理念
OK,他提到双流到单流的结构来自于Flux论文(但是这个论文没开源?没找到)。双流阶段,视频和文本通过通过不同的DiT处理,使每个模态能够学习自己的机制,Cogvideox既视感。
单流阶段,将视频tokens和文本tokens concat,并引入DiT,实现多模态信息的融合。
这种设计捕获视觉信息和语义信息之间的复杂交互,提高了模型的整体性能。
位置嵌入
提到为了支持多分辨率、多方面利率、不同持续时间生成情况下,在每个transformer中都是用了3D RoPE,增强模型捕捉绝对位置和相对位置关系的能力。
我的理解是将视频/文本编码为RoPE加在这个位置。
transformer部分
3.3Large Lauguage Model
文本到图像和文本到视频的任务中,文本encoder通过在潜在空间中提供指导信息起着至关重要的作用。以往的Sdxl,Hunyuan-dit都是使用预训练过的CLIP或者T5作为文本编码器,其中CLIP采用Transformer的自编码器结构,T5采用encoder-decoder结构。
而该论文中提出使用预训练的decoder-only的多模态大语言模型MLLM,来进行文本嵌入。
相比于T5,微调后的MLLM可以更好的图像-文本对齐,减轻了扩散模型遵循指令的困难。
相比于CLIP,MLLM在图像细节方面描述和复杂推理方面具有优越的能力。
另外MLLM可以实现zero-shot,由于因果注意的原因不会泄露未来信息,而T5是双向注意力,所以MLLM可以更好的为扩散模型提供文本指导。
但为什么不完全使用MLLM替换CLIP呢,因为CLIP的文本摘要可以作为全局指导,集成到DiT块上。
Text encoder comparison between T5 XXL and the instruction-guided MLLM introduced
by HunyuanVideo.
4、模型的缩放律
探索3DVAE模型的缩放规律得到了幂律规律:
- 模型参数量(N)与计算资源(C)之间存在幂律关系:
- 训练数据量(D)与计算资源(C)之间存在幂律关系:
另外分阶段的预训练策略是有效的,所以对3DVAE的训练过程为:
- 首先在256px分辨率的图像数据上进行预训练
- 然后在256px和512px分辨率的图像数据上进行混合训练
- 最后在图像和视频数据上进行联合训练
图像数据和视频数据以4:1的比例混合使用,以平衡模型在重建图像和视频方面的质量。
5、视频训练
渐进式的视频图像联合训练,提出对于扩散模型的训练,如果直接从文本生成高质量、长时间的视频往往会导致模型提前收敛到次优结果。
所以将视频分为三类:低分辨率短视频,低分辨率长视频,高分辨率长视频三种,然后渐进式的逐步增加视频持续时间和分辨率的训练。
四、实验
高质量视频生成。
高运动效果视频生成。
视频中存在文本的效果生成。(这个还是很惊艳的)
基于音频驱动和动作驱动的视频生成。
这个可以去官网找,基于音频的视频生成效果还是不错的。