一图看懂对抗神经网络中判别器怎么工作的

先梳理问题,后解答

1、对GAN网络总有个疑问,判别器是依据什么进行判别的?依据又由何而来?

      这个问题至关重要,因为“依据”意味着 有标签,人为提供给了神经网络标签,它才能训练好,能够识别想要认识的东西。但是在无标签的聚类中,尚未知标签,又要怎么学习训练呢?
      以鉴别假币为例,人通过学习鉴别假币的种种方法,才能对假币进行识别。按这个逻辑,要想训练GAN,首先通过大量真实标签训练判别器,教会它判别方法,然后固定住判别器,训练生成器。如此吗?

2、接上个问题,“依据”是否是固定不变的?
      浅显的理解中,生成器与判别器是迭代训练的,训练次数越多,生成器生成的数据越“逼真”,判别器判假能力越强大。很明显,生成器在不断学习新的“造价”能力,判别器也在不断提高“判假”能力,此时判假依据肯定不能是固定的了,网络也不能是初始训练完不再更新的那种了。问题又回到了:究竟怎么“判假”的?怎么学习“判假”能力的?

解答:
在这里插入图片描述
上图根据代码理解后绘制,重点在于两个红圈:sharp、counter

首先说明第一点:判别器的“依据”并非提前获得,而且也并不知道真实“依据”。这点理解起来可能会大跌眼镜:都不知道真实“依据”,凭什么判别真与假呢?

注意到输入判别器的共有两项,分别是生成器生成的membership和true label,此时true label并非该样本的真实标签,它仅仅是one hot向量,通过判别器约束membership与one hot向量逼近。意义在于该one hot的作用并非代表了真实类别,而是作为最sharp形态,约束membership也更sharp,从而类别更明显。

仅仅要求生成的membership更sharp,且是随机sharp,就能提高类别精度,这恐怕没有道理,因为one hot是随机生成,无法保证恰好是正确的类别,此时判别器与生成器是割裂的状态,二者没有任何联系,为了使判别器对生成器生成的membership也能奏效,引入了“对抗”部分:将membership从判别器输出结果取负,作为loss对生成器进行bp更新。

至此,两部分作用已添加完成:
1、生成器生成的membership与判别器输出的结果互为相反数,二者形成对抗关系,通过梯度下降寻求较优参数,使membership达到一个较为平衡的结果,我们认为此时已经具有了良好的分类精度,判别器难以继续通过对结果取负数的方式约束更新生成器了,也就是俗称判别器“判不出来真伪”了。
2、判别器引入非真实标签的true label,意在约束membership更sharp,使类别更清晰可辨。

  • 11
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值