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

在之前的文章,我们总结了Sora模型上用到的一些核心技术和论文

  • 复刻大模型 Sora 有多难?一张图带你读懂 Sora 的技术路径
  • 一文看懂大模型 Sora 技术推演

今天这篇文章来自我们社区讨论交流,我这边整理和总结现有的一些开源代码、模型、数据集,以及初步训练的算力评估,希望可以帮助到国内的创业公司和个人开发者展开更深的研究。

文章目录

    • 技术交流
    • 01 开源代码和模型
      • Diffusion Transformer
      • Video Captioning
      • 基于diffusion模型的视频生成技术
    • 02 开源数据集
      • 下游任务数据集
      • LAION-5B
    • 03 算力评估
    • 通俗易懂讲解大模型系列

技术交流

前沿技术资讯、算法交流、求职内推、算法竞赛、面试交流(校招、社招、实习)等、与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度等名校名企开发者互动交流~

我们建了 SORA 技术交流群, 想要进交流群、获取完整源码&资料、提升技术的同学,可以直接加微信号:mlc2060。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。

方式①、微信搜索公众号:机器学习社区,后台回复:技术交流
方式②、添加微信号:mlc2060,备注:技术交流

01 开源代码和模型

Diffusion Transformer

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

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

  • 论文链接:https://arxiv.org/abs/2209.12152

  • 代码库链接:https://github.com/baofff/U-ViT

  • 模型链接:https://modelscope.cn/models/thu-ml/imagenet256_uvit_huge

  • 最佳实践:https://github.com/modelscope/modelscope/blob/master/examples/pytorch/UViT_ImageNet_demo.ipynb

  • 效果图:

图片

DiT:Scalable Diffusion Models with Transformers

  • 论文链接:https://arxiv.org/abs/2212.09748

  • 代码库链接:https://github.com/facebookresearch/DiT

  • 模型链接:https://modelscope.cn/models/AI-ModelScope/DiT-XL-2-256x256/summary

  • 最佳实践:https://github.com/modelscope/modelscope/blob/master/examples/pytorch/DiT_ImageNet_Demo.ipynb

  • 效果图:

图片

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

  • 论文链接:https://arxiv.org/pdf/2401.08740.pdf

  • 代码库链接:https://github.com/willisma/SiT

  • 模型链接:https://modelscope.cn/models/AI-ModelScope/SiT-XL-2-256

  • 最佳实践:https://github.com/modelscope/modelscope/blob/master/examples/pytorch/SiT_ImageNet_Demo.ipynb

  • 效果图:

图片

总结对比

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)

  • 代码库链接:https://github.com/01-ai/Yi/tree/main/VL

  • 模型链接:https://modelscope.cn/models/01ai/Yi-VL-34B/

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

  • 论文链接:https://arxiv.org/abs/2308.12966

  • 代码库链接:https://github.com/QwenLM/Qwen-VL

  • 模型链接:https://modelscope.cn/models/qwen/Qwen-VL-Chat

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

  • 代码库链接:https://github.com/InternLM/InternLM-XComposer

  • 模型链接:https://modelscope.cn/models/Shanghai_AI_Laboratory/internlm-xcomposer2-vl-7b/summary

CogVLM模型:

  • 技术报告:https://zhipu-ai.feishu.cn/wiki/LXQIwqo1OiIVTykMh9Lc3w1Fn7g

  • 代码库链接:https://github.com/THUDM/CogVLM

  • 模型链接:https://modelscope.cn/models/ZhipuAI/CogVLM/summary

MiniCPM-V模型:

  • 论文链接:https://arxiv.org/abs/2308.12038

  • 代码库链接:https://github.com/OpenBMB/OmniLMM/

  • 模型链接:https://modelscope.cn/models/OpenBMB/MiniCPM-V/summary

Video-LLaVA模型:

  • 论文链接:https://arxiv.org/abs/2311.10122

  • 代码库链接:https://github.com/PKU-YuanGroup/Video-LLaVA

  • 模型链接:https://modelscope.cn/models/PKU-YuanLab/Video-LLaVA-7B/summary

总结对比

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

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

Animatediff模型:

  • 论文链接:https://arxiv.org/abs/2307.04725

  • 代码库链接:https://github.com/guoyww/animatediff/

  • 模型链接:https://modelscope.cn/models/Shanghai_AI_Laboratory/animatediff/summary

I2VGen模型:

  • 论文链接:https://arxiv.org/abs/2311.04145

  • 代码库链接:https://github.com/ali-vilab/i2vgen-xl

  • 模型链接:https://modelscope.cn/models/iic/i2vgen-xl/summary

文本生成视频模型:

  • 模型链接:https://modelscope.cn/models/iic/text-to-video-synthesis/summary

  • 代码库链接:https://github.com/modelscope/modelscope

总结对比

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

02 开源数据集

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/

03 算力评估

众所周知,当技术和数据上比较成熟了之后,最大的瓶颈就在算力资源上,我们也根据各项公开材料,模拟了一个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技术来降低卡的消耗。

通俗易懂讲解大模型系列

  • 做大模型也有1年多了,聊聊这段时间的感悟!

  • 用通俗易懂的方式讲解:大模型算法工程师最全面试题汇总

  • 用通俗易懂的方式讲解:不要再苦苦寻觅了!AI 大模型面试指南(含答案)的最全总结来了!

  • 用通俗易懂的方式讲解:我的大模型岗位面试总结:共24家,9个offer

  • 用通俗易懂的方式讲解:大模型 RAG 在 LangChain 中的应用实战

  • 用通俗易懂的方式讲解:一文讲清大模型 RAG 技术全流程

  • 用通俗易懂的方式讲解:如何提升大模型 Agent 的能力?

  • 用通俗易懂的方式讲解:ChatGPT 开放的多模态的DALL-E 3功能,好玩到停不下来!

  • 用通俗易懂的方式讲解:基于扩散模型(Diffusion),文生图 AnyText 的效果太棒了

  • 用通俗易懂的方式讲解:在 CPU 服务器上部署 ChatGLM3-6B 模型

  • 用通俗易懂的方式讲解:使用 LangChain 和大模型生成海报文案

  • 用通俗易懂的方式讲解:ChatGLM3-6B 部署指南

  • 用通俗易懂的方式讲解:使用 LangChain 封装自定义的 LLM,太棒了

  • 用通俗易懂的方式讲解:基于 Langchain 和 ChatChat 部署本地知识库问答系统

  • 用通俗易懂的方式讲解:在 Ubuntu 22 上安装 CUDA、Nvidia 显卡驱动、PyTorch等大模型基础环境

  • 用通俗易懂的方式讲解:Llama2 部署讲解及试用方式

  • 用通俗易懂的方式讲解:基于 LangChain 和 ChatGLM2 打造自有知识库问答系统

  • 用通俗易懂的方式讲解:一份保姆级的 Stable Diffusion 部署教程,开启你的炼丹之路

  • 用通俗易懂的方式讲解:对 embedding 模型进行微调,我的大模型召回效果提升了太多了

  • 用通俗易懂的方式讲解:LlamaIndex 官方发布高清大图,纵览高级 RAG技术

  • 用通俗易懂的方式讲解:为什么大模型 Advanced RAG 方法对于AI的未来至关重要?

  • 用通俗易懂的方式讲解:使用 LlamaIndex 和 Eleasticsearch 进行大模型 RAG 检索增强生成

  • 用通俗易懂的方式讲解:基于 Langchain 框架,利用 MongoDB 矢量搜索实现大模型 RAG 高级检索方法

  • 用通俗易懂的方式讲解:使用Llama-2、PgVector和LlamaIndex,构建大模型 RAG 全流程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/488231.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis篇之缓存雪崩、击穿、穿透详解

学习材料:https://xiaolincoding.com/redis/cluster/cache_problem.html 缓存雪崩 什么是缓存雪崩 在面对业务量较大的查询场景时,会把数据库中的数据缓存至redis中,避免大量的读写请求同时访问mysql客户端导致系统崩溃。这种情况下&#x…

【办公类-16-10-01】“2023下学期 中4班 自主游戏观察记录(python 排班表系列)

背景需求 上学期的周安排里,每班每周的自主游戏会轮到多个不同的内容 因此在每周的自主游戏观察有2次记录,观察的项目可以写不一样的, 如一位老师写沙水游戏,另一位写表演游戏 本学期,中班的自主游戏全部是户外的&am…

赌输了可都是自己的,为什么要去赌?

我先解释一下,无论你怎么发送,即使根本没有受到保护,也有概率完好无损,但为什么要赌这个概率呢? 如果你输了赌注,一切都是你的! 尽自己最大的努力不是更好吗? 1、快递德邦和顺丰&am…

Android 输入法框架简介

每种平台都有自己的输入法框架. GNU/Linux 桌面环境有多种输入法框架, 比如 ibus, fcitx 等. 但是 Android 操作系统只有一种, 是统一提供的输入法框架. 相关链接: 《ibus 源代码阅读 (1)》 https://blog.csdn.net/secext2022/article/details/136099328https://developer.and…

com.alibaba.nacos.api.exception.NacosException: Request nacos server failed

问题描述 安装nacos2.0以上版本,启动报错:com.alibaba.nacos.api.exception.NacosException: Request nacos server failed com.alibaba.nacos.api.exception.NacosException: Request nacos server failed: at com.alibaba.nacos.client.naming.remote.gprc.Nami…

React18源码: schedule任务调度messageChannel

React调度原理(scheduler) 在React运行时中,调度中心(位于scheduler包)是整个React运行时的中枢(其实是心脏),所以理解了scheduler调度,就基本掌握了React的核心React两大循环:从宏…

[深度学习]yolov9+deepsort+pyqt5实现目标追踪

【YOLOv9DeepSORTPyQt5追踪介绍】 随着人工智能技术的飞速发展,目标追踪在视频监控、自动驾驶等领域的应用日益广泛。其中,YOLOv9作为先进的目标检测算法,结合DeepSORT多目标追踪算法和PyQt5图形界面库,能够为用户提供高效、直观…

【Docker】构建pytest-playwright镜像并验证

Dockerfile FROM ubuntu LABEL maintainer "langhuang521l63.com" ENV TZAsia/Shanghai #设置时区 #安装python3依赖与下载安装包 RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \&& apt update \&&…

每日一题(寻找奇数,寻找峰值)

寻找奇数_牛客题霸_牛客网 (nowcoder.com) #include <stdio.h> #include<stdlib.h> int main() {int n0;int num0;scanf("%d",&n);int* arr(int*)malloc(sizeof(int)*n);int i0;for(i0;i<n;i){scanf("%d",&arr[i]);//在循环内&…

图片Base64编码解码的优缺点及应用场景分析

title: 图片Base64编码解码的优缺点及应用场景分析 date: 2024/2/24 14:24:37 updated: 2024/2/24 14:24:37 tags: 图片Base64编码解码HTTP请求优化网页性能加载速度安全性缓存机制 随着互联网的迅猛发展&#xff0c;图片在网页和移动应用中的使用越来越广泛。而图片的传输和加…

从0开始python学习-53.python中flask创建简单接口

目录 1. 创建一个简单的请求,没有写方法时默认为get 2. 创建一个get请求 3. 创建一个post请求&#xff0c;默认可以使用params和表单传参 4. 带有参数的post请求 1. 创建一个简单的请求,没有写方法时默认为get from flask import Flask, request# 初始化一个flask的对象 ap…

无人机基础技术,固定翼无人机动力系统技术详解,无人机飞行控制系统技术

推重比选择 推重比&#xff0c;是指无人机发动机推力/拉力与无人机飞行重力之比。该参数是衡量动力系统乃至整机性能的重要参数&#xff0c;很大程度上影响飞行性能。固定翼无人机的动力系统在配置时选择的推重比必须达到或超出设计的推重比。 重量要求 翼载荷是无人机单位面…