博客
关于我
NLP中的迁移学习教程来啦!(238页PPT下载)
阅读量:566 次
发布时间:2019-03-09

本文共 1616 字,大约阅读时间需要 5 分钟。

最近,在美国明尼苏达州明尼阿波利斯的 NAACL 2019 上,Sebastian Ruder、Matthew Peters、Swabha Swayamdipta 和 Thomas Wolf 共享了一个 238 页关于“NLP 中的迁移学习”的教程。本文将简要介绍迁移学习的概念及其在现代 NLP 中的应用。

迁移学习是一种机器学习方法,通过利用源任务的知识训练目标任务的模型,从而提高模型的泛化能力。传统的监督学习方法通常局限于单一任务的孤立学习,而迁移学习则能够跨越多个任务和领域。近年来,迁移学习在 NLP 中得到了广泛应用,显著提升了多个任务的性能。

为什么是 NLP 迁移学习?

  • 语言知识的共享性

    许多 NLP 任务共享相同的语言表示和结构。例如,语法和语义是相互关联的,且语言本质上具有高度的结构化特性。

  • 任务间的关联性

    许多任务可以相互关联。例如,句法(Syntax)和语义(Semantics)之间存在密切关系,而句法的改进又能促进语义模型的优化。

  • 少量注释数据的挑战

    在许多 NLP 任务中,数据成本较高,注释数据便于获取的任务较少。迁移学习能够最大限度地利用现有 Annotation minimal supervision.

  • 迁移学习的成功应用

    迁移学习已成为许多 NLP任务的标准方法,例如句子分类(如情感分析)、信息抽取、问答系统的迁移等。

  • NLP 中迁移学习的类型

    迁移学习可以大致分为以下几种类型:

  • 任务特定的迁移

    例如,从语法任务迁移到语义任务,或从一个问答数据集迁移到另一个问答数据集。

  • 语言的迁移

    例如,从一种语言(如英语)迁移到另一种语言(如中文),或者从标准文本迁移到非标准文本。

  • 层次的迁移

    例如,从小模型迁移到大模型,或从单词级任务迁移到句子级任务。

  • 预训练任务与数据集

    预训练通常需要大量的自然语言数据,且预训练任务可以分为两类:

  • 未标记数据与自我监督学习

    利用大规模的非标记数据(如维基百科、新闻、社交媒体等)进行预训练。这些数据通常通过分布假设来训练语言模型。

  • 监督预训练

    例如,机器翻译任务、句子对的分类(如语义语义对对比 NLI)、句子表达分析等。这些任务可以通过监督学习方法获得高质量的预训练模型。

  • 目标任务与数据集

    迁移后的目标任务通常是受监督的 NLP 任务,常见的包括:

  • 句子分类

    例如情感分析和领域分类。

  • 句子对分类

    例如语义匹配和语义对比。

  • 结构化预测

    例如句法分析和语义解析。

  • 生成任务

    例如对话生成和文本摘要。

  • 问答任务

    例如多轮对话和开放-domain阅读理解。

  • 预训练与目标任务的耦合关系

    预训练和目标任务的选择往往是密切相关的。例如,预训练任务的表示方法需要与目标任务的需求相匹配。例如,词嵌入方法通常更适合词级预测任务,而句子或文档表示方法则不适合单词级任务。

    一般来说,预训练任务与目标任务的相似性通常能带来更好的结果。

    语境中的单词嵌入

    在迁移学习中,单词嵌入方法(如 word2vec、GloVe、skip-thought、InferSent、ELMo 等)是预训练的重要任务。这些方法通过学习单词向量来捕获语义信息,并能够在目标任务中进行有效的迁移。

    层次式语言模型预训练

    许多成功的预训练方法都是基于语言模型(LM)的。语言模型通过预训练学习如何预测下一个文本片段的概率。这种方法可以在不需要注释的情况下,高效地利用大规模文本数据。同时,LM预训练的结果往往能够捕捉到语言的多种功能,包括表达、语义、上下文理解等。

    结论

    迁移学习已经成为现代 NLP 研究和应用的重要方法之一。通过预训练和目标任务的耦合,NLP 模型能够跨越任务和领域,取得更好的泛化性能。未来,随着预训练模型的不断成熟和任务创新的增加,迁移学习在 NLP 中的应用将更加广泛和深入。

    如果对本次分享感兴趣,可以在"数智物语"公号后台回复"迁移学习"关键词,了解更多相关内容。

    转载地址:http://osqpz.baihongyu.com/

    你可能感兴趣的文章
    ntko web firefox跨浏览器插件_深度比较:2019年6个最好的跨浏览器测试工具
    查看>>
    ntko文件存取错误_苹果推送 macOS 10.15.4:iCloud 云盘文件夹共享终于来了
    查看>>
    ntp server 用法小结
    查看>>
    ntpdate 通过外网同步时间
    查看>>
    ntpdate同步配置文件调整详解
    查看>>
    NTPD使用/etc/ntp.conf配置时钟同步详解
    查看>>
    NTP及Chrony时间同步服务设置
    查看>>
    NTP服务器
    查看>>
    NTP配置
    查看>>
    NUC1077 Humble Numbers【数学计算+打表】
    查看>>
    NuGet Gallery 开源项目快速入门指南
    查看>>
    NuGet(微软.NET开发平台的软件包管理工具)在VisualStudio中的安装的使用
    查看>>
    nuget.org 无法加载源 https://api.nuget.org/v3/index.json 的服务索引
    查看>>
    Nuget~管理自己的包包
    查看>>
    NuGet学习笔记001---了解使用NuGet给net快速获取引用
    查看>>
    nullnullHuge Pages
    查看>>
    NullPointerException Cannot invoke setSkipOutputConversion(boolean) because functionToInvoke is null
    查看>>
    null可以转换成任意非基本类型(int/short/long/float/boolean/byte/double/char以外)
    查看>>
    Number Sequence(kmp算法)
    查看>>
    Numix Core 开源项目教程
    查看>>