对抗神经网络(Adversarial Nets)的介绍[1]

  • 对抗NN简介
  • 概念介绍
  • 对抗名字的由来及对抗过程
  • 对抗NN的模型
  • 对抗NN的模型和训练
  • 判别网络D的最优值
  • 模拟学习高斯分布
  • 对抗NN实验结果
  • 《生成对抗NN》代码的安装与运行
  • 对抗网络相关论文
  • 论文引用

一、对抗NN简介

大牛Ian J. Goodfellow 的2014年的《Generative Adversative Nets》第一次提出了对抗网络模型,短短两年的时间,这个模型在深度学习生成模型领域已经取得了不错的成果。论文提出了一个新的框架,可以利用对抗过程估计生成模型,相比之前的算法,可以认为是在无监督表示学习(Unsuperivised representation learning)上一个突破,现在主要的应用是用其生成自然图片(natural images)。

二、概念介绍

机器学习两个模型——生成模型和判别模型。

  • 生成模型(Generative):学习到的是对于所观察数据的联合分布 比如2-D: p(x,y).
  • 判别模型:学习到的是条件概率分布p(y|x),即学习到的是观察变量x的前提下的非观察变量的分布情况。

    通俗的说,我们想通过生成模型来从数据中学习到分布情况,来生成新的数据。比如从大量的图片中学习,然后生成一张新的Photo.
    而对于判别模型,最经典的应用,比如监督学习,那么对于分类问题,我想知道输入x,输出y的情况,那么y的值可以理解为数据的label。

而其中的对抗神经网络就是一个判别模型(Discriminative, D)和一个生成模型(Generative ,G)的组成的。

三、对抗名字的由来及对抗过程

刚才介绍了对抗网络其实是一个D和一个G组成的,那么G和D之间是如何对抗的呢?
先看以下一个场景:

  • D是银行的Teller
  • G是一个Crook,专门制造假币。

    那么其中的对抗过程就是,对于D来说,不断的学习,来进行真币的判断,G则是不断学习,制造更像真币的假币,来欺骗D,而最后的训练结果则是——D可以很好的区分真假币,但是G制造了“如假包换”的假币,而D分辨不出。

而对于对抗网络来说,D和G都是一个神经网络模型——MLP,那么D(判别模型)的输出是一个常量,这个常量表示“来自真币”的可能性。而对于G的输出则是一组向量,而这个向量表示的就是”假币”。

四、对抗NN的模型

这里写图片描述

图片1

图片1中的Z是G的输入,一般情况下是高斯随机分布生成的数据;其中G的输出是G(z),对于真实的数据,一般都为图片,将分布变量用X来表示。那么对于D的输出则是判断来自X的可能性,是一个常量。

五、对抗NN的训练和优化

对于G来说,要不断的欺

  • 27
    点赞
  • 153
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值