Sora相关技术
技术逻辑:
1、压缩原始视频,提取视频特征,转换为低维空间的潜空间特征:将原始视频图像进行压缩处理,提炼出视频图像中的的特征和信息,即将原图关键内容提炼成潜空间特征的“浓缩精华的特征图”,【问题:是基于么一帧还是基于整个视频进行特征提炼?】,这样把互联网上海量的视频,转化为低维空间的潜空间特征,sora在潜在空间特征上叠加的时间维度信息,形成时空特征,space time latent。
2、将视频低维时空特征拆分成时空图像块spacetime patch(类似LLM的token):在vit-vision transformer论文中提出了 patch的概念。即在每一帧中将图像切分为空间快,每个块就是要给patc然后将patch序列化为一维向量,然后把位置信息编码入向量中,就形成了模型训练的输入向量。但Sora进行了升级,sora中的patch是spacetime patch,如果作为类比 VIT中的patch是sapce patch,在sora中的space time patch不仅代表视频中的一小块空间区域,还代表这块区域在时间维度的变化。如视频中飞舞的蝴蝶,每一帧的蝴蝶是空间信息,多帧中蝴蝶的位置和形态变化轨迹就是时间信息。因此在sora中,不是基于每个静止的帧进行向量处理,而是基于帧中图形向量的变化。【sora的训练过程也就是通过海量的视频的学习,来学习蝴蝶的空间向量以及蝴蝶飞行变化的时间向量,训练成蝴蝶飞行这个时空的特征。类比,sora的海量视频训练就是学习了不同的对象的是时空特征。而这些不同对象是可以相互叠加的,比如蝴蝶在山谷中飞行和无人机在山谷中飞行,山谷的背景变化就可以是一样的。】同时帧与帧之间相同的图像块可以丢弃,加速训练速度,这对于视频特别有意义。当我们把一个视频或图像分解成多个patch时,实际上就是把连续的视觉信息转换成了一系列可以被模型处理的离散单元 。patch的数量和布局可以调整,这样就可以适应不同的分别率、长宽比的视频,不同分辨率下的蝴蝶飞行都是同一个patch特征。类似于通过不同token的组合我们可以通过LLM学习语言的复杂性,可以通过patch的组合来学习视频的复杂性组合。
3、sora的训练过程:
1)视频:原始视频转换为序列站-->压缩提炼成space time latent-->拆分为space time patches-->序列化为一维向量-->diffusion扩散模型进行学习
2)文本:引入Dalle3中视频描述技术,实质是GTP4V,将视频标题简单的文本描述按照一定格式进行细化描述,包括视频的主要内容,角色运动,镜头运动,环境,背景,细节,风格等等。
3)将视频的space time patch向量 +细化的文本进入diffusion进行训练。在diffusion模型中sora将原先简单的unet架构变成transformer架构
runway/pika/midjourney是基于diffusion model,openAI是基于difussion transformer 模型
热门话题 · · · · · · ( 去话题广场 )
- 独自在外,你遇到过怎样的奇葩房东? 17.9万次浏览
- 是什么支撑你干着薪资待遇并不怎么满意的工作? 95.2万次浏览
- 对你意义最显著一本理论研究著作 6.7万次浏览
- 生活中突然意识到的冷知识 102.5万次浏览
- 我家的小院子 76.4万次浏览
- 你心目中的香港TVB剧十佳 21.0万次浏览