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

本节内容综述

  1. 要做一项任务,但是数据不直接与任务相关。这就涉及到了迁移学习。在现实生活中,我们其实不断在做“迁移学习”。
  2. 关于 Transfer Learning ,李老师的分类如 Overview (目标数据是否有标签、原数据是否有标签)。
  3. 首先来看 Model Fine-tuning 。
  4. 接下来是 Multitask Learning 。
  5. 如果两个任务不像,是否迁移学习会有不好的效果?有人对此提出了 Progressive Neural Networks 。
  6. 在目标数据没有标签时,如何处理?且看 Domain-adversarial training 。
  7. 此外,还有一种思路:zero-shot Learning 。
  8. 剩下一点时间,讲一讲 Source Data 没有 label 是怎么办。

文章目录

  • 本节内容综述
  • 小细节
    • Overview
    • Model Fine-tuning
      • Conservative Training
      • Layer Transfer
    • Multitask Learning
      • Multilingual Speech Recognition
    • Progressive Neural Networks
    • Domain-adversarial training
    • zero-shot Learning
      • DeviSE
      • Convex Combination of Semantic Embedding
    • Self-taught learning

小细节

Overview

Model Fine-tuning


如上,目标的数据有标签,但是很少;其他数据很大量,有标签。这种数据在语音辨识比较常见。

这种问题的思路可以很直接:使用其他数据训练模型,然后用目标数据微调。

Conservative Training


如上,在 Conservative Training 中,要注意让新老的模型差距不要太大。

Layer Transfer


如上,还有一种方法:把大部分的层都复制并固定到新模型;只让某一层参与微调。

Which layer can be transferred (copied)?

  • Speech: usually copy the last few layers;
  • Image: usually copy the first few layers.


对于图片训练 Layer Transfer 如上。

Multitask Learning


如上,在训练时,即训练了可以公用的“层”。

Multilingual Speech Recognition


Multitask Learning 很成功的例子就是多语言翻译,如上。

Progressive Neural Networks


如上,用之前任务的中间层去训练下一任务对应层的输出。但是这个方法还存在不少问题。

Domain-adversarial training


如上,如果把神经网络的某层抽出来,你会发现,不同 domain 的数据,其分布根本不同。

因此希望,把 domain 的特性消掉。不同的 domain 的相同类别应该混在一起。


如上,提出了类似 GAN 的结构,在后面加上 Domain classifier ,以消除 Domain 的特性。但是如果只考虑 Domain ,则会造成偏差。因此,还要加上 Label predictor 。


如上,建立了一个大网络。对于蓝色、粉色的输出,其目标不同。


如上,两个目标是冲突的,因此要加一个 gradient reversal layer 。训练时可能比较难 train 。


其结果如上 proposed approach 。

zero-shot Learning


在 zero-shot Learning 中,其任务是截然不同的。在语音辨识中,我们经常遇到这种情况:在训练时,我们不可能见过所有的单词;为此,我们建了一个所有单词的“语义表”,将单词映射到语义表上,对于没见过的单词,也将其映射到该表上。

对于图片同理。


如上,在训练时,训练其各种“特性”。


而在训练时,把 Attributes 输出,然后去属性表中找,哪一种动物的属性最为接近,即为那种动物。

DeviSE


此外,可以把图片以及其属性分别做一个 embedding ,在测试时,将属性的 embedding 做比较。此外,我们希望 fffggg 越近越好。


如果我们没有动物的数据库该怎么办呢?如上,我们可以接用 word2vec 。


如上,对于训练,我们应考虑两件事:

  • fffggg 越近越好;
  • 对于不对应的 fffggg ,越远越好。

Convex Combination of Semantic Embedding


如上,如果一张动物的图片,其分类分数作为权重,之后将词向量加权平均,与哪个词最接近,即为那个词。


其结果如上。

Self-taught learning

  • Learning to extract better representation from the source data (unsupervised approach)
  • Extracting better representation for target data


如上,原始论文做了许多任务,其表现都不错。

【李宏毅2020 ML/DL】P85 Transfer Learning相关推荐

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  8. 【李宏毅2020 ML/DL】P99-105 Life Long Learning

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 本节内容综述 终身学习技术,让一个模型学习多个任务,又叫 Continuous Learning.Never ...

  9. 【李宏毅2020 ML/DL】P97-98 More about Meta Learning

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 本节内容综述 本节课由助教 陈建成 讲解. 本节 Outline 见小细节. 首先是 What is meta ...

最新文章

  1. python 替换字符串的方法replace()、正则re.sub()
  2. java docx word api_javadoc生成word接口文档
  3. 不改一行代码定位线上性能问题
  4. JavaScript实现完整的matrix矩阵类(附完整源码)
  5. cookies默认过期时间_「图」Chrome Canary新版已启动“增强版cookies控制”预览测试...
  6. 字节大牛耗时八个月又一力作,原理+实战讲解
  7. U盘安装linux后无法引导
  8. pytorch---nn模块(3)自定义nn 模块
  9. NYOJ--114--某种序列(大数)
  10. visio 绘图矢量图素材网站
  11. UG NX二次开发(C++)-环境设置-内部模式(插件)制作设置
  12. studioOne安装教程与简单使用(图文)
  13. 去掉GaussView启动警告窗口的办法
  14. linux网络编程——聊天室总结
  15. 将RSA加密应用在ARM-Linux平台
  16. 操作系统Unix、Windows、Mac OS、Linux的故事
  17. 危机管理应遵循哪些原则?
  18. 年底了,清空自己,让心归零!
  19. getline()函数的几点疑惑
  20. 数据结构 —— 广义表

热门文章

  1. Nginx配置Thinkphp3.2.3配置,访问Nginx报 No input file specified. 的问题解决
  2. nodejs进程异常退出处理方法
  3. 深入理解分布式事务,高并发下分布式事务的解决方案
  4. 解决springmvc加载JS,CSS等文件问题【转】
  5. 【Golang】解决Go test执行单个测试文件提示未定义问题
  6. Bash脚本和/ bin / bash ^ M:错误的解释器:没有这样的文件或目录[重复]
  7. 找不到具有不变名称“System.Data.SqlClient”的ADO.NET提供程序的实体框架提供程序
  8. TextView内可以有多种样式吗?
  9. 如何将图例排除在情节之外
  10. maven deploy到nexus报错:Return code is: 401, ReasonPhrase:Unauthorized