【Datawhale组队学习:Sora原理与技术实战】AIGC技术基础知识

AIGC是什么

AIGC全称叫做AI generated content,AlGC (Al-Generated Content,人工智能生产内容),是利用AlI自动生产内容的生产方式。

在传统的内容创作领域中,PGC(Professionally-generated Content,专业生成内容)和UGC(User-generated Content,用户内容生产)作为两大主流模式,共同构成了内容生产的核心来源。然而,随着技术进步,AIGC(人工智能生成内容)的兴起正在引领一场革命,它不仅让人工智能具备了对世界的感知与理解能力,更进一步地将其延伸至创造性生成层面。这一转变预示着AIGC将在未来深刻影响并重塑各行业内容生产的范式和格局。
AIGC的发展依赖如下三个要素:

  • 更强,同时也是更便宜的算力

  • 更多的高质量数据集,包括文本、语音、视觉和多模态

  • 模型技术的发展,更具有扩展性和更好的模型,比如Transformers和diffusion model

所以AIGC能做的,且做得比较好的领域越来越多,包括:

  • 自然语言领域(比如代码生成、论文写作、诗歌对联、剧本创作,agent智能体)

  • 语音领域(比如语音合成,音乐生成,个性化声音生成),

  • 视觉领域的图像生成(stable diffusion, mid-journey)、以及最近也发展很迅速的视频生成(sora)。

这些都是属于AIGC的范畴,而且正快速的改变着我们的生产力工具、改变着我们的生活。本节课主要关注在视觉领域的AIGC,即图像生成和视频生成。

在这里插入图片描述

AIGC技术的发展

在这里插入图片描述

文生图

在这里插入图片描述
根据文生图的发展路线,我们把文生图的发展历程发展成如下4个阶段:

  • 基于生成对抗网络的(GAN)模型

  • 基于自回归(Autoregressive)模型

  • 基于扩散(diffusion)模型

  • 基于Transformers的扩散(diffusion)模型

基于生成对抗网络的(GAN)模型

在这里插入图片描述
2014 年,Ian J.Goodfellow 提出了 GAN,它是由一个生成器G和一个判别器D组成。生成网络产生「假」数据,并试图欺骗判别网络;训练的时候,判别网络对生成数据进行真伪鉴别,试图正确识别所有「假」数据。在训练迭代的过程中,两个网络持续地进化和对抗,直到达到平衡状态,判别网络无法再识别「假」数据。

推理的时候,只要保留生成器G就行了,输入一个随机噪声vector,生成一张图像。

右侧是一个经典的AttnGAN的框架,是一个引入了attention结构(使得图片生成局部能够和文本描述更加匹配)、并且从粗粒度到细粒度coarse to fine进行生成的框架,在当时还是取得了不错的生成效果。

GAN的优势是在一些窄分布(比如人脸)数据集上效果很好,采样速度快,方便嵌入到一些实时应用里面去。

缺点是比较难训练、不稳定,而且有Mode Collapse(模式崩塌)等问题。

基于自回归方式的模型

在这里插入图片描述
VQGAN是将类似的思路拓展到了视觉生成领域。他主要包括两个步骤:

第一步:将原始的RGB图像通过vqvae或者vqgan 离散压缩成一系列的 视觉code,这些视觉code 可以利用一个训练得到的decoder恢复出原始的图像信息,当然会损失一些细节,但整体恢复质量还是OK的,特别是加了GAN loss的。

第二步:利用transformer或者GPT,来按照一定的顺序,逐个的去预测每个视觉code,当所有code都预测完了之后,就可以用第一步训练好的Decoder来生成对应的图像。因为每个code预测过程是有随机采样的,因此可以生成多样性比较高的不同图像。

这个方法比较出名的就是VQGAN,还有就是openai的dalle。

基于扩散(diffusion)方式的模型

扩散模型也就是我们目前大多数文生图模型所采用的技术。

扩散模型也分为两个过程,一个是前向过程,通过向原始数据不断加入高斯噪声来破坏训练数据,最终加噪声到一定步数之后,原始数据信息就完全被破坏,无限接近与一个纯噪声。另外一个过程是反向过程,通过深度网络来去噪,来学习恢复数据。

训练完成之后,我们可以通过输入随机噪声,传递给去噪过程来生成数据。这就是DDPM的基本原理。

图中是DALLE2的一个基本框架,他的整个pipeline稍微有些复杂,输入文本,经过一个多模态的CLIP模型的文本编码器,

学习一个prior网络,生成clip 图像编码,然后decoder到6464小图,再经过两个超分网络到256256,再到1024*1024。
在这里插入图片描述

基于Transformers的架构的Diffusion模型

基于Transformers的架构的Diffusion模型设计了一个简单而通用的基于Vision Transformers(ViT)的架构(U-ViT),替换了latent diffusion model中的U-Net部分中的卷积神经网络(CNN),用于diffusion模型的图像生成任务。

遵循Transformers的设计方法,这类方式将包括时间、条件和噪声图像patches在内的所有输入都视作为token。

在这里插入图片描述
推理链路:

第一步:输入一张256x256x3的图片,经过Encoder后得到对应的latent,压缩比为8,latent space推理时输入32x32x4的噪声,将latentspace的输入token化,图片使用patchify,label和timestep使用embedding。

第二步:结合当前的step t , 输入label y, 经过N个Dit Block通过 MLP进行输出,得到输出的噪声以及对应的协方差矩阵

第三步:经过T个step采样,得到32x32x4的降噪后的latent

在训练时,需要使得去躁后的latent和第一步得到的latent尽可能一致

视频生成技术发展

基于Stable Diffusion视频生成:将视觉空间的数据映射到隐空间中,通过输入文本(或其他条件)在隐空间训练扩散模型,与图像不同的是地方在于Unet需具备时序编码的能力。
在这里插入图片描述
通常的视频生成的任务有两种:文生视频和图生视频
在这里插入图片描述

参考资料

教程:
https://github.com/datawhalechina/sora-tutorial/blob/main/docs/chapter2/chapter2_1.md
视频录像:
https://www.bilibili.com/video/BV1ZS421A7sR/?vd_source=79686b80ce91d6c3977b2e269db5e8b8

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【论文阅读】Usenix Security 2023 你看不见我:对基于激光雷达的自动驾驶汽车驾驶框架的物理移除攻击

文章目录 一.论文信息二.论文内容1.摘要2.引言3.作者贡献4.主要图表5.结论 一.论文信息 论文题目: You Can’t See Me: Physical Removal Attacks on LiDAR-based Autonomous Vehicles Driving Frameworks(你看不见我:对基于激光雷达的自动驾驶汽车驾驶…

如何将一个远程git的所有分支推到另一个远程分支上

如何将一个远程git的所有分支推到另一个远程分支上 最初有 12 个分支 执行 git remote add 远程名 远程git地址 git push 远程名 --tags "refs/remotes/origin/*:refs/heads/*"之后就变成 26个分支

基于springboot+vue的医院挂号就诊系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

自学也能高效备考2025年AMC8数学竞赛:2000-2024年AMC8真题解析

如何通过自学提高小学和初中数学成绩?现在小学和初中有哪些可以参加的数学竞赛?有没有难度适中、兼具趣味性的数学竞赛?现在参与人数较多的小学、初中数学有哪些?...如果你也在关注以上问题,不妨看看AMC8美国数学竞赛&…

Jmeter 安装

JMeter是Java的框架,因此在安装Jmeter前需要先安装JDK,此处安装以Windows版为例 1. 安装jdk:Java Downloads | Oracle 安装完成后设置环境变量 将环境变量JAVA_HOME设置为 C:\Program Files\Java\jdk1.7.0_25 在系统变量Path中添加 C:\Pro…

【数据结构】知识点一:线性表之顺序表

内容导航 一、什么是线性表?二、什么是顺序表?1、顺序表的概念2、顺序表的结构a. 静态顺序表:使用定长数组存储元素。b. 动态顺序表:使用动态开辟的数组存储。 三、顺序表的接口实现精讲1.接口一:打印数据2.接口二&…

肿瘤相关巨噬细胞TAM综述及研究学习②

​​​​​​​肿瘤浸润性巨噬细胞的复杂作用(综述浏览)-CSDN博客 TAM 支持癌细胞的生长和转移,并对 TME 的适应性免疫细胞产生免疫抑制作用。(上一篇学习文献) 目录 综述① TAM在肿瘤中的作用 M1与 M2 TAM作用 …

图论 - 最小生成树(Prime、Kruskal)

文章目录 前言Part 1:Prim算法求最小生成树1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 Part 2:Kruskal算法求最小生成树1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 前言 本篇博客介绍两种求最小生成树的方法&#xff…

Linux笔记--Vim编辑器

一、vi和vim vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于Windows系统下的记事本。很多软件默认使用vi作为他们编辑的接口。vim是进阶版的vi,vim可以视为一种程序编辑器。 复制/etc/passwd文件到自己的目录下(不要直接修改letc/passwd),后面使用…

k8s资源管理之声明式管理方式

1 声明式管理方式 1.1 声明式管理方式支持的格式 JSON 格式:主要用于 api 接口之间消息的传递 YAML 格式:用于配置和管理,YAML 是一种简洁的非标记性语言,内容格式人性化,较易读 1.2 YAML 语法格式: ●…

k8s 集群调度,标签,亲和性和反亲和性,污点和容忍,pod启动状态 排错详解

目录 pod启动创建过程 kubelet持续监听的原因 调度概念 调度约束 调度过程 优点 原理 优先级选项 示例 指定调度节点 标签基本操作 获取标签帮助 添加标签(Add Labels): 更新标签(Update Labels) 删除标…

基于springboot+vue的中国陕西民俗网

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

家政按摩上门服务小程序搭建

家政按摩上门服务小程序支持技师入驻申请,用户可以通过在线下单预约家政服务,并根据距离、价格、销量好评度等条件进行筛选和选择。用户可以选择技师进行预约,并填写自己的服务地点和时间,享受上门服务。同时,技师也可…

C++_数据类型_整形

数据类型 C规定在创建一个变量或常量时,必须要指定出相应得数据类型,否则无法给变量分配内存 整形 作用 整形变量表示的是整数型的数据 方式 越界

攻防世界-get_post

题目信息 相关知识 -G:表示GET请求,缺省POST -d参数用于发送 POST 请求的数据体 使用-d参数以后,HTTP 请求会自动加上标头Content-Type : application/x-www-form-urlencoded。并且会自动将请求转为 POST 方法,因此可以省略-X PO…

跨站脚本攻击xss-labs(1-20)靶机练手

目录 一、跨站脚本攻击(XSS) 1.1 漏洞简介 1.2:类型 1.3 XSS危害 1.4XSS防御规则 二、环境搭建 三、xsst通关记录 Level 1:文本解析为 HTML Level 2:htmlspecialchars;input 标签 value 注入 定义和用法 字符过滤绕过 …

pytorch基础2-数据集与归一化

专题链接:https://blog.csdn.net/qq_33345365/category_12591348.html 本教程翻译自微软教程:https://learn.microsoft.com/en-us/training/paths/pytorch-fundamentals/ 初次编辑:2024/3/2;最后编辑:2024/3/2 本教程…

2024-03-01(金融AI行业与大数据生态圈)

1.金融这一块的算法,不像推荐系统,图像等领域,金融领域的算法都比较成熟了。现在来说门槛低,属于初期阶段,上升期。 2.反欺诈的数据标签比较少,有一种“标签染色”的方法来做反欺诈模型的标签。 3.常用反…

什么是Vue指令?请列举一些常见的Vue指令以及它们的用法

Vue.js 是一款流行的前端框架,它的指令(Directives)是 Vue.js 提供的一种特殊属性,用于在模板中对 DOM 元素进行直接操作。指令通常是以 v- 开头的特殊属性,用于响应式地将数据绑定到 DOM 元素上。 在 Vue 中&#xf…

【NTN 卫星通信】卫星和无人机配合的应用场景

1 场景概述 卫星接入网是一种有潜力的技术,可以为地面覆盖差地区的用户提供无处不在的网络服务。然而,卫星覆盖范围对于位于考古或采矿地点内部/被茂密森林覆盖的村庄/山谷/靠近山丘或大型建筑物的用户可能很稀疏。因此,涉及卫星接入和无人驾…