当前位置: 首页 > news >正文

碎片笔记|AIGC核心技术综述

前言:AIGC全称为AI-Generated Content,直译为人工智能内容生成。即采用人工智能技术来自动生产内容。AIGC在2022年的爆发,主要是得益于深度学习模型方面的技术创新。不断涌现的生成算法、预训练模型以及多模态等技术的融合引发了AIGC的技术变革,使得AI模型成为了自动化内容生产的“工厂”和“流水线”。下面对AIGC使用的主要模型进行介绍。

目录

  • 一、生成模型
    • 1. 变分自编码器(Variational AutoEncoder,VAE)
    • 2. 生成对抗网络(Generative Adversarial Network,GAN)
    • 3. 流模型(Flow)
    • 4. 扩散模型(Diffusion Model)
    • 5. Transformer
    • 6. Vision Transformer(ViT)
    • 7. GPT系列
  • 二、预训练大模型
  • 三、AIGC相关产品

一、生成模型

1. 变分自编码器(Variational AutoEncoder,VAE)

变分自编码器[1]由Kingma和Welling于2014年提出,与传统的自编码器通过数值方式描述潜空间不同,它以概率方式对潜在空间进行观察。VAE分为编码器与解码器两部分,其中,编码器将原始高维输入数据转换为潜在空间的概率分布描述;解码器从采样的数据进行重建生成新数据。

假设一张人脸图片通过编码器生成了“微笑”、“肤色”、“性别”、“胡须”、“眼镜”、“发色”等多种特征,传统的自编码器对输入图像编码后生成的潜在特征为具体的数值,比如,微笑=0.5,肤色=0.8等,将这些数值送入解码器解码得到与输入接近的图像,即该张人脸的信息已经被存储至网络中,输入此人脸,就会输出一张固定的与该人脸相似的图像。然而,上述方法无法生成多样化的与输入近似的图像,因此,VAE将每个特征都由概率分布来表示,假设“微笑”的取值范围为0~5,“肤色”的取值范围为0~10,在此范围内进行数值采样可得到生成图像的潜在特征表示,同时,通过解码器生成的潜在特征解码得到生成图像。

2. 生成对抗网络(Generative Adversarial Network,GAN)

生成对抗网络[2]于2014年由Ian GoodFellow等人提出,使用零和博弈策略学习,在图像生成中应用广泛。GAN包含两个部分:

  • 生成器:学习生成合理的数据。对于图像生成来说是给定一个向量,生成一张图片。其生成的数据作为判别器的负样本,真实数据作为判别器的负样本。
  • 判别器:判别输入是生成数据还是真实数据。网络输出越接近于0,生成数据可能性越大;反之,真实数据可能性越大。
    生成器与判别器相互对立。在不断迭代训练中,双方能力不断加强,最终的理想结果是:对于生成器生成的数据,判别器无法判别真是假。

3. 流模型(Flow)

流模型[3]于2014年被Yoshua Bengio等人提出,它和VAE、GAN属于同时期的成果。但流模型由于整体偏数学化,加上早期效果没有特别好但计算量特别大,直到OpenAI发布基于流模型的Glow模型[4],关于Flow模型的研究才逐渐被重视。Flow模型的目标是通过直面生成模型的概率计算,找到输入样本的分布。Flow模型的转换通常是可逆的。整体上来说,流模型是为了对复杂的高维数据进行非线性变换,将高维数据映射到潜在空间,产生独立的潜在变量。这个过程是可逆的,即可以从高维数据映射到潜在空间,也可以从潜在空间反过来映射到高维数据。

4. 扩散模型(Diffusion Model)

扩散是受到非平衡热力学的启发,定义一个扩散步骤的马尔科夫链,并逐渐向数据中添加噪声,然后学习逆扩散过程,从噪声中构建出所需的样本。扩散模型[5]的最初设计是用于去除图像中的噪声。随着降噪系统的训练时间越来越长且越来越好,可以从纯噪声作为唯一输入,生成逼真的图片。扩散模型的工作原理是通过添加噪声来破坏训练数据,然后使模型学习如何学去除噪声从而恢复数据。然后,该模型将此去噪过程应用于随机种子以生成逼真的图像。

一个标准的扩散模型分为两个过程:(1)前向扩散:向原图中逐步加入噪声,直到图像成为完全随机噪声;(1)反向扩散:在每个时间步逐步去除预测噪声,从而从高斯噪声中恢复原数据。

Stable diffusion是一个基于Latent Diffusion Models(LDMs)的以文生图模型的实现,因此掌握LDMs,就掌握了Stable Diffusion的原理。为了降低训练扩散模型的算力,LDMs使用一个Autoencoder去学习能尽量表达原始image space的低维空间表达(latent embedding),这样可以大大减少需要的算力。

5. Transformer

Transformer[6]于2017年由谷歌提出,最初用来完成不同语言之间的翻译。其主体包括Encoder与Decoder,前者对源语言进行编码,后者将编码信息转换为目标语言文本。Transformer采用注意力机制对输入数据各部分重要性的不同而分配不同权重,其并行化处理的优势能够使其在更大的数据集训练,加速了GPT等预训练大模型的发展。

6. Vision Transformer(ViT)

ViT[7]于2020年由谷歌团队提出,是将Transformer应用至图像分类任务的成功案例。ViT将图像分为14*14的patch,并对每个patch进行线性变换得到固定长度的向量送入Transformer,后续与标准的Transformer处理方式相同。

7. GPT系列

GPT[8]的全称为Generative Pre-trained Transformer,其结构基于Transformer模型,它能够通过预测单词序列中的下一个单词来生成类似人类的文本。GPT-2[9]和GPT-3[10]相较于GPT主要是在模型规模、训练数据、生成控制和生成质量等方面进行改进。GPT-3.5加入了新的训练方法,包括元学习(Meta Learning)和基于人类反馈的强化学习(Reward Learning from Human Feedback,RLHF)。RLHF技术可以帮助模型从人类反馈中学习,不断提高自己的生成质量。同时,这种技术还可以避免模型生成不合适或有害的内容,保证生成的文本符合人类价值观和道德标准。

ChatGPT与InstructGPT[11]是兄弟模型,它在GPT-3.5的基础上引入了一些新的训练数据和Fine-tuning技术,如对话历史的建模和多轮对话的处理等,以提高模型在对话生成任务中的表现和效果。同时,ChatGPT还采用了一些人工干预和交互式学习的方法,以进一步提高模型的可控性和自然度。

2023年3月,OpenAI推出了GPT-4[12],GPT-4在事实性、可控性和避免超出限制等方面取得了迄今为止最好的结果。

二、预训练大模型

虽然过去各种模型层出不穷,但是生成的内容偏简单且质量不高,远不能够满足现实场景中灵活多变以高质量内容生成的要求。预训练大模型的出现使AIGC发生质变,诸多问题得以解决。大模型在CV/NLP/多模态领域成果颇丰,如CV领域:微软Florence(SwinTransformer),NLP领域:谷歌的Bert&LaMDA&PaLM、OpenAI的GPT-3&ChatGPT,以及多模态领域:OpenAI的CLIP[13]&DALL-E、微软的GLIP以及Stability AI的Stable Diffusion.

三、AIGC相关产品

文本生成:JasperAI、copy.AI、ChatGPT、Bard、AI dungeon、文心一言等;
图像生成:EditGAN,Deepfake,DALL-E 2[14](文生图&图生图)、Imagen[15](文生图)、Midjourney、Stable Diffusion[16](文生图&文图生图),文心一格等;
音频生成:DeepMusic、WaveNet、Deep Voice、MusicAutoBot等;
视频生成:Deepfake,videoGPT,Gliacloud、Make-A-Video、Imagen video等。


参考资料

  1. 万字长文:AIGC技术与应用全解析 - 知乎 (zhihu.com)
  2. 人工智能内容生成(AIGC)白皮书(中国信息通讯研究院&京东探索研究院)
  3. AIGC发展趋势报告2023(腾讯研究院)

参考文献

  1. DP Kingma and Max Welling. Auto-Encoding Variational Bayes. ICLR, 2014.
  2. Ian J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, et al. Generative Adversarial Nets. NIPS, 2014.
  3. Laurent Dinh, David Krueger, Yoshua Bengio. NICE: Non-linear Independent Components Estimation. ICLR (Workshop), 2015.
  4. Diederik P. Kingma and Prafulla Dhariwal. Glow: Generative Flow with Invertible 1x1 Convolutions. NeurIPS, 2018.
  5. Jascha Sohl-Dickstein, Eric A. Weiss, Niru Maheswaranathan, et al. Deep Unsupervised Learning using Nonequilibrium Thermodynamics. ICML 2015: 2256-2265.
  6. Ashish Vaswani, Noam Shazeer, Niki Parmar, et al. Attention Is All You Need. NIPS, 2017.
  7. Alexey Dosovitskiy, Lucas Beyer, Alexander Kolesnikov, et al. An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale. ICLR, 2021.
  8. Radford Alec, Karthik Narasimhan, Tim Salimans, et al. Improving language understanding by generative pre-training. 2018.
  9. Radford Alec, Jeffrey Wu, Rewon Child, et al. Language models are unsupervised multitask learners. OpenAI blog 1, no. 8, 2019.
  10. Brown, Tom, Benjamin Mann, Nick Ryder, et al. Language models are few-shot learners. NIPS, 2020.
  11. Long Ouyang, Jeffrey Wu, Xu Jiang, et al. Training language models to follow instructions with human feedback. NeurIPS, 2022.
  12. https://openai.com/research/gpt-4
  13. Alec Radford, Jong Wook Kim, Chris Hallacy, et al. Learning Transferable Visual Models From Natural Language Supervision. ICML, 2021.
  14. Aditya Ramesh, Prafulla Dhariwal, Alex Nichol, et al. Hierarchical Text-Conditional Image Generation with CLIP Latents. arXiv, 2022.
  15. Chitwan Saharia, William Chan, Saurabh Saxena, et al. Photorealistic Text-to-Image Diffusion Models with Deep Language Understanding. NeurIPS, 2022.
  16. Robin Rombach, Andreas Blattmann, Dominik Lorenz, et al. High-Resolution Image Synthesis with Latent Diffusion Models. CVPR, 2021.

相关文章:

碎片笔记|AIGC核心技术综述

前言:AIGC全称为AI-Generated Content,直译为人工智能内容生成。即采用人工智能技术来自动生产内容。AIGC在2022年的爆发,主要是得益于深度学习模型方面的技术创新。不断涌现的生成算法、预训练模型以及多模态等技术的融合引发了AIGC的技术变…...

28385-2012 印刷机械 锁线机 学习笔记

声明 本文是学习GB-T 28385-2012 印刷机械 锁线机. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本标准规定了锁线机的型式、基本参数、要求、试验方法、检验规则、标志、包装、运输与贮存。 本标准适用于用线将书帖装订成书芯的锁线机。 …...

【大规模 MIMO 检测】基于ADMM的大型MU-MIMO无穷大范数检测研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

MySQL数据库记录的删除操作与特殊字符

在数据库管理中,除了添加和修改记录之外,删除操作也是一个重要的方面。同时特殊字符序列的处理也是必不可少的一步。 本文将深入探讨如何在MySQL数据库中进行表记录的删除操作,以及如何处理特殊字符序列。将使用《三国志》游戏数据作为示例来进行解释。 文章目录 表记录的…...

什么是TypeScript

TypeScript是一个开源的编程语言,它是JavaScript的超集。它允许开发人员编写更具可靠性和高效性的代码,同时提供了强类型支持、类、接口、模块等新的特性。TypeScript的代码可以编译成纯JavaScript代码,可以在任何支持JavaScript的平台上运行…...

[docker]笔记-网络故障处理

1、同事在虚拟机上部署docker,发现电脑无法登录虚拟机了。首先ping测是通的,从我电脑继续进行登录测试发现没问题,初步判断是她电脑网络和虚拟机网络之间连接出错。 2、进行虚拟机登录查看,首先使用route -n命令查看路由&#xf…...

牛客网_HJ1_字符串最后一个单词的长度

HJ1_字符串最后一个单词的长度 原题思路代码运行截图收获 原题 字符串最后一个单词的长度 思路 从最后一个字符开始遍历&#xff0c;遇到第一个空格时的长度即为最后一个单词的长度 代码 #include <iostream> #include <string> using namespace std;int main…...

智算创新,美格智能助力智慧支付加速发展

9月21日&#xff0c;以“智算引领创新未来”为主题的紫光展锐2023泛物联网终端生态论坛在深圳举行。作为紫光展锐重要战略合作伙伴&#xff0c;美格智能标准模组产品线总经理郭强华、高级产品总监刘伟鹏受邀出席论坛。美格智能基于紫光展锐5G、4G、智能SoC、Cat.1 bis等芯片平台…...

常用SQL语法总结

1.库操作 1.1.创建数据库 CREATE DATABASE 语句用来创建一个新的数据库。 语法&#xff1a;CREATE DATABASE DatabaseName; DatabaseName 为数据库名字&#xff0c;它的名字必须是唯一的&#xff0c;不能和其它数据库重名。 1.2.删除数据库 DROP DATABASE语句用来删除已经…...

Promise击鼓传花的游戏

Promise击鼓传花的游戏 Promise系列导航前言一、学习Promise的原因二、揭开击鼓传花游戏的面纱补充小知识 Promise系列导航 1.Promise本质击鼓传花的游戏 2.Promise四式击鼓 3.Promise击鼓传花 4.Promise花落谁家知多少 前言 &#x1f468;‍&#x1f4bb;&#x1f468;‍&…...

蓝桥杯每日一题2023.9.29

蓝桥杯大赛历届真题 - C&C 大学 B 组 - 蓝桥云课 (lanqiao.cn) 题目描述1 题目分析 看见有32位&#xff0c;我们以此为入手点&#xff0c; B代表字节1B 8b b代表位&#xff0c;32位即4个字节 (B) 1KB 1024B 1MB 1024KB (256 * 1024 * 1024) / 4 67108864 故答案…...

Spring Boot的自动装配中的@ConditionalOnBean条件装配注解在Spring启动过程中,是如何保证处理顺序靠后的

前言 为什么Spring Boot条件注解那么多&#xff0c;而标题中是ConditionalOnBean呢&#xff1f; 因为&#xff0c;相比之下我们用的比较多的条件装配注解也就是ConditionalOnClass、ConditionalOnBean了&#xff0c;而ConditionalOnClass对顺序并不敏感&#xff08;说白了就是判…...

玩转数据-大数据-Flink SQL 中的时间属性

一、说明 时间属性是大数据中的一个重要方面&#xff0c;像窗口&#xff08;在 Table API 和 SQL &#xff09;这种基于时间的操作&#xff0c;需要有时间信息。我们可以通过时间属性来更加灵活高效地处理数据&#xff0c;下面我们通过处理时间和事件时间来探讨一下Flink SQL …...

【论文笔记】A Review of Motion Planning for Highway Autonomous Driving

文章目录 I. INTRODUCTIONII. CONSIDERATIONS FOR HIGHWAY MOTION PLANNINGA. TerminologyB. Motion Planning SchemeC. Specificities of Highway DrivingD. Constraints on Highway DrivingE. What Is at Stake in this Paper III. STATE OF THE ARTA. Taxonomy DescriptionB…...

YOLOv8改进算法之添加CA注意力机制

1. CA注意力机制 CA&#xff08;Coordinate Attention&#xff09;注意力机制是一种用于加强深度学习模型对输入数据的空间结构理解的注意力机制。CA 注意力机制的核心思想是引入坐标信息&#xff0c;以便模型可以更好地理解不同位置之间的关系。如下图&#xff1a; 1. 输入特…...

2023年10月腾讯云优惠活动汇总:腾讯云最新优惠、代金券整理

腾讯云作为国内领先的云服务提供商&#xff0c;致力于为用户提供优质、稳定的云服务。为了更好地满足用户需求&#xff0c;腾讯云推出了各种优惠活动。本文将给大家分享腾讯云最新优惠活动&#xff0c;帮助用户充分利用腾讯云提供的优惠。 一、腾讯云优惠券领取【点此领取】 腾…...

BUUCTF reverse wp 65 - 70

[SWPU2019]ReverseMe 反编译的伪码看不明白, 直接动调 这里显示"Please input your flag", 然后接受输入, 再和32进行比较, 应该是flag长度要求32位, 符合要求则跳转到loc_E528EE分支继续执行 动调之后伪码可以读了 int __cdecl main(int argc, const char **arg…...

xorm数据库操作之Join、Union

golang的数据库操作xorm使用起来非常方便&#xff0c;不用再自己写SQl语句&#xff0c;而且xorm自己给我们做了SQL防注入等操作&#xff0c;用起来既方便又安全。此次文章我不会记录xorm的基本操作&#xff0c;我值记录一些特殊用法问题&#xff0c;包括动态创建表单、基于xorm…...

排序:基数排序算法分析

1.算法思想 假设长度为n的线性表中每个结点aj的关键字由d元组 ( k j d − 1 , k j d − 2 , k j d − 3 , . . . , k j 1 , k j 0 ) (k_{j}^{d-1},k_{j}^{d-2},k_{j}^{d-3},... ,k_{j}^{1} ,k_{j}^{0}) (kjd−1​,kjd−2​,kjd−3​,...,kj1​,kj0​)组成&#xff0c; 其中&am…...

用go实现http服务端和请求端

一、概述 本文旨在学习记录下如何用go实现建立一个http服务器&#xff0c;同时构造一个专用格式的http客户端。 二、代码实现 2.1 构造http服务端 1、http服务处理流程 基于HTTP构建的服务标准模型包括两个端&#xff0c;客户端(Client)和服务端(Server)。HTTP 请求从客户端…...

聊聊 Pulsar:Producer 源码解析

一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台&#xff0c;以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中&#xff0c;Producer&#xff08;生产者&#xff09; 是连接客户端应用与消息队列的第一步。生产者…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者

抖音增长新引擎&#xff1a;品融电商&#xff0c;一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中&#xff0c;品牌如何破浪前行&#xff1f;自建团队成本高、效果难控&#xff1b;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例&#xff0c;模拟20个网页的爬取&#xff0c;每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程&#xff1a;允许程序同时执行多个任务&#xff0c;提高IO密集型任务&#xff08;如网络请求&#xff09;的效率…...

分布式增量爬虫实现方案

之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面&#xff0c;避免重复抓取&#xff0c;以节省资源和时间。 在分布式环境下&#xff0c;增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路&#xff1a;将增量判…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中&#xff0c;提示一个依赖外部头文件的cpp源文件需要同步&#xff0c;点…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全&#xff0c;让Comfyui导出的图像不包含工作流信息&#xff0c;导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo&#xff08;推荐&#xff09;​​ 在 save_images 方法中&#xff0c;​​删除或注释掉所有与 metadata …...

五子棋测试用例

一.项目背景 1.1 项目简介 传统棋类文化的推广 五子棋是一种古老的棋类游戏&#xff0c;有着深厚的文化底蕴。通过将五子棋制作成网页游戏&#xff0c;可以让更多的人了解和接触到这一传统棋类文化。无论是国内还是国外的玩家&#xff0c;都可以通过网页五子棋感受到东方棋类…...

若依登录用户名和密码加密

/*** 获取公钥&#xff1a;前端用来密码加密* return*/GetMapping("/getPublicKey")public RSAUtil.RSAKeyPair getPublicKey() {return RSAUtil.rsaKeyPair();}新建RSAUti.Java package com.ruoyi.common.utils;import org.apache.commons.codec.binary.Base64; im…...