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

生成模型初认识

生成模型初认识

参考学习资料:李宏毅-机器学习

以下为课程过程中的简易笔记

生成模型

  • 为什么要用生成模型?——创造力:同一个输入,产生不同的输出(distribution),有一定概率发生某种随机事件
  • 输入:X;从简单分布中随机sample出的向量z;
  • 输出:distribution

AE

自编码器

原始输入特征是有大量冗余的,要重建出原图不需要那么多特征,只要用low dim的中间特征就可以了

image-20241009115046481

VAE

  • 在AE的decoder的输入中增加噪声,噪声的方差是 e σ e^\sigma eσ,其中 σ \sigma σ也是由神经网络学习到的
  • 因为原始的AE不存在噪声,它的预测是不可理解的,满月和弦月的内插不一定得到比弦月满,比满月弦;但是VAE中加了噪声后,因为噪声的存在,就要求满月和弦月之间内插的点既和满月接近,又和弦月接近,因此就会产生比弦月满,比满月弦的结果
  • VAE和GAN不一样,VAE说白了就是要不断地重建出训练数据集中有的样本,最多是训练集中样本的组合,是一个不断提高模仿力的过程,要产生和训练集中的样本相像的图像,最好能一模一样,这样重建错误就会最小;但是GAN是要生成以假乱真的图片,产生的新图像并不是要和训练集图片一模一样,而是要产生图像的分布和训练集图像的分布尽可能接近

在这里插入图片描述
image-20241009111444553

GAN

Unconditional GAN

image-20241009113439067

无条件生成,只输入从简单分布sample的向量z

  • 问:Divergence用于衡量2个分布的距离,然而 P G P_G PG P D a t a P_{Data} PData的formulation(公式)都不知道,怎么计算Divergence?

  • GAN:只要能分别从 P G P_G PG P D a t a P_{Data} PData两个分布中进行sample(也就是分别从Generator产生的数据和收集到的真实训练数据中做sample),就可以利用Discriminator估算出2者的Divergence

image-20241009095701250

公式理解:

  • 要找一个G,让红框里面的值越小越好(代表 P G P_G PG P D a t a P_{Data} PData两个分布的Divergence越小,两个分布越像);
  • 然而由于两个分布的Divergence的公式并不能直接计算,所以把 P G P_G PG P D a t a P_{Data} PData两个分布的Divergence转化为另一个优化问题,通过引入一个Discriminator,在Generator给定的情况下,想要找到一个D,让V(G,D)越大越好

Conditional GAN

有条件生成

image-20241009113507882

image-20241009114353637

Latent Diffusion Model

主要创新:

Difussion Model是在pixel space进行加噪和去噪,训练成本高昂,Latent Diffuion Model将加噪和去噪都搬到了latent sapce,训练成本减少,能接受的condition也变多了

组成部分:

  1. Autoencoder:包括encoder和decoder
  2. Denoiser:将encoder的输出加噪后,还原成decoder的输入
  3. Conditioning Encoder:可以是任意产生一个序列tokens的encoder

输出加噪后,还原成decoder的输入
3. Conditioning Encoder:可以是任意产生一个序列tokens的encoder

3个部分可以分开训

http://www.lryc.cn/news/463631.html

相关文章:

  • Java中的一些名词概念
  • 沈阳乐晟睿浩科技有限公司:引领抖音小店迈向新纪元
  • [图形学]蒙特卡洛积分方法介绍及其方差计算
  • 智慧社区Web解决方案:Spring Boot框架探索
  • 基于预测算法的航班离港延误系统
  • 【汇编语言】寄存器(内存访问)(七)—— CPU提供的栈机制
  • webAPI中的节点操作、高级事件
  • C++内存对齐机制简介
  • java集合进阶篇-《List集合》
  • FPGA图像处理之均值滤波
  • 高等数学 6.2 定积分在几何学上的应用
  • 缓存常见问题:缓存穿透、雪崩、击穿及解决方案分析
  • C++:拷贝构造
  • BGP(边界网关协议)
  • Spring 概念汇总
  • 快速在找到函数的实体的方法
  • 05 django管理系统 - 部门管理 - 修改部门
  • C++初阶——入门
  • Java基于SSM微信小程序物流仓库管理系统设计与实现(源码+lw+数据库+讲解等)
  • 82.【C语言】数据结构之顺序表的初始化和销毁
  • java-推荐一个控制台输出颜色ANSI字符的类
  • 关于定义结构体别名时 是否加*
  • 成语积累学习
  • 基于Java的茶叶商城设计与实现(源码+定制+开发)茶叶电商系统开发、茶叶电商平台开发、茶叶在线销售平台设计与开发
  • 桥接、NAT和仅主机三种网络模式对虚拟机IP地址分配的影响
  • 音乐播放器-0.专栏介绍​
  • 单月变现3W!AI助力沙雕图文爆红小绿书,12篇阅读量破10万+!
  • C语言复习第4章 数组
  • 大数据研究实训室建设方案
  • Unity3D 观察者模式