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

深度学习16(对抗生成网络:GAN+自动编码器)

GAN

        生成对抗网络(Generative Adversarial Network,简称GAN),主要结构包括一个生成G(Generator)和一个判别器D(Discriminator)。

生成器(Generator):能够输入一个向量,输出需要生成固定大小的像素图像。

判别器(Discriminator):用来判别图片是真的还是假的,输入图片(训练的数据或者生成的数据)
输出为判别图片的标签。

1、定义GAN结构生成数据
(a)状态处于最初始的状态,生成器生成的分布和真实分布区别较大,并且判别器判别出样本的概率不稳定
2、在真实数据上训练nepochs判别器,产生fake(假数据)并训练判别器识别为假
通过多次训练判别器来达到(b)样本状态,此时判别样本区分得非常显著
3、训练生成器达到欺骗判别器的效果

  • 训练生成器之后达到(c)样本状态,此时生成器分布相比之前,逼近了真实样本分布。经过多次反复训练迭代之后。
  • 最终希望能够达到(d)状态,生成样本分布拟合于真实样本分布,并且判别器分辨不出样本是生成的还是真实的。

损失训练:

整个优化我们其实只看做一个部分,
判别器:相当于一个分类器,判断图片的真伪,二分类问题,使用交叉熵损失
对于真实样本:对数预测概率损失,提高预测的概率。


D、G结构:

DG结构是两个网络,特点是能够反向传播可导计算要介绍G、D结构,需要区分不同版本的GAN。
2014年最开始的模型:

  • G、D都是multilayer perceptron(MLP)
  • 缺点:实践证明训练难度大,效果不行

2015:使用卷积神经网络+GAN(DCGAN(Deep ConvolutionalGAN))
改进:

  1. 判别器D中取出pooling,全部变成卷积、生成器G中使用反卷积(下图)
  2. D、G中都增加了BN层
  3. 去除了所有的全连接层
  4. 判别器D中全部使用Leaky ReLU,生成器除了最后输出层使用tanh其它层全换成ReLU

自动编码器

自动编码器有两个方面的应用:

  1. 数据去噪
  2. 可视化而降维

自动编码器是一种数据的压缩算法,一种使用神经网络学习数据值编码的无监督方式

http://www.xdnf.cn/news/1116775.html

相关文章:

  • 跨网络连接不同机器上的虚拟机
  • UNet改进(22):融合CNN与Transformer的医学图像分割新架构
  • 15. JVM调优的参数设置
  • [Linux 入门] Linux 引导过程、系统管理与故障处理全解析
  • word设置多级标题
  • Cursor的使用
  • docker容器高级管理-dockerfile创建镜像
  • 树莓派5-ollama-linux-arm64.tgz 下载
  • OkHttp SSE 完整总结(最终版)
  • cuda编程笔记(7)--多GPU上的CUDA
  • 敦煌藻井配色:姜黄×钴蓝的东方色彩应用手册
  • CVE-2022-0609
  • 用信号量实现进程互斥,进程同步,进程前驱关系(操作系统os)
  • hercules zos 安裝 jdk 8
  • CTFSHOW pwn161 WP
  • 整流电路Multisim电路仿真实验汇总——硬件工程师笔记
  • 使用macvlan实现容器的跨主机通信
  • KL散度:信息差异的量化标尺 | 从概率分布对齐到模型优化的核心度量
  • C++高频知识点(十一)
  • ALB、NLB、CLB 负载均衡深度剖析
  • 开源工具DeepFilterNet:实时语音降噪
  • 更换docker工作目录
  • 06.计算两个日期之间的差值
  • lambdastream深入剖析
  • 【LeetCode100】--- 4.移动零【复习回顾】
  • mmap映射文件
  • 理解 Robots 协议:爬虫该遵守的“游戏规则”
  • HTML 标题标签
  • AI驱动的软件工程(上):人机协同的设计与建模
  • Python 学习之路(十)--常见算法实现原理及解析