我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的、自己不知道的东西。

本节内容综述

  1. 本节课将补充一些 Auto Encoder 新技术;今天要讲两部分:More than minimizing reconstruction error, More interpretable embedding。
  2. 首先来讨论优化目标:More than minimizing reconstruction error。首先考虑,What is good embedding?将介绍Discriminator的训练方法。还提到Deep InfoMax (DIM)
  3. 对于 Sequential Data 如何做?此时可以做更多的变化。提及了 Skip thought、Quick thought、Contrastive Predictive Coding, CPC。
  4. 接下来讲的 Feature Disentangle 特征分解。训练包含两种思路:Adversarial Training、Designed Network Architecture。语音转换的例子可见李老师学生作品:https://jjery2243542.github.io/voice_conversion_demo/
  5. 最后一部分,关于 Discrete Representation 。如果让 Encoder 的输出是离散的,那么其聚类、提取特征都是容易的。提供了一些文献,其中有些 trick 讲如何训练这种不能微分的网络。还提到了Vector Quantized Variational Auto-encoder (VQVAE)
  6. Sequence as Embedding,做一个 seq2seq2seq auto-encoder 。注意,这里举了一个例子,也是不可微分,使用强化学习进行训练。
  7. 此外,提了一些新研究,如 Tree as Embedding 。

文章目录

  • 本节内容综述
  • 小细节
    • What is good embedding?
    • Sequential Data
      • Skip thought
      • Quick thought
      • Contrastive Predictive Coding, CPC
    • Feature Disentangle
      • Adversarial Training
      • Designed Network Architecture
    • Discrete Representation
      • Easier to interpret or clustering
      • Vector Quantized Variational Auto-encoder (VQVAE)
    • Sequence as Embedding
      • Tree as Embedding

小细节

What is good embedding?

换言之,如何知道 Encoder 的输出,能否很好地表征出输入的特性呢?

因此,我们需要有一个 Discriminator ,用于判断图片与code是否匹配。

如上,因此我们得到了一个分类问题,定义优化目标即为交叉熵。

因此,我们可以得到一种新优化目标,即上图中的LD∗L_D^*LD

如上,其实可以把传统自编码方式理解为 Discriminator 的一种特例。上图中,上下的意思其实是一样的,图中下面这种 Discriminator 构造,得到的分数实际上就是 reconstruction error

此外,在使用 Discriminator 时,其参数 ϕ\phiϕ 与 encoder 的参数 θ\thetaθ 是同时训练的,这用在了 2019 年的文章 Deep InfoMax 中。

Sequential Data

Skip thought

对于一个句子,预测其前一个与后一个句子。

其思想是:两个不同的句子A、B,其前后两个句子如果相同,那么这两个句子A、B应该是相同意义的。

Quick thought


如上,让 Classifier 正确匹配句子与其下一个句子。

Contrastive Predictive Coding, CPC


如上,训练目标是,这个 encoder 输出的 embedding ,可以预测同一个 encoder 对其下几个输入得到的 embedding 。

Feature Disentangle


如上,一个输入可能包含各种资讯:

  • 语音可能包含这个人的音色等等信息;
  • 还可能包括说的内容的信息。


如上,不管用哪种思想,我们都是希望在编码内,将不同的信息分开。

如此,可以进行 Voice Conversion 。

李老师开了个玩笑,来说明变声应用场景。

Adversarial Training


如上,使用对抗训练的方法。让我们希望用于表征内容的那部分编码,输入到音色分类器中,使其尽可能骗过音色分类器。这样其中就不包含音色的信息了。

Designed Network Architecture


如上,此外,还可以训练两个 Encoder ,让其只包含我们想要的信息。另一种思路是,通过设计网络结构,来过滤、分散信息。不详细讲。

Discrete Representation

Easier to interpret or clustering


如图,我们希望 Encoder 输出的向量是离散的数字组成的,这样更方便解释与聚类。

但是怎么训练呢?因为,变成 0-1 编码这部分没法微分。李老师提供了一些tirck:arxiv.org/pdf/16/11.01144.pdf

Vector Quantized Variational Auto-encoder (VQVAE)


如上,我们有一个 Codebook(也是从数据训练出来的),我们得到的编码,与 Coderbook 中的向量对比,选择最像的那个,作为编码。

实际上有什么用呢?比如语音辨识,这个方法会保存一些 Discrete 的信息在编码 Codebook 中,而音色等等信息,将被忽略。

Sequence as Embedding


如上,讲序列进行 embedding 。我们希望这个 embedding 作为 Summary ,人能看懂,则需要进行两部分训练:

  • 首先,这个 Summary 可以通过 Decoder 还原回以前的文章;
  • 其次,这个 Summary 要能骗过 Discriminator ,让 Discriminator 觉得是人写的。

但是,这也没法微分。

因此,使用 RL 来训练。

正确的结果如上。


错误的结果如上。

Tree as Embedding

【李宏毅2020 ML/DL】P62-65 More about Auto-encoder相关推荐

  1. 【李宏毅2020 ML/DL】P1 introduction

    [李宏毅2020 ML/DL]P1 introduction 本节主要介绍了 DL 的15个作业 英文大意 Regression: 回归分析 Classification: 分类 RNN: 循环神经网 ...

  2. 【李宏毅2020 ML/DL】P86-87 More about Domain Adaptation

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 本节内容综述 本节课由助教 Chao Brian 讲解. 首先讲解些领域适配的基础内容,包括名词.定义等. 接 ...

  3. 【李宏毅2020 ML/DL】P59 Unsupervised Learning - Auto-encoder

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐):https://github.com/Sakura-gh/ML-note ...

  4. 【李宏毅2020 ML/DL】P58 Unsupervised Learning - Neighbor Embedding | LLE, t-SNE

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐):https://github.com/Sakura-gh/ML-note ...

  5. 【李宏毅2020 ML/DL】P15 Why Deep-

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐): https://github.com/Sakura-gh/ML-not ...

  6. 【李宏毅2020 ML/DL】P14 Tips for training DNN | 激活函数、Maxout、正则、剪枝 Dropout

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐): https://github.com/Sakura-gh/ML-not ...

  7. 李宏毅svm_李宏毅2020 ML/DL补充Structured Learning Structured SVM

    李宏毅2020 ML/DL补充Structured Learning Structured SVM [李宏毅2020 ML/DL]补充:Structured Learning: Structured ...

  8. 【李宏毅2020 ML/DL】P81 Generative Adversarial Network | Intelligent Photo Editing

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 这是我的李宏毅老师 GAN 系列第8篇笔记,GAN 系列: 1:Basic Idea 2:Conditiona ...

  9. 【李宏毅2020 ML/DL】P60-61 Unsupervised Learning - Deep Generative Model

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐):https://github.com/Sakura-gh/ML-note ...

最新文章

  1. php7.3 安装详解,php7.3.20以及常用拓展安装
  2. 插件框架Extensible Framework for Delphi
  3. hdoj1087 (DP--LIS)
  4. 怎么在搭建Android开发环境?
  5. 【自考总结】寒冬里的温暖
  6. python中math函数_Python math模块 数学函数教程
  7. SQLSERVER 函数大全
  8. 封装和参数调用(格式修改)
  9. LINUX下载编译sqlite-jdbc(支持mips64el/loongarch64的jar包下载)
  10. 科学计算与可视化python_Python科学计算和可视化
  11. 手机日志抓取工具及注意事项
  12. DMS - 简介 Driver Monitor System
  13. 用布尔代数简化下列各逻辑表达式
  14. 互联网+大赛作品_“颂中国力量 绘美好梦想”全市中小学生互联网+书画大赛作品展示(四)...
  15. 怎么样去申请免费的云主机
  16. 小酌重构系列[10]——分离职责
  17. 选修课《创新创业执行力》第一次课有感
  18. 细数一对一社交源码调和延时卡顿问题的小技巧
  19. Daily Life
  20. uni-app封装axios

热门文章

  1. 酷派手机android版本,酷派大神F2的手机系统是什么?能升级安卓4.3吗?
  2. 【PostgreSQL-9.6.3】extract函数
  3. 【Oracle】恢复临时表空间数据文件
  4. springmvc的控制器是不是单例模式,如果是,有什么问题,怎么解决?
  5. BeyondCompare3 提示许可证密钥已被撤销解决方法
  6. NFS客户端挂载目录后无写入权限的解决方案
  7. 关于centos启动报错:Failed to start Crash recovery kernel arming的解决方案
  8. MySQL中 Data truncated for column ‘xxx‘解决方法
  9. 如何在映像更改后升级docker容器
  10. EL与JSTL表达式代码示例