【论文阅读】MAKE-A-VIDEO: TEXT-TO-VIDEO GENERATION WITHOUT TEXT-VIDEO DATA

news2024/11/22 10:22:24

Make-a-video:没有文本-视频数据的文本-视频生成。

paper:

code:

ABSTRACT

优点:

(1)加速了T2V模型的训练(不需要从头开始学习视觉和多模态表示),

(2)不需要配对的文本-视频数据,

(3)生成的视频继承了当今图像生成模型的庞大性)。

构建具有新颖有效时空模块的T2I模型。首先分解全时间U-Net和注意力张量,并在空间和时间上近似。其次,设计了一个时空pipeline,通过视频解码器、插值模型和两个超分辨率模型生成高分辨率和帧率的视频。
 

1 INTRODUCTION

用T2I模型学习文本和视觉世界之间的对应关系,并用无监督学习在无标记的视频数据上学习真实的运动。文本并不能完整描述视频的运动,Make a video可以对其进行推算,可以在无描述的情况下学习动作。

贡献:

  • 利用联合文本-图像先验,绕过对配对文本-视频数据的需求,反过来能扩展到更大量的视频数据。
  • 提出了空间和时间上的超分辨率策略,给定文本输入,生成高清高帧率的视频。
  • 根据现有的T2V系统评估Make-A-Video,并提出:(a)定量和定性测量的最先进结果,以及(b)比现有T2V文献更彻底的评估。还收集了一套300个提示的测试集,用于zero-shot T2V评估。

2 PREVIOUS WORK

baseline:NUWA ,cogvideo,VDM。

在T2V生成中,NUWA 在多任务预训练阶段结合图像和视频数据集,以提高模型泛化的微调。

CogVideo使用预训练和固定的T2I模型进行T2V生成,只有少量可训练参数,以减少训练过程中的内存使用。但是固定的自编码器和T2I模型可能会限制T2V的生成。

VDM架构可以实现图像和视频的联合生成。然而,他们从随机视频中抽取随机的独立图像作为图像源,并且没有利用大量的文本-图像数据集。

3 METHOD

图2:Make-A-Video高级架构:1.给定由先验P翻译成图像嵌入的输入文本x和期望的帧率fps,解码器Dt生成16个 64 × 64大小的帧,2.然后通过F插值到更高的帧率。3.通过SRtl和SRh将分辨率增加到256 × 256和768 × 768,从而生成高时空分辨率的视频y^。

三个主要组成部分:

(i)基于文本-图像对训练的基本T2I模型(第3.1节),

(ii)将网络构建块扩展到时间维度的时空卷积和注意层(第3.2节),

(iii)由时空层组成的时空网络,以及T2V生成所需的另一个关键元素-用于高帧率生成的帧插值网络(第3.3节)。

y^t:生成的视频,SRh;SRl:空间和时空的超分辨率网络(第3.2节),F:帧插值网络(第3.3节),dt:时空解码器(第3.2节),P:先验(第3.1节),x^:bpe编码的文本,Cx:CLIP文本编码器, x:输入文本。 

3.1 TEXT-TO-IMAGE MODEL

训练该方法的主干:在文本-图像对上训练的T2I模型。

(i)先验网络P,在推理过程中生成给定的文本嵌入xe和BPE编码的文本token x^,

(ii)生成低分辨率64 × 64 RGB图像y^l的解码器网络D,以图像嵌入ye为条件,

(iii)两个超分辨率网络SRl,SRh,分别将生成的图像y^l分辨率增加到256 × 256和768 × 768像素,从而生成最终的图像y^。

3.2 SPATIOTEMPORAL LAYERS

为了将二维(2D)条件网络扩展到时间维度,本文修改了两个关键模块,(i)卷积层和(ii)注意力层。

其他层如全连接层,在添加额外维度时不需要特定的处理,因为它们与结构化的空间和时间信息无关。

在基于u - net的扩散网络中进行了时间上的修改:时空解码器Dt生成16个RGB帧,每个大小为64 × 64,新添加的帧插值网络F,通过在生成的16帧之间进行插值来增加有效帧率(如图2所示),以及超分辨率网络SRtl。

图3:伪3d卷积层和注意力层的架构和初始化方案,使预训练的文本-图像模型无缝过渡到时间维度。(左)每个空间2D conv层之后都是一个时间1D conv层。(右)将时间投影初始化为零,在空间注意力层之后应用时间注意力层,产生时间注意力块的恒等函数。

3.2.1 PSEUDO-3D CONVOLUTIONAL LAYERS

伪3d卷积层。在每个2D卷积(conv)层之后堆叠一个1D卷积,如图3所示。这有助于空间轴和时间轴之间的信息共享,而没有3D转换层的沉重计算负荷。

此外,它在预训练的2D转换层和新初始化的1D转换层之间创建了一个具体的分区,允许从头开始训练时间卷积,同时在空间卷积的权重中保留以前学习的空间知识。

给定一个输入张量h∈B×C×F ×H×W,其中B, C, F, h, W分别是批次,通道,帧,高度和宽度尺寸,伪3D卷积层定义为

转置算子◦T在空间和时间维度之间进行互换。对于平滑初始化,虽然Conv1D层是从预训练的T2I模型初始化,但Conv1D层被初始化为恒等函数,从而实现从训练仅空间层到时空层的无缝过渡。

初始化时,网络生成K个不同的图像(随机噪声),每个图像仅对应输入文本,缺乏时间一致性。

代码解析:
定义一个2D的卷积
定义一个1D的卷积
用dirac初识它
temporal的卷积层变成identity function

空间卷积,每帧都是独立的,所以【BF,C,H,W】
时间卷积是ID的卷积在不同的帧上,所以把帧f放在最后一堆,CHW放到Batch上

参考:【论文精读】MAKE-A-VIDEO:TEXT-TO-VIDEO GENERATION WITHOUT TEXT-VIDEO DATA-CSDN博客

3.2.2 PSEUDO-3D ATTENTION LAYERS

T2I网络的一个关键组成部分是注意力层,除了自关注提取的特征外,文本信息与其他相关信息(如扩散时间步长)一起被注入到几个网络层次中。我们也将维度分解策略扩展到注意层。在每个空间注意层后,叠加一个时间注意层。输入张量h,将flatten定义为一个矩阵算子,它将空间维度平坦化为h ∈ B × C×F × H × W。

将空间上的attention扩展到了时间维度。伪3D注意层定义为:

与卷积层3D类似,为了允许平滑的时空初始化,注意力2D层从预训练的T2I模型初始化,注意力1D层初始化为恒等函数。

帧率调节。添加了一个额外的条件参数fps,表示生成视频中的每秒帧数。对每秒帧数的变化进行调节,使额外的增强方法能够在训练时处理有限数量的可用视频,并在推理时对生成的视频提供额外的控制。

代码解析:
以前是HW上做attenrion,现在在f上加了一层attention
实现在时间上做信息交互。
attention函数:
初始化空间上的attetion
初始化时间上的attention
进入维度的tensor
将空间维度展开。

为什么用伪?这样参数量小。3D参数量太大了。

在VDM和CogVideo上都有。

Frame rate conditioning(帧速率调节)

损失函数:混合模型 hybrid loss
MSE+KLD
原文链接:https://blog.csdn.net/m0_60634555/article/details/129714795

3.3 FRAME INTERPOLATION NETWORK

帧插值网络。输入到unit里,不再是三个channel,而是四个channel。然后多了一个binary channel去判断该帧是否是被mask的。中间插帧的帧数是可变的。

3.4 TRAINING

Make-A-Video每一个部分都是单独训练的。

prior网络只接受输入,只在文本-图像对上训练,类似于DALLE-2的训练方式
decoder网络和超分网络,首先在图像上做训练,不需要文本。需要注意的是,这个解码器接收CLIP decoder解码器作为输入。用CLIP magen enbedding做输入。

在原模型训练好后,我们需要扩充temporal的维度。扩展完后,我们需要在未标记的video上做fine-turn。我们需要做16张从原始数据上的采样。训完后再训插帧网络。
 

4 EXPERIMENTS

表1:MSR-VTT对T2V生成的评价。zero-shot即没在MSR-VTT上训练。样本/输入:为每个输入生成多少样本。

 

5 DISCUSSION

用无监督学习更多的视频有助于摆脱对标记数据的依赖。本文工作表明,标记图像与未标记视频片段有效结合可以实现这一目标。

限制。该方法无法学习只能在视频中推断的文本和现象之间的关联。如何将这些结合起来(例如,生成一个人从左到右或从右到左挥手的视频),以及生成具有多个场景和事件的较长视频,描述更详细的故事,留给未来的工作。

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HBase 高可用集群详细图文安装部署

目录 一、HBase 安装部署 1.1 Zookeeper 正常部署 1.2 Hadoop 正常部署 1.3 HBase 安装 1.4 HBase 的配置文件 1.4.1 hbase-env.sh 1.4.2 hbase-site.xml 1.4.3 regionservers 1.4.4 创建目录 1.5 HBase 远程发送到其他节点 1.6 HBase 服务的启动 1.6.1 单点…

用友时空 KSOA 多处SQL注入漏洞复现

0x01 产品简介 用友时空 KSOA 是建立在 SOA 理念指导下研发的新一代产品,是根据流通企业前沿的 IT 需求推出的统一的IT基础架构,它可以让流通企业各个时期建立的 IT 系统之间彼此轻松对话。 0x02 漏洞概述 用友时空 KSOA 系统 PayBill、QueryService、linkadd.jsp等接口处…

数字化赋能实体经济,凌雄科技发挥DaaS模式提质增效价值

11月中旬,市场监管总局发布了2023年前三季度经营主体数据。其中,前三季度全国新设民营企业总计706.5万户,截至9月底,全国登记在册的民营企业数量超过5200万户,在企业总量中占比高达92.3%。如何帮助民营企业实现高质量发…

中海达亮相能源北斗与时空智能创新技术应用大会

12月7日-8日,2023年能源北斗与时空智能创新技术应用大会暨鹭岛论坛在厦门举办。本次活动以“能源北斗时空智能”为主题,由中关村智能电力产业技术联盟、中国能源研究会、中国卫星导航定位协会、中国电力科学研究院有限公司、国网信息通信产业集团有限公司…

探索 Vim:一个强大的文本编辑器

引言: Vim(Vi IMproved)是一款备受推崇的文本编辑器,拥有强大的功能和高度可定制性,提供丰富的编辑和编程体验。本文将探讨 Vim 的基本概念、使用技巧以及为用户带来的独特优势。 简介和发展 1. Vim 的简介和历史 V…

0基础学习VR全景平台篇第127篇:什么是VR全景/720全景漫游?

“全景”作为一种表现宽阔视野的手法,在很久之前就得到了普遍的认同。北宋年间,由张择端绘制的《清明上河图》就是一幅著名的全景画。摄影术出现后,全景摄影也随之而生。 到今天,全景拍摄不再被专业摄影师所独享,广大…

uniapp 之 图片 视频 文件上传

<view class"" style"padding: 24rpx 0"><text>相关资料 <text class"fs-26 color-666">&#xff08;图片、视频、文档不超过9个&#xff09;</text> </text><view class"flex align-center" style&…

CNN 卷积神经网络之 DenseNet 网络的分类统一项目(包含自定义数据集的获取)

1. DenseNet 网络介绍 本章实现的项目是DenseNet 网络对花数据集的五分类&#xff0c;下载链接&#xff1a; 基于迁移学习的 DenseNet 图像分类项目 DenseNet 网络是在 ResNet 网络上的改进&#xff0c;大概的网络结构如下&#xff1a; 1.1 卷积的简单介绍 图像识别任务主要…

通过 RIOT 将 AWS ElastiCache 迁移到阿里云 Tair

本文通过示例介绍了 RIOT 如何轻松地将数据从 AWS ElastiCache 迁移到云原生内存数据库&#xff08;如 Tair 和云数据库 Redis 版&#xff09;。 1. 准备资源迁移 1.1. 源代码 AWS ElastiCache cache.r6g.xlarge。它有三个数据分片&#xff0c;与 Redis 6.2 兼容。 AWS EC2 t2.…

共建开源新里程:北京航空航天大学OpenHarmony技术俱乐部正式揭牌成立

12月11日,由OpenAtom OpenHarmony(以下简称“OpenHarmony”)项目群技术指导委员会(以下简称“TSC”)和北京航空航天大学共同举办的“OpenHarmony软件工程研讨会暨北京航空航天大学OpenHarmony技术俱乐部成立仪式”在京圆满落幕。 现场大合影 活动当天,多位重量级嘉宾出席了此次…

2023.12.14 hive sql的聚合增强函数 grouping set

目录 1.建库建表 2.需求 3.使用union all来完成需求 4.聚合函数增强 grouping set 5.聚合增强函数cube ,rollup 6.rollup翻滚 7.聚合函数增强 -- grouping判断 1.建库建表 -- 建库 create database if not exists test; use test; -- 建表 create table test.t_cookie(month …

理解 Proxy 和 Object.defineProperty:提升你的 JavaScript 技能(下)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

华为配置基本QinQ示例

组网需求 如图1所示&#xff0c;网络中有两个企业&#xff0c;企业1有两个分支&#xff0c;企业2有两个分支。这两个企业的各办公地的企业网都分别和运营商网络中的SwitchA和SwitchB相连&#xff0c;且公网中存在其它厂商设备&#xff0c;其外层VLAN Tag的TPID值为0x9100。 现…

ffmpeg编解码——数据包(packet)概念(如何正确处理数据包中的显示时间戳pts与解码时间戳dts关系?)

文章目录 FFmpeg编解码——数据包&#xff08;Packet&#xff09;概念1. 数据包&#xff08;Packet&#xff09;简介2. 数据包&#xff08;Packet&#xff09;在FFmpeg中的应用2.1 从媒体文件读取数据包2.2 向媒体文件写入数据包 3. 数据包&#xff08;Packet&#xff09;相关问…

智能优化算法应用:基于鸽群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于鸽群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于鸽群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.鸽群算法4.实验参数设定5.算法结果6.参考文献7.MA…

数据结构-06-散列/哈希表

1-什么是散列表 散列表用的是数组支持按照下标随机访问数据的特性&#xff0c;所以散列表其实就是数组的一种扩展&#xff0c;由数组演化而来。可以说&#xff0c;如果没有数组&#xff0c;就没有散列表。散列表中的元素在数组的位置(index)是通过散列函数得到的。 2-散…

C语言 联合体验证 主机字节序 +枚举

联合体应用&#xff1a;验证当前主机的大小端&#xff08;字节序&#xff09; //验证当前主机的大小端 #include <stdio.h>union MyData {unsigned int data;struct{unsigned char byte0;unsigned char byte1;unsigned char byte2;unsigned char byte3;}byte; };int main…

华为OD机试-传递悄悄话(JavaPythonGo)100%通过率

题意 给定一个二叉树,每个节点上站着一个人,节点数字表示父节点到该节点传递悄悄话需要花费的时间。初始时,根节点所在位置的人有一个悄悄话想要传递给其他人,求二又树所有节点上的人都接收到悄悄话花费的时间。 输入 给定一叉树 09 20-1-1 157-1-1-1-132 注:-1表示空节…

Redis使用——低版本不支持SSUBSCRIBE问题的解决 守护线程daemonize初步

前言 最近在使用redis的使用&#xff0c;报了一个错&#xff0c;ERR unknown command SSUBSCRIBE&#xff0c;后来发现是redis版本的问题。这个似乎是redis的发布订阅模式相关的配置。 目录 前言引出低版本不支持SSUBSCRIBE报错unknown command SSUBSCRIBE检查docker版本拉取指…

薅github的羊毛-用pages建自己的博客或资源站 - 博客工具 - 2/2

笔者调研了好多个静态博客工具&#xff0c;最后锁定Hexo了&#xff0c;但不等于其他博客不行。我只吐槽两个 Hugo - 难用Gridea - 简直就是骗钱的&#xff0c;我交钱用不了 theme没有链接&#xff0c;同步也同步不了&#xff0c;估计以前是可以&#xff0c;现在经营不下去&…