• 自然语言处理(NLP)中的迁移学习


    Transfer Learning in NLP

    迁移学习(Transfer Learning)无疑是目前深度学习中的新热点(相对而言)。在计算机视觉领域,它已经应用了一段时间,人们使用经过训练的模型从庞大的ImageNet数据集中学习特征,然后针对较小的数据针对不同的任务对其进行进一步的训练。但是,在NLP中,迁移学习主要限于使用预训练的单词嵌入(这大大改善了基线)。最近,研究人员正在努力将整个模型从一项任务转移到另一项任务,这就是本文的主题。

    Sebastian Ruder和Jeremy Howard也许是第一个通过其提出的ULMFiT方法,在NLP中的应用了迁移学习方法,该方法超越了所有最新的文本分类技术。

    紧接着,OpenAI 在几个NLP任务上扩大了他们的想法,并超越了SOTA。

    在2018年NAACL上,获得最佳论文奖的是介绍ELMo的论文,该论文是一种新的词嵌入技术,与ULMFiT背后的思想非常相似,该技术来自位于UWash的AllenAI和 Luke Zettlemoyer小组的研究人员。

    在本文中,我将讨论所有这些新工作以及它们之间的相互关系。让我们从Ruder和Howard的引领潮流的架构开始。

    用于文本分类的通用语言模型微调

    《Universal Language Model Fine-Tuning for Text Classification》

    用于文本分类(或任何其他受监督的NLP任务)的大多数数据集都非常小。这使得训练深度神经网络非常困难,因为深度神经网络倾向于过度拟合这些小的训练数据,并且在实践中不能很好地概括。

    在计算机视觉领域,在庞大的ImageNet语料库上对任何模型进行预训练,是近些年的趋势。这比随机初始化好得多,因为该模型可以学习一般的图像特征,然后可以将其用于任何视觉任务(例如字幕或检测)。

    Howard和Ruder从这个想法中得到启发,提出了一个bi-LSTM模型,该模型在一般的语言建模(LM)任务上进行训练,然后在文本分类上进行微调。原则上讲,这会很好地执行,因为该模型将能够使用从生成式预训练中获得的语 言语义知识。理想地,可以从任何源任务(source task)S到目标任务(target task)T进行此迁移。作者使用LM作为源任务,因为:

    • 它能够捕获语言的长期依赖long-term dependencies
    • 它有效地合并了层级hierarchical关系
    • 它可以帮助模型学习情绪sentiments
    • LM很容易获得大数据语料库

    正式地,“ LM引入了一个假设空间H,该假设空间H对于许多其他NLP任务应该是有用的。”

    对于体系结构,他们使用当时的SOTA: AWD-LSTM(应该是一个多层的双向LSTM网络,没有注意力模块,详参Salesforce Research的论文中的详细信息)。该模型在WikiText-103语料库上进行了训练。

    训练完通用LM后,可以进行一些微调,将其按原样用于多个分类任务。为了进行这种微调和后续分类,作者提出了3种实现技巧。

    区分性微调 Discriminative fine tuning:在LM的微调阶段(针对目标任务),不同的学习速率用于不同的层。这样做是因为这些层捕获了不同类型的信息。

    斜三角学习率 Slanted triangular learning rates (STLR):学习率首先线性增加,然后在切割后逐渐降低,即“短暂增加 short increase”和“长时间衰减 long decay”。这类似于积极的余弦退火学习策略,现在很流行。

  • 相关阅读:
    linux安装切换图形化界面?
    MySQL——七、MySQL备份恢复
    代码随想录算法训练营第八天 | 字符串部分算法题
    会议OA项目---我的审批(审批&会议签字)
    JetBrains Annotations:将NPE杀死在编译期
    LQ0152 杨辉三角形【模拟】
    JS 读取excel文件内容 和 将json数据导出excel文件
    Pygame中Trivia游戏解析6-3
    基于springboot的医院门诊管理系统
    518. 零钱兑换II(完全背包问题)
  • 原文地址:https://blog.csdn.net/m0_63287589/article/details/139307086