迁移学习和领域自适应

迁移学习和领域自适应

迁移学习和领域自适应指的是利用一个设定(分布 P1)中已经学到的内容去改 善另一个设定(比如分布 P2)中的泛化情况。这点概括了上一节提出的想法,在无 监督学习和监督学习之间转移表示。

在迁移学习 (transfer learning) 中,学习器必须执行两个或更多个不同的任务, 但是我们假设能够解释 P1 变化的许多因素和学习 P2 需要抓住的变化相关。这通常 能够在监督学习的情况中理解,输入是相同的,但是输出具有不同的性质。例如,我 们可能在第一种设定中学习了一组视觉类别,比如猫和狗,然后在第二种设定中学 习一组不同的视觉类别。如果第一种设定(从 P1 采样)中具有非常多的数据,那么 这有助于在 P2 抽取到的非常少的样本中快速泛化。许多视觉类别共享一些低级概 念,比如边缘,视觉形状,几何变化,照明变化的影响等。一般而言,当存在对不 同设定或任务有用,且对应多个设定的潜在因素的特征时,迁移学习,多任务学习(第7.7节)和领域自适应可以使用表示学习来实现。如图7.2所示,具有共享底层和任务相关上层的学习框架。

然而,有时不同任务之间共享的不是输入的语义,而是输出的语义。例如,语 音识别系统需要在输出层产生有效的句子,但是输入附近的较低层可能需要识别相 同音素或子音素发音的非常不同的版本(这取决于哪个人正在说话)。在这样的情 况下,共享神经网络的上层(输出附近)和进行任务特定的预处理是有意义的,如 图15.2所示。

图 15.2: 多任务学习或者迁移学习的架构示例。输出变量 y 在所有的任务上具有相同的语义;输 入变量 x 在每个任务(或者,比如每个用户)上具有不同的意义(甚至可能具有不同的维度),图 上三个任务为 x(1),x(2),x(3)。底层结构(决定了选择方向)是面向任务的,上层结构是共享的。 底层结构学习将面向特定任务的输入转化为通用特征。

在领域自适应 (domain adaption) 的相关情况下,任务(和最优的输入输出映 射)在每个设定之间保持相同,但是输入分布稍有不同。例如,考虑情感分析的任 务,包括判断评论是否表达积极或消极情绪。网上的评论来自许多类别。在书,视频 和音乐等媒体内容上训练的顾客评论情感预测器,被用于分析诸如电视机或智能电 话的消费电子产品的评论时,领域自适应情景可能会出现。可以想象,存在一个潜 在的函数可以判断任何语句是正面的,中性的还是负面的,但是词汇和风格可能会 因领域而有差异,使得跨域的泛化训练变得更加困难。简单的无监督预训练(去噪 自编码器)已经能够非常成功地用于领域自适应的情感分析 (Glorot et al., 2011c)。

一个相关的问题是概念漂移 (concept drift),我们可以将其视为一种迁移学习, 因为数据分布随时间而逐渐变化。概念漂移和迁移学习都可以被视为多任务学习的特定形式。短语 “多任务学习’’ 通常指监督学习任务,而迁移学习中更一般的概念也 适用于无监督学习和强化学习。

在所有这些情况下,目标是利用第一个设定下的数据优势,提取在第二种设定 中学习时或直接进行预测时可能有用的信息。表示学习的核心思想是相同的表示可 能在两种设定中都是有用的。两个设定使用相同的表示,使得表示可以受益于两个 任务的训练数据。

如前所述,无监督深度学习用于迁移学习已经在一些机器学习比赛中取得了成 功 (Mesnil et al., 2011; Goodfellow et al., 2011)。这些比赛中的某一个实验设定如 下。首先每个参与者获得一个第一种设定(来自分布 P1)的数据集,其中含有一些 类别的样本。参与者必须用这个来学习一个良好的特征空间(将原始输入映射到某 种表示),这样当我们将这个学习到的变换用于来自迁移设定(分布 P2)的输入时,线性分类器可以在有标记样本很少的训练集上训练,泛化。这个比赛中最引人注目 的结果之一是,学习表示的网络架构越深(在第一个设定 P1 中的数据使用纯无监督 的方式学习),在第二个设定(迁移)P2 的新类别上学习到的曲线就越好。对于深度 表示而言,迁移任务只需要较少的标记样本就能明显地渐近泛化性能。

迁移学习的两种极端形式是一次学习 (one-shot learning) 和零次学习 (zero-shot learning),有时也被称为零数据学习 (zero-data learning)。只有一个标记样本的迁移 任务被称为一次学习;没有标记样本的迁移任务被称为零次学习。

因为第一阶段学习出的表示就可以清楚地分离类别,所以一次学习(Fei-Feiet al., 2006) 是可能的。在迁移学习阶段,仅需要一个标记样本来推断表示空间中聚 集在相同点周围的许多可能的测试样本的标签。这使得在学习到的表示空间中,对 应于不变性的变化因子已经与其他因子完全分离,在区分某些类别的对象时,我们 以哪种方式学习到哪些因素具有决定意义。

考虑一个零次学习设定的例子,学习器已经读取了大量文本,然后要解决对象 识别的问题。如果文本足够好地描述了对象,那么即使没有看到某对象的图像,也 能识别该对象。例如,已知猫有四条腿和尖尖的耳朵,那么学习器可以在没有见过 猫的情况下猜测该图像是猫。

只有在训练时使用了额外信息,零数据学习(Larochelle et al., 2008) 和零次学 习(Palatucci et al., 2009; Socher et al., 2013b) 才是有可能的。我们可以认为零数据 学习场景包含三个随机变量:传统输入 x,传统输出或目标 y,以及描述任务的附加 随机变量,T 。该模型被训练来估计条件分布 p(y | x, T ),其中 T 是我们希望执行的任务的描述。在我们的例子中,读取猫的文本信息然后识别猫,输出是二元变量 y,y = 1 表示 ‘‘是’’,y = 0 表示 ‘‘不是’’。任务变量 T 表示要回答的问题,例如 ‘‘这个 图像中是否有猫?” 如果训练集包含和 T 在相同空间的无监督对象样本,我们也许 能够推断未知的 T 实例的含义。在我们的例子中,没有提前看到猫的图像而去识别 猫,拥有一些未标记的文本数据包含句子诸如 ‘‘猫有四条腿’’ 或 ‘‘猫有尖耳朵’’,对 于学习非常有帮助。

零次学习要求 T 被表示为某种泛化的形式。例如,T 不能仅是指示对象类别 的one-hot。通过使用每个类别词的词嵌入表示,Socher et al. (2013b) 提出了对象类 别的分布式表示。

一种类似的现象出现在机器翻译中 (Klementiev et al., 2012; Mikolov et al.,2013b; Gouws et al., 2014):我们已经知道一种语言中的单词,和非语言语料库中学 到的词与词之间的关系;另一方面,我们已经翻译了一种语言中的单词与另一种语 言中的单词相关的句子。即使我们可能没有将语言 X 中的单词 A 翻译成语言 Y 中 的单词 B 的标记样本,我们也可以泛化并猜出单词 A 的翻译,这是由于我们已经 学习了语言 X 和 Y 的分布式表示,并且通过两种语言相匹配句子组成的训练样本, 产生了关联于两个空间的连接(可能是双向的)。如果联合学习三种所有成分(两种 表示形式和它们之间的关系),那么这种迁移将会非常成功。

零次学习是迁移学习的一种特殊形式。同样的原理可以解释如何能执行多模态 学习 (multimodal learning),学习两种模态的表示,和一种模态中的观察结果 x 与 另一种模态中的观察结果 y 组成的对 (x,y) 之间的关系(通常是一个联合分布)(Srivastava and Salakhutdinov, 2012)。通过学习所有的三组参数(从 x 到它的表示, 从 y 到它的表示,以及两个表示之间的关系),一个表示中的概念被锚定在另一个表 示中,反之亦然,从而可以有效地推广到新的对组。这个过程如图15.3所示。

图 15.3: 两个领域 x 和 y 之间的迁移学习能够零次学习。标记或未标记样本 x 可以学习表示函数fx。同样地,样本 y 也可以学习表示函数 fy。上图中 fx 和 fy 旁都有一个向上的箭头,表示作用 方向。hx 空间中的相似性度量表示 x 空间中两点的距离,这种度量方式比直接度量 x 空间距离 更好。同样地,hy 空间中的相似性度量表示 y 空间中两点的距离。这两种相似函数都使用带点的 双向箭头表示。标记样本(短横水平线)(x,y) 能够学习表示 fx(x) 和表示 fy(y) 之间的单向或双 向映射(实双向箭头)。零数据学习可以通过以下方法实现。像 xtest 可以和单词 ytest 关联起来, 即使该单词没有像。因为单词表示 fy(ytest) 和像表示 fx(xtest) 可以通过表示空间的映射彼此关 联。尽管像和单词没有匹配在一起,但是它们的特征向量 fx(xtest) 和 fy(ytest) 互相关联。上图来 自 Hrant Khachatrian 的建议。

内容摘自:https://github.com/exacity/deeplearningbook-chinese/releases/ 15.2

原文发布于微信公众号 - CreateAMind(createamind)

原文发表时间:2017-02-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏自学笔记

EM Algorithm

EM算法和之前学的都不太一样,EM算法更多的是一种思想,所以后面用几个例子讲解,同时也会重点讲解GMM高斯混合模型。

2855
来自专栏自然语言处理

一起走进条件随机场2(NLP重点理论)

条件随机场就是对给定的输出标识序列Y和观察序列X,条件随机场通过定义条件概率P(X|Y),而不是联合概率分布P(X,Y)来描述模型。

881
来自专栏决胜机器学习

深层神经网络参数调优(三) ——mini-batch梯度下降与指数加权平均

深层神经网络参数调优(三)——mini-batch梯度下降与指数加权平均 (原创内容,转载请注明来源,谢谢) 一、mini-batch梯度下降 1、概述 之前...

4513
来自专栏iOSDevLog

《机器学习实战》算法总结

[美]Peter Harrington. 机器学习实战 (图灵程序设计丛书 72)

1174
来自专栏智能算法

GBDT算法(详细版)

一、前言 通过之前的文章GBDT算法(简明版)对GBDT的过程做了大概的讲解,我们可以了解到GBDT是一种迭代的决策树算法,由多棵决策树组成,所有树的结论累加起...

5656
来自专栏机器学习算法与Python学习

入门 | 什么是自注意力机制?

目前有许多句子表征的方法。本文作者之前的博文中已经讨论了 5 中不同的基于单词表征的句子表征方法。想要了解更多这方面的内容,你可以访问以下链接:https://...

3402
来自专栏人工智能

随机计算图:连续案例

去年我介绍了一些现代的变分推理理论。 这些方法通常与深度神经网络结合使用,形成深度生成模型(例如VAE),或者利用随机控制丰富确定性模型,从而导致更好的探索。 ...

3060
来自专栏MyBlog

Energy-efficient Amortized Inference with Cascaded Deep Classifiers论文笔记

深度神经网络在许多AI任务中取得了卓越的成功, 但是通常会造成高的计算量和能量耗费, 对于某些能量有约束的应用, 例如移动传感器等.

1266
来自专栏程序生活

Word2Vec教程-Negative Sampling 负采样

2913
来自专栏人工智能LeadAI

BAT机器学习面试1000题系列(第76~149题)

76、看你是搞视觉的,熟悉哪些CV框架,顺带聊聊CV最近五年的发展史如何?深度学习 DL应用 难 原英文:adeshpande3.github.io 作者:Ad...

7259

扫码关注云+社区

领取腾讯云代金券