Auto-Encoder的补充知识

"本文探讨如何超越基本的Auto-Encoder,通过引入额外的分类器(Discriminator)来优化嵌入表示的适配性和可解释性。一方面,通过Discriminator评估嵌入与原始输入的匹配程度,最小化适配误差LD∗L_D^{*}
摘要由CSDN通过智能技术生成

1. 对Auto-Encoder提出更多的要求

Pytorch实战_图像降维及聚类 中,我已经简单的介绍了 Auto-Encoder 的原理。对于最简单的 Auto-Encoder,我们的要求就是尽量降低 reconstruction loss,也就是还原出来的图片或文章要和原图片或文章尽可能相近。

但是除此之外,我们能不能对Auto-Encoder提出更多的要求呢?答案是肯定的,我们来看一下:

  1. 不仅仅是减低 reconstruction loss
  2. 得到更具有可接受性的 embedding

1.1 要求一

要求一要求我们不仅仅是减低 reconstruction loss,而且要求我们得到的embedding能代表我们原有的图片或文字(就像是写轮眼代表了宇智波一族一样)。我们怎么使得机器做到这一点呢?

从下面这个PPT可以看出,我们需要另外构建一个分类器 Discriminator 来衡量 embedding 和原有图片的适配程度。具体流程是,我们使用参数设置为 θ \theta θ 的 Encoder 将图片进行压缩,并将压缩得到的 embedding 和 图片一同放入Discriminator 进行分类,由 Discriminator 来判断二者是否适配。对于每个 θ \theta θ 来说,我们都会调节 Discriminator 的参数 ϕ \phi ϕ 来使得 Discriminator 的训练误差尽可能的小,我们定义这个误差为 L D ∗ L_D^{*} LD。最终我们应该调节参数 θ \theta θ 使得 L D ∗ L_D^{*} LD 尽可能小。
在这里插入图片描述

1.2 要求二

要求二要求我们得到的 embedding 更加有解释性。通常我们得到的 embedding 看起来都是一团乱麻,就像下面 PPT 右上角的图片一样。我们想要知道 embedding 每一部分都代表了什么信息。如下图所示,在语音训练中,我们得到的 embedding 可能包含了说话者的信息(如:发音习惯等等)以及话语本身中的信息,我们想要将其分开。
在这里插入图片描述
具体该怎么做呢?一个简单自然的想法是,我们训练两个 Encoder,其中一个专门用来提取话本身的信息,另一个用来提取说话人的信息。这有什么用呢?比如我们可以把另一个说话人的信息和话语本身的信息进行结合,实现变声的效果。
在这里插入图片描述
怎么训练这有的 Encoder 呢?一种方式是反向训练 。同样我们创造一个二分类的 Discriminator,这个 Discriminator 的作用是吃进去表示话语本身信息的那一部分 embedding,并判定这是哪个人说的。如果我们的 Encoder 能做到欺骗过 Discriminator,让他分不清到底是哪个人说的,那说明这部分 embedding 中已经不包含说话人的信息了。
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值