EasyAnimateV5 视频生成大模型原理详解与模型使用

在数字内容创作中,视频扮演的角色日益重要。然而,创作高质量视频通常耗时且昂贵。EasyAnimate 系列旨在利用人工智能技术简化这一过程。EasyAnimateV5 建立在其前代版本的基础之上,不仅在质量上有所提升,还在多模态数据处理和跨语言支持上有了进一步的增强。

EasyAnimate 是阿里云人工智能平台 PAI 自主研发的一款基于 DiT 的视频生成框架,能够生成高质量的长视频。它具备视频数据预处理、VAE 训练、DiT 训练、Lora训练、模型推理和模型评估等功能。此外,EasyAnimate 在预训练模型的基础上,通过少量图片进行 LoRA 微调,可实现视频风格的转变,大大增强了系统的扩展性和完整性,使其在众多方案中更具竞争优势。

EasyAnimate在人工智能平台PAI上进行了集成,供用户一键训练和部署,在之前EasyAnimate版本的基础上,EasyAnimateV5重点突出了以下特点:

  • 应用MMDIT结构,拓展模型规模到7B与12B。

  • 支持不同控制输入的控制模型。

  • 更大幅度的图生视频策略。

  • 更多数据和更好的多阶段训练。

用户可以使用EasyAnimate来进行任意风格视频模型的训练和推理。目前,EasyAnimate将持续优化来达到更好的生成效果,欢迎大家持续关注。

开源地址:https://github.com/aigc-apps/EasyAnimate

DSW测试地址:阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台

技术报告:https://arxiv.org/abs/2405.18991

技术原理详解

模型规模拓展与结构更新

在我们的模型中,我们借鉴了CogVideoXStable Diffusion 3的方法,将文本和视频的嵌入连接起来,进一步通过自注意力机制进行特征融合,相比于原来Pixart通过Cross Attention实现文本特征融合方法,该方法不仅节省了计算次数,提高了计算效率,还让模型可以根据输入的不同条件自适应地调整注意力权重,灵活地融合多模态信息。

不过,文本和视频两种模态的特征空间存在显著差异,这可能导致它们的数值相差较大,不利于对齐。为了解决这一问题,我们参考Stable Diffusion 3,采用MMDiT架构作为基础模型。我们为每种模态设计了不同的to_k、to_q、to_v和前馈网络,并在一个自注意力机制中实现信息交互,以增强模态间的对齐。

另外,为了提高模型的理解能力,我们将模型进行了放大。参考Flux,我们模型的总参数量扩展到了7B与12B。

视频控制

EasyAnimate系列模型早在V3时便通过inpaint的方式实现了图生视频的功能,现在我们将其拓展到视频控制上。

在原始的Inpaint模型基础上,我们引入了一个新的控制信号替代了原有的mask信号。具体而言,我们将控制信号经过VAE编码后,与latent变量一起输入到patch流程中作为Guidance。

我们从26M的预训练数据中筛选出了大约443K条高质量视频,并采用不同的方法来提取控制条件,包括OpenPose、Scribble、Canny、Anime、MLSD、Hed和Depth,这些被用作训练中的条件控制信号。在训练过程中,我们根据不同的Token长度对视频进行了缩放,整个训练分为两个阶段:第一个阶段为13312(对应512x512x49的视频),第二个阶段为53248(对应1024x1024x49的视频)。

以EasyAnimateV5-12b-Control模型为例:

  • 在13312阶段

  • Batch size为128,训练步数为5000。

  • 在53248阶段

  • Batch size为96,训练步数为2000。

训练后的模型可以输入Control Condition对输出视频进行控制,可控生成。以下是工作原理图:

基于Token长度的模型训练

EasyAnimateV5的训练分为多个阶段,除了图片对齐VAE的阶段外,其它阶段均为视频训练,分别对应了不同的Token长度。

我们首先使用图片让VAE与Transformer快速对齐,我们使用了10M的SAM数据集,进行从0开始的文本图片对齐训练,总共训练约120K步。相比于使用视频对齐,使用图片对齐的速度更快且对目标的描述更清晰,在训练完成后,模型已经有能力根据提示词去生成对应的图片,并且图片中的目标基本符合提示词描述。

然后我们使用视频训练,我们创新的根据不同的Token长度,对视频进行缩放后进行训练。视频训练分为多个阶段,每个阶段的Token长度分别是3328(对应256x256x49的视频),13312(对应512x512x49的视频),53248(对应1024x1024x49的视频)。其中:

  • 3328阶段

  • 使用了全部的数据(大约26.6M)训练文生视频模型,Batch size为1536,训练步数为66.5k。

  • 13312阶段

  • 使用了720P以上的视频训练(大约17.9M)训练文生视频模型,Batch size为768,训练步数为30k

  • 使用了最高质量的视频训练(大约0.5M)训练图生视频模型 ,Batch size为384,训练步数为5k

  • 53248阶段

  • 使用了最高质量的视频训练(大约0.5M)训练图生视频模型,Batch size为196,训练步数为5k。

训练时我们采用高低分辨率结合训练,因此模型支持从512到1024任意分辨率的视频生成,以13312 token长度为例:

  • 在512x512分辨率下,视频帧数为49;

  • 在768x768分辨率下,视频帧数为21;

  • 在1024x1024分辨率下,视频帧数为9;

这些分辨率与对应长度混合训练,模型可以完成不同大小分辨率的视频生成。

图生视频策略

我们采用inpaint的方式实现图生视频,需要重建的部分和重建的参考图分别通过VAE进行编码,上图黑色的部分代表需要重建的部分,白色的部分代表首图,然后和随机初始化的latent进行concat,传入网络当中进行预测。

假设我们期待生成一个384x672x49的视频,此时的初始latent就是16x13x48x84,需要重建的参考图编码后也是4x13x48x84,另外我们对mask信息进行Resize,Resize后是1x13x48x84,三个向量concat到一起后便是33x13x48x84,传入DiT模型中进行噪声预测。

由于我们mask信息可以根据需要传入,我们不仅可以指定首图,还可以指定尾图。另外,我们还可以通过指定区域的mask实现视频编辑。

在视频生成过程中,向视频中添加噪声会对生成结果产生显著影响。参考CogVideoX和SVD的做法,我们会在非背景的参考图上加入噪声,以打破原图并追求更大的运动幅度。与CogVideoX保持一致,我们从均值为-3.0、标准差为0.5的正态分布中采样得到噪声幅度,然后取其指数确保噪声幅度在合理范围内。我们通过函数会生成与输入视频形状相同的随机噪声,并根据已计算的噪声幅度进行缩放。这些噪声只添加到需要参考的帧上,得到加噪后的视频。

模型使用

DSW实践

我们支持从DSW上快速拉起,DSW上的免费体验产品包含30GB内存,可以支持EasyAnimateV5-7b-zh与EasyAnimateV5-12b-zh使用qfloat8在512分辨率下的运行:

DLC中默认使用的是app.py拉起的gradio-ui,在选择对应模型后,我们就可以填入下方的prompt进行预测了。

本地拉起

我们同样支持通过本地拉起使用EasyAnimate。

以使用ComfyUI为例,在本机上可以通过执行如下的代码首先将EasyAnimate插件和ComfyUI-VideoHelperSuite安装。

cd ComfyUI/custom_nodes/

# Git clone the easyanimate itself
git clone https://github.com/aigc-apps/EasyAnimate.git

# Git clone the video outout node
git clone https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite.git

cd EasyAnimate/
python install.py

然后运行ComfyUI软件,根据需求将EasyAnimate的comfyui文件夹下的json文件拖入ComfyUI界面中,在如下页面中,进行视频生成。

联系我们

参考文档

相关推荐
发呆小天才O.oᯅ2 分钟前
YOLOv8目标检测——详细记录使用OpenCV的DNN模块进行推理部署C++实现
c++·图像处理·人工智能·opencv·yolo·目标检测·dnn
lovelin+v1750304096623 分钟前
智能电商:API接口如何驱动自动化与智能化转型
大数据·人工智能·爬虫·python
rpa_top24 分钟前
RPA 助力电商:自动化商品信息上传,节省人力资源 —— 以影刀 RPA 为例【rpa.top】
大数据·前端·人工智能·自动化·rpa
视觉语言导航39 分钟前
arXiv-2024 | STMR:语义拓扑度量表示引导的大模型推理无人机视觉语言导航
人工智能·具身智能
咯咯咯伦1 小时前
AI神了,一键视频下载+翻译+配音+字幕!(整合包)
人工智能
愚者大大2 小时前
优化算法(SGD,RMSProp,Ada)
人工智能·算法·机器学习
人类群星闪耀时2 小时前
基于AI的网络流量分析:构建智能化运维体系
运维·人工智能
dundunmm2 小时前
数据挖掘之认识数据
人工智能·机器学习·信息可视化·数据挖掘
FBI78098045943 小时前
API接口在电商行业中的创新应用与趋势
运维·网络·人工智能·爬虫·python