zoukankan      html  css  js  c++  java
  • 论文笔记之:Semi-Supervised Learning with Generative Adversarial Networks

     

    Semi-Supervised Learning with Generative Adversarial Networks

      

      引言:本文将产生式对抗网络(GAN)拓展到半监督学习,通过强制判别器来输出类别标签。我们在一个数据集上训练一个产生式模型 G 以及 一个判别器 D,输入是N类当中的一个。在训练的时候,D被用于预测输入是属于 N+1的哪一个,这个+1是对应了G的输出。这种方法可以用于创造更加有效的分类器,并且可以比普通的GAN 产生更加高质量的样本。 

      将产生式模型应用于半监督学习并非一个新颖的idea,Kingma et al. 在NIPS 2014 就已经探索过此类方法。此处,我们尝试着去做一些和GANs类似的事情,通过D学习到的feature可以在分类器中重复利用。这个表明了学习到的表示的有用性,但是其有几种不需要的属性:

      1. 首先,通过D学到的表示可以帮助改进C并不奇怪---看起来这个很合理,并且应该是work的。然而,看起来学习好的C可以帮助改善D的性能。

      2. 利用 D 学习到的表示不能同时训练 C 和 G。

     

      本文的motivation就是:如果通过改善 D可以改善C,并且改善 C 可以改进 D(which we know improves G)然后我们可以结合一些反馈循环的优势,所有的3个成分都可以相互迭代的相互促进相互学习。 

      

      受到上述原因的启发,本文的贡献点主要有:

      首先,提出将GANs进行拓展,允许其同时学习一个产生式模型和一个分类器。称为:Semi-Supervised GAN, or SGAN. 

      第二,表明了 SGAN改善了分类性能。  

      第三,表明 SGAN 可以明显的改善产生样本的质量 和 减少训练时间。 

     

      The SGAN Model

      判别器网络 D 在常规的 GAN 输出一个预测概率,表明输入图像是从数据产生器得来的概率。 通常是通过前向反馈网络,后面跟着一个 single sigmoid unit, 但是也可以用一个 softmax output layer with one unit for each of the classes [real, fake]. 一旦这个改进完成,就可以看出,D 会有 N+1 个输出单元,分别对应【class-1, class-2, class-N, fake】。在这种情况下,D 就扮演了 C 的角色,我们称之为 D/C。

     

      网络的训练主要还是 Min-Max 的过程:

     

      

     

     

     

     


      我的感受  

      这个文章左下角有标注:To appear in the Data Efficient Machine Learning workshop at ICML 2016. 篇幅较短,主要是考虑了将 GANs 应用于半监督图像分类的思路。

      考虑了三个成分:产生器 G,判别器 D,分类器 C 。

      从上图中产生的图像来看,效果还是不错的,分类的精度也有提升。 

      看来这种相互促进的网络设计方法,值得我们参考和借鉴。 

      无网络,不对抗!!!

     

      

     

     

  • 相关阅读:
    语料和文本处理
    seq2seq+torch7聊天机器人bug处理
    unity3d inputfield标签控制台打印object
    多种语言tcp编程
    处理json中的空格
    安卓无法访问Azure服务器和微软API
    Xamarin/Unity3d无法访问Azure服务器或者微软API
    unity3d C# soket客户端接受失败
    unity3d之public变量引发错误
    unity3d,java,c#,python,rospy的socket通信测试
  • 原文地址:https://www.cnblogs.com/wangxiaocvpr/p/5805194.html
Copyright © 2011-2022 走看看