0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是迁移学习?NLP迁移学习的未来

zhKF_jqr_AI 来源:未知 作者:李倩 2018-08-17 09:18 次阅读

编者按:关于NLP领域的迁移学习我们已经介绍过了,fast.ai也有很多相应的讨论。今天给大家展示一个在亚马逊评论数据集上实现的任务,即将评论分为积极或消极两类。


什么是迁移学习?

得益于迁移学习,计算机视觉领域的发展非常迅速。有着几百万个参数的高度非线性模型通常需要大型数据集的训练,经过几天甚至几周的训练,也只能分辨猫狗。

有了ImageNet挑战赛后,每年各种队伍都会设计出不同的图像分类器。我们发现这类模型的隐藏层可以捕捉图像的通用特征(例如线条、形式、风格等)。于是,这样就不用每次都为新的任务重建模型了。

以VGG-16模型为例:

它的结构相对复杂,图层较多,同时参数也很多。论文作者称需要用四个GPU训练三周。

而迁移学习的理念是,由于中间的图层是学习图像一般特征的,所以我们可以将其用作一个大型“特征生成器”!我们可以先下载一个预训练模型(在ImageNet任务上训练了好几周),删去网络的最后一层(全连接层),根据我们的任务进行调整,最后只训练我们的分类器图层。由于使用的数据可能和之前训练的模型所用数据不同,我们也可以花点时间训练所有图层。

由于只在最后一层进行训练,迁移学习会用到更少的标记数据。对数据进行标注非常费时,所以创建不需要大量数据的高质量模型就非常受欢迎了。

NLP中的迁移学习

说实话,迁移学习在自然语言处理中的发展并不像在机器视觉里那样受重视。让机器学习线条、圆圈、方块,然后再用于分析还是比较容易设计的。但是用来处理文本数据似乎不那么容易。

最初用来处理NLP中的迁移学习问题的是词嵌入模型(常见的是word2vec和GloVe),这些词嵌入表示利用词语所在的语境来用向量表示它们,所以相似的词语有相似的词语表示。

然而,词嵌入只能表示大多数NLP模型的第一个图层,之后我们仍需要从零开始训练所有的RNN/CNN等图层。

对语言模型进行微调

今年年初,Jeremy Howard和Sebastian Ruder提出了ULMFiT模型,这也是对NLP领域迁移学习的深入尝试。具体可参考论智此前报道的:《用迁移学习创造的通用语言模型ULMFiT,达到了文本分类的最佳水平》。

他们所研究的问题基于语言模型。语言模型是能够基于已知单词预测下一个单词的模型(例如手机上的智能拼写)。就像图像分类器一样,如果NLP模型能准确预测下一个单词,那就可以认为该模型学了很多自然语言组合的规则了。这一模型可以作为初始化,能够针对不同任务进行训练。

ULMFiT提出要在大型语料上训练语言模型(例如维基百科),然后创建分类器。由于你的文本数据可能和维基百科的语言风格不同,你就需要对参数进行微调,把这些差异考虑进去。然后,我们会在语言模型的顶层添加一个分类图层,并且只训练这个图层!论文建议逐渐解锁各个图层进行训练。

ULMFiT论文中的收获

这篇论文最让人惊喜之处就是用非常少的标记数据训练分类器。虽然未经标记过的数据随处可见,但是标记过的数据获取的成本是很高的。下面是对IMDb进行情感分析之后的结果:

只用了100个案例,他们就达到了和用2万个案例训练出的模型同样的错误率水平。除此之外,他们还提供了对模型进行预训练的代码,因为维基百科有多种语言,这使得我们能快速地进行语言转换。除英语之外,其他语种并没有很多经过标记的公开数据集,所以你可以在语言模型上对自己的数据进行微调。

处理亚马逊评论

为了加深对这种方法的理解,我们在另一个公开数据集上试了试。在Kaggle上发现了这个“亚马逊评论情感分析数据集”(地址:www.kaggle.com/bittlingmayer/amazonreviews/home)。它含有400万条商品评论已经相关的情感标签(积极或消极)。我们用fast.ai提出的ULMFiT对亚马逊的评价进行分类。我们发现,仅用1000个案例,模型就达到了在全部数据上训练的FastText模型的表现成果。而用100个案例进行训练,模型也能表现出不错的性能。

如果你想复现这个实验,可以参考notebook:github.com/feedly/ml-demos/blob/master/source/TransferLearningNLP.ipynb,在微调和分类过程中有一个GPU还是很高效的。

NLP中非监督 vs 监督学习

在使用ULMFiT的过程中,我们用到了非监督和监督学习两种方法。训练一个非监督式语言模型很“便宜”,因为你可以从网上找到很多文本数据。但是,监督式模型的成本就很高了,因为需要标记数据。

虽然语言模型可以捕捉到很多有关自然语言组织的信息,但是仍不能确定模型能否捕捉到文本的含义,即它们能否了解说话者想传达的信息。

Emily Bender在推特上曾提出了一个有趣的“泰语实验”:“假设给你所有泰语书籍,没有译文。假如你一点都不懂泰语,你永远不会从中学会什么。”

所以,我们认为语言模型更多的是学习语法规则,而不是含义。而语言模型能做的不仅仅是预测在语法规则上相近的句子。例如“I ate this computer”和“I hate this computer”两句话结构相同,但是一个良好的模型应该会将后者看作是“更正确”的句子。所以我们可以将语言模型看作是学习自然语言句子的架构的工具,从而帮助我们了解句子含义。

想了解更多这方面的话题,可以观看ACL 2018上Yejin Choi的演讲:sites.google.com/site/repl4nlp2018/home?authuser=0

NLP迁移学习的未来

ULMFiT的出现推动了迁移学习在自然语言处理中的发展,同时也出现了其他的微调工具,例如FineTune Transformer LM。我们注意到随着更多更好地语言模型的出现,迁移的效率也在不断提高。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 计算机视觉
    +关注

    关注

    8

    文章

    1598

    浏览量

    45603
  • nlp
    nlp
    +关注

    关注

    1

    文章

    463

    浏览量

    21817
  • 迁移学习
    +关注

    关注

    0

    文章

    72

    浏览量

    5501

原文标题:仅训练了1000个样本,我完成了400万条评论分类

文章出处:【微信号:jqr_AI,微信公众号:论智】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    杨强教授:从机器学习迁移学习

    杨强教授认为,DeepMind把端到端的深度学习应用在强化学习上,使得强化学习能够应付大数据,因此能在围棋上把人类完全击倒,它做到这样是通过完全的自学习、自我修炼、自我改正,然后一个一
    发表于 04-29 14:44 6073次阅读

    什么是迁移学习迁移学习的实现方法与工具分析

    向于不要求海量数据也能达到应用的精准要求,因此“小数据学习”正在成为新的热点,以迁移学习,强化学习为代表的小数据学习技术,更能体现人工智能的
    发表于 05-11 09:12 1.2w次阅读

    基于稀疏编码的迁移学习及其在行人检测中的应用

    一定进展,但大都需要大量的训练数据.针对这一问题,提出了一种基于迁移学习的半监督行人分类方法:首先基于稀疏编码,从任意的未标记样本中,学习到一个紧凑、有效的特征表示;然后通过迁移
    发表于 04-24 09:48

    迁移学习训练网络

    keras 之 迁移学习,改变VGG16输出层,用imagenet权重retrain
    发表于 09-09 11:02

    【木棉花】学习笔记--分布式迁移

    也可以查看我上一篇学习笔记了解一下。那今天我要整理到学习笔记中的呢,就是在分布式能力里算是比较简单的分布式迁移。为了更好地熟练掌握鸿蒙手机应用开发,为了供大家更方便的学习鸿蒙手机的应用
    发表于 09-05 10:49

    【木棉花】学习笔记--分布式迁移+回迁

    前言我又来啦,相信那些不了解分布式的童鞋,学习过我前几篇学习笔记了之后是不是会更加理解了一些呢。当然了,我这星期要整理到学习笔记中的也是和分布式能力相关的一个学习案例,那就是在上一期分
    发表于 09-07 20:09

    迁移学习

    经典机器学习算法介绍章节目标:机器学习是人工智能的重要技术之一,详细了解机器学习的原理、机制和方法,为学习深度学习
    发表于 04-21 15:15

    吴恩达:将引领下一波机器学习技术”的迁移学习到底好在哪?

    两年前,吴恩达在 NIPS 2016 的 Tutorial上曾说“在监督学习后,迁移学习将引领下一波学习技术”。今天我们来分析一下迁移
    的头像 发表于 10-27 10:27 2597次阅读
    吴恩达:将引领下一波机器<b class='flag-5'>学习</b>技术”的<b class='flag-5'>迁移</b><b class='flag-5'>学习</b>到底好在哪?

    迁移学习与模型预训练:何去何从

    把我们当前要处理的NLP任务叫做T(T称为目标任务),迁移学习技术做的事是利用另一个任务S(S称为源任务)来提升任务T的效果,也即把S的信息迁移到T中。至于怎么
    的头像 发表于 07-18 11:29 7489次阅读
    <b class='flag-5'>迁移</b><b class='flag-5'>学习</b>与模型预训练:何去何从

    NLP迁移学习面临的问题和解决

    自然语言处理(NLP)最近取得了巨大的进步,每隔几天就会发布最新的结果。排行榜疯狂是指最常见的NLP基准,如GLUE和SUPERGLUE,它们的得分越来越接近人类的水平。这些结果大多是通过超大(数十亿个参数)模型从大规模数据集中迁移
    的头像 发表于 05-04 12:03 2871次阅读
    <b class='flag-5'>NLP</b><b class='flag-5'>迁移</b><b class='flag-5'>学习</b>面临的问题和解决

    基于迁移学习与图像增强的夜间航拍车辆识别

    为了对夜间航拍图片中的车辆进行有效识别,提出基于二次迁移学习和 Retinex算法的图像处理方法,仅利用小规模的数据集训练网络,采用基于 Faster r-CNN的深度学习算法即可实现车辆的快速检测
    发表于 06-21 14:59 16次下载

    基于迁移深度学习的雷达信号分选识别

    基于迁移深度学习的雷达信号分选识别   来源:《软件学报》 ,作者王功明等   摘要:  针对当前雷达信号分选识别算法普遍存在的低信噪比下识别能力差、特征参数提取困难、分类器模型参数复杂等问题,提出
    发表于 03-02 17:35 989次阅读

    迁移学习Finetune的四种类型招式

    迁移学习广泛地应用于NLP、CV等各种领域,通过在源域数据上学习知识,再迁移到下游其他目标任务上,提升目标任务上的效果。其中,Pretrai
    的头像 发表于 04-02 17:35 2590次阅读

    NLP中的迁移学习:利用预训练模型进行文本分类

    迁移学习彻底改变了自然语言处理(NLP)领域,允许从业者利用预先训练的模型来完成自己的任务,从而大大减少了训练时间和计算资源。在本文中,我们将讨论迁移
    发表于 06-14 09:30 311次阅读

    一文详解迁移学习

    迁移学习需要将预训练好的模型适应新的下游任务。然而,作者观察到,当前的迁移学习方法通常无法关注与任务相关的特征。在这项工作中,作者探索了重新聚焦模型注意力以进行
    的头像 发表于 08-11 16:56 3597次阅读
    一文详解<b class='flag-5'>迁移</b><b class='flag-5'>学习</b>