迁移学习在自然语言处理领域的应用

迁移学习

迁移学习近年来在图形领域中得到了快速的发展,主要在于某些特定的领域不具备足够的数据,不能让深度模型学习的很好,需要从其它领域训练好的模型迁移过来,再使用该模型进行微调,使得该模型能很好地拟合少量数据的同时又具备较好的泛化能力(不过拟合)。

在迁移学习任务中,需要事先定义一组源数据集合,使用该集合训练得到预训练好的模型,该模型具备了源数据集合中的一些知识,在目标数据集合上微调该预训练的模型,使得模型能够很好地完成目标数据集合定义的任务,即完成了迁移学习。

由于深度学习模型结构复杂,在NLP领域中迁移学习不够成熟,不知道如何进行迁移、迁移模型的哪个结构部分、源数据集合与目标数据集合之间需要满足怎样的关系。本文以CNN文本分类任务为例进行描述,总结一下迁移学习在NLP领域文本分类任务中的一些经验。

CNN文本分类模型框架

如上图为CNN文本分类的模型结构图,总的模型结构来说可以分为四层:Embedding层、卷积层(含池化层)、全连接隐层、输出层。Embedding层主要将词语映射为词向量表示、卷积层主要对词语矩阵进行卷积操作得到句子的抽象表示、全连接隐层一般是进行维度压缩、输出层是进行分类(对应类别的数量)。

在文本分类任务中的迁移学习,例如源数据集合为新闻文本的分类(数据量大),目标数据集合为短视频标题分类(标注的数据少),通过预先训练的新闻分类模型,在短视频标题分类任务上进行模型(Embedding层、卷积层、全连接隐层、输出层)的微调,使得模型既能完成对少量有监督数据的拟合,又具备相应的泛化能力。下边将针对CNN文本分类任务进行经验总结。

经验与建议

经验

(1)目标数据集合与源数据集合在语义上太相似,反而会影响迁移学习的效果,部分相似效果最好;

(2)源数据集合的词典大小越大、OOV比例越小,迁移效果越好;

(3)对于Embedding层的迁移,无论是固定不变、还是微调效果都挺好;

(4)对于卷积层和隐层,若模型参数固定不变,很难提高迁移学习的效果,除非目标数据集合与源数据集合语义上非常相似、很少的OOV、具备很大的词典;

(5)输出层参数的迁移效果很差;

(6)源数据集合上训练的模型最好不加非线性激活函数,目标数据集上再添加

(7)dropout rate设置在0.5-0.7之间比较好

建议

(1)选择源数据集合时,尽量保证数据量大、OOV少、词典大,语义上与目标数据集合部分相似就行(不要太像);

(2)最好迁移Embedding层;

(3)如果考虑迁移卷积层和隐层,尽量考虑微调,不要使用固定参数。

(4)如果分类类别数量不相同,尽可能不要迁移隐层;

(5)不要试图迁移输出层,除非是在线学习,使用少量数据进行微调(源数据与目标数据基本一致)

参考文献

[1] Semwal T, Mathur G, Yenigalla P, et al. A Practitioners' Guide to Transfer Learning for Text Classification using Convolutional Neural Networks[J]. 2018.

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

原文发表时间:2018-10-31

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏红色石头的机器学习之路

台湾大学林轩田机器学习技法课程学习笔记1 -- Linear Support Vector Machine

关于台湾大学林轩田老师的《机器学习基石》课程,我们已经总结了16节课的笔记。这里附上基石第一节课的博客地址: 台湾大学林轩田机器学习基石课程学习笔记1 – Th...

2600
来自专栏AI研习社

如何在 Scratch 中用 Python 构建神经网络

动机:为了更加深入的理解深度学习,我们将使用 python 语言从头搭建一个神经网络,而不是使用像 Tensorflow 那样的封装好的框架。我认为理解神经网络...

1511
来自专栏PPV课数据科学社区

【机器学习】你需要多少训练数据?

从谷歌的机器学习代码中得知,目前需要一万亿个训练样本。 训练数据的特性和数量是决定一个模型性能好坏的最主要因素。一旦你对一个模型输入比较全面的训练数据,通常针对...

3555
来自专栏IT派

最全的DNN概述论文:详解前馈、卷积和循环神经网络技术

本论文技术性地介绍了三种最常见的神经网络:前馈神经网络、卷积神经网络和循环神经网络。且该文详细介绍了每一种网络的基本构建块,其包括了基本架构、传播方式、连接方式...

3734
来自专栏机器之心

学界 | 神经网络碰上高斯过程,DeepMind连发两篇论文开启深度学习新方向

函数近似是机器学习众多问题的核心,而过去深度神经网络凭借其「万能近似」的属性在函数近似方面无与伦比。在高级层面,神经网络可以构成黑箱函数近似器,它会学习如何根据...

1522
来自专栏SIGAI学习与实践平台

基于内容的图像检索技术综述-CNN方法

传统方法在图像检索技术上一直表现平平。比如传统方法常用的SIFT特征,它对一定程度内的缩放、平移、旋转、视角改变、亮度调整等畸变,都具有不变性,是当时最重要的图...

2425
来自专栏Duncan's Blog

记录几个经典模型

2.1 gbdt 的算法的流程? gbdt通过多轮迭代,每轮迭代生成一个弱分类器,每个分类器在上一轮分类器的残差基础上进行训练.(弱分类器一般会选择CART T...

1592
来自专栏机器学习、深度学习

二值人脸对齐--Binarized Convolutional Landmark Localizers for Human Pose Estimation and Face Alignment

Binarized Convolutional Landmark Localizers for Human Pose Estimation and Face A...

2975
来自专栏生信小驿站

黑箱方法-神经网络①人工神经网络

今天,主要使用人工神经网络的进行建模分析,涉及的R包是neuralnet和nnet两个包,函数名和包名是一样的。

1113
来自专栏派树AI

Machine Learning笔记——单变量线性回归

在机器学习中,样本一般分成独立的三部分训练集(train set),验证集(validation set)和测试集(test set)。其中,训练集用于建立模型...

1190

扫码关注云+社区

领取腾讯云代金券