训练Sora模型,你可能需要这些(开源代码,模型,数据集及算力评估)

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: 在之前的文章《复刻Sora有多难?一张图带你读懂Sora的技术路径》,《一文看Sora技术推演》我们总结了Sora模型上用到的一些核心技术和论文,今天这篇文章我们将整理和总结现有的一些开源代码、模型、数据集,以及初步训练的算力评估,希望可以帮助到国内的创业公司和个人开发者展开更深的研究。

在之前的文章《复刻Sora有多难?一张图带你读懂Sora的技术路径》《一文看Sora技术推演》我们总结了Sora模型上用到的一些核心技术和论文,今天这篇文章我们将整理和总结现有的一些开源代码、模型、数据集,以及初步训练的算力评估,希望可以帮助到国内的创业公司和个人开发者展开更深的研究。

开源代码和模型

Diffusion Transformer

普遍认为Diffusion Transformer模型是Sora的技术基础,通过结合diffusion model和transformer,从而达到可以scale up model来提升图像生成质量的效果。我们总结了三个目前开源的Diffusion Transformer研究如下,并总结了最佳实践,可以在魔搭社区的免费算力上运行和测试。

UViT:All are Worth Words: A ViT Backbone for Diffusion Models

DiT:Scalable Diffusion Models with Transformers

SiT:Exploring Flow and Diffusion-based Generative Models with Scalable Interpolant Transformers (SiT)

总结对比

部分观点来自知乎:https://zhuanlan.zhihu.com/p/619033826?utm_psn=1743677564626051072

U-ViT是一种简单且通用的基于ViT的扩散概率模型的主干网络,U-ViT把所有输入,包括图片、时间、条件都当作token输入,并且引入了long skip connection。U-ViT在无条件生成、类别条件生成以及文到图生成上均取得了可比或者优于CNN的结果。为未来扩散模型中骨干网络研究提供见解,并有利于大规模跨模态数据集的生成建模。

DiT同样的提出了使用ViT代替U-Net的思想,不同的是DiT中没有引入long skip connection也依然取得了杰出的效果。推测原因可能有:

  • DiT 出色的Adaptive layer norm以及零初始化的设计能够有效提升生成质量;
  • DiT 在建模特征空间表现良好,但在建模像素空间表现欠缺,可能在用扩散概率模型建模像素空间分布时long skip connection是至关重要的;
  • 即使在建模特征空间上,DiT 没有long skip connection也能取得很好的效果,但long skip connection在加速收敛方面也起着关键的作用。

而近期推出的可扩展插值变压器 (SiT),是建立在DiT 基础上的生成模型系列。 插值框架,相比标准的diffusion模型允许以更灵活的方式连接两个distributions,使得对影响生成的各种设计选择的模块化研究成为可能。SiT 在 ImageNet 256x256 基准上模型大小和效果超过了 DiT和UViT,SiT 实现了 2.06 的 FID-50K 分数。

Video Captioning

OpenAI训练了一个具备高度描述性的视频标题生成(Video Captioning)模型,使用这个模型为所有的视频训练数据生成了高质量文本标题,再将视频和高质量标题作为视频文本对进行训练。通过这样的高质量的训练数据,保障了文本(prompt)和视频数据之间高度的align。通过近期的讨论和资料,我们推测Video Captioning模型是由多模态大语言模型VLM(如GPT4V模型)微调出来的。开发者也可以通过视频抽帧+开源VLM生成描述+LLM总结描述的方式,生成较好的视频描述。

下面是一些开源的多模态模型:

零一万物VL模型(Yi-VL-34B

零一万物开源Yi-VL多模态大模型,魔搭社区推理&微调最佳实践来啦!

通义千问VL模型(Qwen-VL-Chat)

通义千问开源第二波!多模态来啦!(内含魔搭最佳实践)

浦语·灵笔2-视觉问答-7B(internlm-xcomposer2-vl-7b)

CogVLM模型:

MiniCPM-V模型:

Video-LLaVA模型:

总结对比

从模型参数量来看,零一万物,CogVLM的模型是百亿参数,但是仅支持英文,通义,灵笔等模型可以较好的支持中文,Video-LLaVA可以支持直接对视频的理解,可以根据需求来选择具体的多模态大语言模型。

基于diffusion模型的视频生成技术

Animatediff模型:

I2VGen模型:

文本生成视频模型:

总结对比

目前开源的视频生成技术基本都是基于diffusion+Unet架构,不过其中视频数据处理,压缩采样,包括UNet3D设计等,依然有很大的参考意义。

开源数据集

Youku-mPLUG中文大规模视频文本数据集

Youku-mPLUG预训练数据集挖掘自优酷站内海量的优质短视频内容,包含千万级别约36TB的视频、文本数据。其中视频均为覆盖10~120秒的UGC短视频内容,文本为视频对应的描述标题,长度5~30不等。该数据集抽取时品类均衡,内容共包含45个大类:电视剧剪辑、电视剧周边、电影剪辑、电影周边、综艺、相声小品、纪录片、传统文化、动漫、MV、翻唱、乐器演奏、健身、街舞、广场舞、竞技体育、篮球、足球、财经、科技、汽车、科学科普、生活百科、日常生活、搞笑、学历教育、游戏、职业职场、美食测评、美食制作、美容护肤、美妆、穿搭、旅游、宠物、家居装饰、房产装修、医疗健康、养生保健、三农、萌娃日常、亲子育儿、少儿才艺、少儿动漫、少儿玩具。

下游任务数据集

我们提供了3个不同的下游多模态视频Benchmark视频数据集去衡量预训练模型的能力。3个不同的任务具体包含:

  • 类目预测:给定视频和对应视频标题,对该视频的类目进行预测。
  • 视频检索:在给定一些视频以及一些文本的情况下,使用视频对文本进行检索和使用文本对视频进行检索。
  • 视频描述:在给定视频的情况下,对视频中的画面进行描述。

开源链接:https://modelscope.cn/datasets/modelscope/Youku-AliceMind/summary

LAION-5B

LAION-5B是一个用于研究目的的大型数据集,由 5,85B CLIP 过滤的图像文本对组成。2,3B 包含英语,2,2B 样本来自 100 多种其他语言,1B 样本包含不允许特定语言分配的文本(例如名称)。比 LAION-400M 大 14 倍,LAION-400M 是之前世界上最大的可公开访问的图像文本数据集。

开源链接:https://laion.ai/blog/laion-5b/

算力评估

众所周知,当技术和数据上比较成熟了之后,最大的瓶颈就在算力资源上,我们也根据各项公开材料,模拟了一个6B的中低分辨率视频Transformers模型的训练场景(数据集包含千万个视频+图片,最大为训练样本40秒256*256分辨率的视频,帧率为24),并根据在LLM训练的经验,初步预估了卡资源。

按照尝试的资源来算,我们假设训练的视频样本最大为256(长)*256(宽)*视频帧数(40*24),空间理想压缩比为8,时间理想压缩比4,patch size为(2*2*2),我们按照序列长度最长约为32K来算。tensor 并行数为8,模型的大小为6B,相比于一开始LLM模型从2K的最长窗口开始,明显视频的序列长度远高于LLM模型,带来的算力需求的大幅增长,我们初步预估需要200-400张A100,训练2-3个月,也可以采取window attention技术来降低卡的消耗。

相关文章
|
2月前
|
机器学习/深度学习 存储 人工智能
谷歌Gemma介绍、微调、量化和推理
谷歌的最新的Gemma模型是第一个使用与Gemini模型相同的研究和技术构建的开源LLM。这个系列的模型目前有两种尺寸,2B和7B,并且提供了聊天的基本版和指令版。
304 2
|
1月前
|
机器学习/深度学习 数据采集 PyTorch
使用PyTorch解决多分类问题:构建、训练和评估深度学习模型
使用PyTorch解决多分类问题:构建、训练和评估深度学习模型
使用PyTorch解决多分类问题:构建、训练和评估深度学习模型
|
27天前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能基础——模型部分:模型介绍、模型训练和模型微调 !!
人工智能基础——模型部分:模型介绍、模型训练和模型微调 !!
152 0
|
9月前
|
机器学习/深度学习 人工智能 自然语言处理
MedicalGPT:基于LLaMA-13B的中英医疗问答模型(LoRA)、实现包括二次预训练、有监督微调、奖励建模
MedicalGPT:基于LLaMA-13B的中英医疗问答模型(LoRA)、实现包括二次预训练、有监督微调、奖励建模
MedicalGPT:基于LLaMA-13B的中英医疗问答模型(LoRA)、实现包括二次预训练、有监督微调、奖励建模
|
20天前
|
机器学习/深度学习 测试技术
大模型开发:描述交叉验证以及为什么在模型评估中使用它。
交叉验证是评估机器学习模型性能的方法,通过将数据集分成训练集和多份子集(折叠)进行多次训练验证。每次选择一份子集作为验证集,其余作训练,最后平均评估结果。这样能减少过拟合,提供可靠性能估计,用于参数调优,并减少小数据集或噪声带来的随机性影响。它是模型评估的关键技术,确保更准确的性能估计。
10 1
|
7月前
|
机器学习/深度学习 人工智能 算法
机器学习模型评估
机器学习模型评估
100 0
|
8月前
|
人工智能 缓存 并行计算
终极「揭秘」:GPT-4模型架构、训练成本、数据集信息都被扒出来了
终极「揭秘」:GPT-4模型架构、训练成本、数据集信息都被扒出来了
307 0
|
8月前
|
存储 机器学习/深度学习 人工智能
思考一下,联邦学习可以训练大语言模型吗?(1)
思考一下,联邦学习可以训练大语言模型吗?
155 0
|
8月前
|
机器学习/深度学习 存储 人工智能
思考一下,联邦学习可以训练大语言模型吗?(2)
思考一下,联邦学习可以训练大语言模型吗?
218 0
|
11月前
|
存储 机器学习/深度学习 人工智能
调教LLaMA类模型没那么难,LoRA将模型微调缩减到几小时
调教LLaMA类模型没那么难,LoRA将模型微调缩减到几小时
381 0