Open-Sora: Democratizing Efficient Video Production for All 论文解读

部署运行你感兴趣的模型镜像

目录

一、概述

二、数据 

三、OpenSora框架 

1、3D Autoencoder

2、STDiT 

3、文本条件

四、实验


一、概述

        Open-Sora是一个开源的视频生成模型,旨在生成高保真度的视频内容 。它支持广泛的视觉生成任务,包括文本到图像、文本到视频和图像到视频的生成 。该模型利用先进的深度学习架构和训练/推理技术,能够生成长达15秒、分辨率达720p、任意宽高比的灵活视频 。其中的关键创新包括空间-时间扩散变换器(STDiT)和高度压缩的3D自编码器 。通过这个项目,研究人员希望促进AI内容创作领域的创新、创造力和包容性 。开源原则使Open-Sora民主地开放了所有的训练/推理/数据准备代码以及模型权重。

二、数据 

1、来源

        数据集完全开源,保证模型训练具有完全的可重复性。

        视频数据集包括300万个视频clips,范围从2s到16s,总持续时间为80k小时包括Webvid-10M,Panda-70M,HD-VG-130M,MiraDara,Vript,Inter4K,Pexels,Pixabay,Mixkit数据集。

        图像数据集,包含了3M图像,LAION是一个开放数据集,使用了一个美学得分大于6.5的子集,Upsplash-lite包括25k个自然主题的unsplash图片,这个数据集包含广泛的使用用途和上下文信息。

2、预处理

        建立了一个完整的数据处理pipeline,来无缝地将原始视频转换为高质量视频文本对。利用PySceneCut检测场景进行剪辑,之后利用审美评分保留大于6.5的评分,再计算光流评分,取三个采样帧平均得分,过滤掉低运动的视频。利用OCR技术(DBNet++)识别文本过多的视频的模型将被删除。

        对于文本信息,利用GPT-4V和PLLaVA 13B,但是实践中只用了PLLAVA 13B模型,从每个视频中选择4帧进行标注字幕,之后又利用光流来检测相机运动,标注到caption中。

三、OpenSora框架 

        OpenSora框架包括3D Autoencoder、text encoder、DiT-like Transformer。

1、3D Autoencoder

        在Open-Sora 1.0和1.1中,使用了Stability-AI中的2D VAE,将视频空间维度上压缩8*8倍。为了减少时间维度,通过每三帧提取一帧进行降采样,但是由于产生FPS的减少,这种方法导致的时间流畅性较低。

        Open-Sora 1.2引入了一个Sora-inspired 视频压缩网络,在时间维度上实现4倍压缩。Open-Sora 1.2中先利用2D VAE的知识,因为时间上相邻的特征仍然高度一致。

        这个3D Autoencoder,首先空间上压缩8*8,时间上压缩4倍。使用SDXL预训练的VAE初始化2DVAE,对于3D VAE部分采用Magivit-v2的VAE结构,其中3D VAE采用causal卷积结构,对于3DVAE需要进行训练,使用Pexels和Pixabay的视频,分辨率256*256的17帧视频clip,batch_size=1。

        整个训练过程包括三个阶段:

阶段1(0-380k步):在8个GPU上进行训练,并冻结2DVAE的权重,应用identity loss将3DVAE和2DVAE进行特征对齐。

阶段2(380k-640k步):去除identity loss并训练3D VAE完善对时间注意力的理解。

阶段3(640k-1.2M步):对2D VAE特征重建不足进行优化,使用24个GPU,并通过随机化视频长度(多达34帧),和适当的零填充(对于图像数据的填充),实现混合视频长度训练,提高对不同视频持续时间的鲁棒性。

        在前两个阶段,数据集包含80%的视频数据和20%的图像数据,但是图像数据通过零填充会导致非标准长度的视频模糊,所以第三个阶段使用了混合长度训练。

3D autoencoder from open-sora's github  

2、STDiT 

        STDiT建立在PixArt上,PixArt是一个图像领域的基于DiT的生成模型。另外文本使用T5 encoder进行编码,并在视频和文本潜在空间中使用交叉注意。另外受Latte启发,取代所有的full-attention而是用自注意力机制。

        PixArt中借鉴了文本特征如何输入到DIT中,以及Pointwise FeedForward。

PixArt Framework

                 Latte框架结构,用到了空间和时间注意力交叉进行。

Latte Framework

        另外在Transformer结构上也引入了RoPE替代正弦编码,目的是提高时间注意,另外SD3启发,使用了qk-normalization,证明避免训练峰值和更平滑的优化上有效。

3、文本条件

        通过采用遮蔽策略,可以在输入中指定需要 Conditioning 的帧。在前向传播过程中,这些未被遮蔽的帧会被赋予 0 时间步,而其他帧保留原有的扩散时间步。

        为了解决直接应用这种策略可能导致的子优结果,模型在训练过程中引入了随机遮蔽策略。具体来说,以 50% 的概率随机遮蔽不同模式的帧,如第一帧、前 k 帧、最后一帧、后 k 帧等。这使得模型能够有效学习图像和视频 Conditioning 能力,同时对文本到视频的性能影响较小。

        美学得分、运动得分和摄像机运动描述符的 Conditioning,将这些得分信息附加到字幕中,作为额外的 Conditioning 输入。

        在推理过程中,这些得分信息也可以被调整以影响视频生成。这种方法使模型能够更好地理解 Conditioning 输入,从而生成更高质量、更贴近上下文的视频。

        总之,Open-Sora 模型通过多种 Conditioning 策略,如遮蔽、得分信息等,增强了模型对输入的理解和控制能力,从而生成更高质量的视频。

A general framework for image and video to video generation

四、实验

        不同模型的比较

项目路径:GitHub - hpcaitech/Open-Sora: Open-Sora: Democratizing Efficient Video Production for All 

您可能感兴趣的与本文相关的镜像

Seed-Coder-8B-Base

Seed-Coder-8B-Base

文本生成
Seed-Coder

Seed-Coder是一个功能强大、透明、参数高效的 8B 级开源代码模型系列,包括基础变体、指导变体和推理变体,由字节团队开源

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值