花生壳网站无法登陆,需要哪些技术,手机怎么建立网站,双语版网站引导页文章目录 1.1 扩散模型的原理生成模型扩散过程DDPM的扩散过程前向过程反向过程优化目标 1.2 扩散模型的发展开始扩散#xff1a;DDPM加速生成#xff1a;采样器刷新记录#xff1a;基于CLIP的多模态图像生成引爆网络#xff1a;基于CLIP的多模态图像生成再次“出圈”#… 文章目录 1.1 扩散模型的原理生成模型扩散过程DDPM的扩散过程前向过程反向过程优化目标 1.2 扩散模型的发展开始扩散DDPM加速生成采样器刷新记录基于CLIP的多模态图像生成引爆网络基于CLIP的多模态图像生成再次“出圈”大模型的“再学习”方法——DreamBooth、LoRA和ControlNet开启AI作画时代众多商业公司提出成熟的图像生成解决方案 1.3 扩散模型的应用计算机视觉时序数据预测自然语言基于文本的多模态AI基础科学 参考资料 扩散模型(Diffusion Model)基于扩散思想的深度学习生成模型 生成模型举例 VAEVariational Auto-Encoder变分自编码器 GANGenerative Adversarial Net生成对抗网络 学习内容 扩散模型的原理扩散模型是如何“扩散” 扩散模型的发展扩散模型在图像生成方面的技术迭代与生态发展历程 扩散模型的应用扩散模型除了图像生成领域之外的其他应用 1.1 扩散模型的原理
扩散模型主要包括前向扩散和反向扩散两个过程
生成模型
目标 根据给定的样本即训练数据生成新样本 基本思想 假设给定的训练数据 X X X服从某种真实分布 p ( x ) p(x) p(x)生成模型则估计训练数据的真实分布假设为 q ( x ) q(x) q(x)再通过最大似然思想在使得给定训练数据是采样自 q ( x ) q(x) q(x)的概率尽可能大的过程中对估计分布 q ( x ) q(x) q(x)进行优化 总结来说生成模型就是在对训练数据的分布进行建模
扩散过程
初始的简单分布通过扩散过程来建模一个复杂的分布 一滴墨水在水中扩散的过程 在扩散开始之前这滴墨水会在水中的某个地方形成一个大的斑点即墨水分子的初始状态其分布是很复杂的建模是很困难的 随着扩散过程的进行这滴墨水随着时间的推移逐步扩散到水中墨水分子的概率分布将变得更加简单和均匀即容易建模 于是我们思考将这个扩散过程反过来先对扩散完成时的墨水分子的概率分布进行建模然后通过一个反向扩散过程得到墨水分子的初始概率分布 公认最早的扩散模型DDPM(Denoising Diffusion Probabilistic Model) 为了方便建模扩散模型仍需做出很多假设 DDPM做出的假设
假设扩散过程是马尔可夫过程即每一个时间步状态的概率分布仅由上一个时间步状态的概率分布加上当前时间步的高斯噪声得到扩散过程的逆过程是高斯分布等
DDPM的扩散过程
分为前向过程和反向过程两个部分
前向过程
给数据添加噪声的过程即上图中从右到左的过程 前向加噪过程被分为离散的多个时间步T在每一个时间步t给上一个时间步t−1的数据 x t − 1 x_{t−1} xt−1添加高斯噪声从而生成带有噪声简称“带噪”的数据 x t x_t xt同时数据 x t x_t xt也会被送入下一个时间步t1以继续添加噪声 关于噪声的选取 噪声的方差是由一个位于区间(0,1)的固定值βt确定的 噪声的均值则由固定值βt和当前时刻“带噪”的数据分布确定 根据马尔可夫链的性质训练数据经过这T个时间步的迭代、加噪过程后将服从纯随机噪声分布 公式表达 从时间步t−1到时间步t的单步扩散加噪过程 最终的噪声分布
反向过程
“去噪”的过程即从随机噪声中迭代恢复出清晰数据的过程 根据DDPM的假设待去噪数据为采样自高斯噪声 x t ∼ N ( 0 , I ) x_t\sim N(0,I) xt∼N(0,I)的一个随机噪声 去噪目标为原始数据 x 0 x_0 x0 去噪实现需要有一个每一步的图像分布状态转移的马尔可夫链即我们需要的扩散模型 数学表达式 从时间步t到时间步t−1的单步反向“去噪”过程 均值表达式 方差表达式
优化目标
噪声残差即要求后向过程中预测的噪声分布与前向过程中施加的噪声分布之间的“距离”最小则能达到后向去噪过程得到的 x 0 ′ x_0 x0′与前向加噪的原始数据 x 0 x_0 x0最接近 用VAE类比 扩散模型可视为一个包含T个隐变量的模型即更深层次的VAE VAE的损失函数可以使用变分推断来得到变分下界(variational lower bound) 数学表达式 分析可知使用的是MSE损失函数
1.2 扩散模型的发展
与2D图像生成相关的扩散模型的发展历程 发展历程
开始扩散DDPM
于2020年提出的DDPM模型Denoising Diffusion Probabilistic Models首次将“去噪”扩散概率模型应用到图像生成任务中做出的贡献包括扩散过程定义、噪声分布假设、马尔可夫链计算、随机微分方程求解和损失函数表征等
加速生成采样器
早期的扩散模型由于采样器所控制的图像生成阶段需要迭代多次生成速度非常慢 当时亟待解决的问题是如何在保证生成质量的前提下加快采样 重要突破 论文“Score-Based Generative Modeling through Stochastic Differential Equations”证明了DDPM的采样过程是更普遍的随机微分方程这为加速采样提供了一个重要的解决思路——更离散化地求解该随机微分方程即可缩短采样所需步骤 加速的采样器举例 Euler、SDE、DPM-Solver和Karras等 举个例子
刷新记录基于CLIP的多模态图像生成
由于早期的扩散模型在所生成图像的质量和稳定性上并不如经典的生成模型GAN扩散模型并没有被广泛应用到图像生成领域 重要突破 OpenAI在论文“Diffusion Models Beat GANs on Image Synthesis”中介绍了在扩散过程中使用显式分类器进行引导的方法这使得扩散模型在图像生成领域打败了GAN
引爆网络基于CLIP的多模态图像生成
CLIP介绍 连接文本和图像的模型将同一语义的文字和图片转换到同一个隐空间中 将CLIP技术和扩散模型结合引起了基于文字引导的文字生成图像扩散模型的快速发展 文生图模型举例 OpenAI的GLIDE、DALL-E、DALL-E 2 Google的Imagen以及开源的Stable Diffusion
再次“出圈”大模型的“再学习”方法——DreamBooth、LoRA和ControlNet
“再学习”方法的原因 现在的图像生成扩散模型都是大规模的、预训练的类比微调之于大模型在使用扩散模型的图像生成领域有了多种“再学习”方法 常见“再学习”方法 针对不同的任务有这样三种再学习方法——DreamBooth、LoRA和ControlNet DreamBooth方法 实现使用现有模型再学习到指定主体图像的功能即在训练过程中将指定主体图像与特定的文本标识绑定 举个例子 在这个例子中训练过程中将“小狗”与输入图像进行绑定从而通过文字提示生成此特定小狗在不同场景下的图像 LoRA方法 实现使用现有模型再学习到自己指定数据集风格或人物的功能并且还能够将其融入现有的图像生成中 如Facechain模型中通过提供人物数据集并选择不同的风格数据集使用LoRA方法得到人物写真图像 Hugging Face提供了训练LoRA的UI界面 ControlNet方法 再学习到更多模态的信息并利用分割图、边缘图等功能更精细地控制图像的生成
开启AI作画时代众多商业公司提出成熟的图像生成解决方案
图像生成解决方案举例 Midjourney的Discord频道主页输入提示语来生成图像、跟全世界的用户一起分享和探讨图像生成的细节 Stability AI的图像生成工具箱DreamStudio使用提示语来编辑图像、将其SDK嵌入自己的应用或者作为Photoshop插件使用 Photoshop基于扩散模型的图像编辑工具库Adobe Firefly 百度公司文心一格AI创作平台 阿里巴巴达摩院通义文生图大模型 退格网络Tiamat图像生成工具 北京毛线球科技有限公司6pen Art图像生成APP将图像生成带到手机端
1.3 扩散模型的应用
扩散模型最常见、最成熟的应用就是完成图像生成任务 但扩散模型在其他领域仍有极大的应用前景这是不容忽视的 包括但不限于以下领域的应用
计算机视觉 计算机视觉包括2D视觉和3D视觉两个方面这里专注于扩散模型在2D图像领域的应用 图像分割与目标检测 Meta AI的SegDiff分割扩散模型可以生成分割Mask图 检测扩散模型DiffusionDet可以端到端地从随机矩形框逐步生成检测框 存在的问题生成速度慢难以应用于一些需要实时检测的场景
图像超分辨率 图像超分辨率是一项能够将低分辨率图像重建为高分辨率图像同时保证图像布局连贯的技术 CDMCascaded Diffusion Model级联扩散模型通过采用串联多个扩散模型的方式分级式地逐步放大分辨率实现了图像超分辨率论文Cascaded Diffusion Models for High Fidelity Image Generation 图像修复、翻译和编辑 图像修复、图像翻译和图像编辑是对图像的部分或全部区域执行的操作包括缺失部分修补、风格迁移、内容替换等 Palette一个集成了图像修复、图像翻译和图像编辑等功能的扩散模型它可以在一个模型中完成不同的图像级任务论文Palette: Image-to-Imge Diffusion Models.
时序数据预测 时序数据预测旨在根据历史观测数据预测未来可能出现的数据如空气温度预测、股票价格预测、销售与产能预测等。时序数据可以视为生成任务因而扩散模型可以发挥作用 TimeGrad首个在多元概率时序数据预测任务中加入扩散思想的自回归模型。为了将扩散过程添加到历史数据中TimeGrad首先使用RNNRecurrent Neural Network循环神经网络处理历史数据并保存到隐空间中然后对历史数据添加噪声以实现扩散过程由此处理数千维度的多元数据并完成预测任务论文Autoregressive Denoising Diffusion Models for Multivariate Probabilistic Time Series Forcasting.
自然语言 扩散模型用于语言类的生成任务将自然语言类的句子分词转换为词向量后使用扩散模型学习自然语言的语句生成进而完成nlp中更复杂的任务 Diffusion-LM是首个将扩散模型应用到自然语言领域的扩散语言模型解决了将连续的扩散过程应用到离散的非连续化文本的问题从而实现语言类的高细粒度可控生成。
基于文本的多模态 多模态信息多种数据类型的信息包括文本、图像、音/视频、3D物体等。在LLM不断发展的今天多模态的发展趋势为基于文本和其他模态的交互如文本生成图像、文本生成视频、文本生成3D等 文本生成图像 文生图是扩散模型最最流行、最成熟的应用 input为文本提示output为对应图片 模型举例DALLE-2、Imagen以及完全开源的Stable Diffusion等
文本生成视频 将输入的文本提示语转换为相应的视频流其难点在于视频的前后帧需要保持极佳的连贯性 模型举例Meta AI的Make-A-Video以及能够精细控制视频生成的ControlNet Video等 文本生成3D 将输入的文本转换为相应的3D物体其不同在于3D物体有多种表征方式如点云、网格、NeRF等 模型举例 DiffRF从文本生成3D辐射场 3DFuse基于二维图像生成对应的3D点云 应用前景室内设计、游戏建模、元宇宙数字人等
AI基础科学
AI for Science SMCDiff创建了一种扩散模型根据给定的模体结构生成多样化的支架蛋白质论文Diffusion Probabilistic Modeling of Prote in Backbones in 3D for the Motif-Scaffolding Problem.“ CDVAE提出了一种扩散晶体变分自编码器模型生成和优化具有固定周期性原子结构的材料论文Crystal Diffusion Variational Autoencoder for Periodic Material Generation.”
参考资料
《扩撒模型从原理到实战》