NLP中的CNN和RNN模型对比

这篇博客主要是拜读IBM Research发表的论文“Comparative Study of CNN and RNN for Natural Language Processing”,结合自己的体会做一个阅读笔记。

        目前深度学习主要包括CNN(卷积神经网络)和RNN(递归神经网络)两大阵营,基于卷积的CNN对识别目标任务的结构具有一定的优势,而RNN由于其记忆功能对序列识别建模具备优势。对应到NLP(自然语言处理)应用任务,CNN和RNN也各具优势,主要看具体的任务了。

IBM Research的这篇论文则总结了CNN和RNN在各种不同的NLP任务上的效果。

DNN主要的两大类模型CNN和RNN在此简单回顾一下:

CNN模型结构还是比较简单的,主要是前置的卷积层和后置的全连接层,早期的RNN由于难于训练进而发展出了结构更优的GRU和LSTM等若干变种。

文章同时也贴出了包括在情感分析、句子分类、实体识别、问答系统等等一系列任务上,CNN、RNN(GRU、LSTM)等模型的效果:

总体来看,三者在情感分析任务的效果基本接近了,在句子配对上CNN占有一定的优势,而在序列化的任务上,如命名实体识别、具备上下文的问答当中RNN颇具优势。

在不同的句子长度上:

这个结果很有意思了,模型的效果和实际的句长息息相关。直观来看,在短句长的任务上,CNN由于其卷积的功能对句子的整体结构有一个总揽的能力,但在长句长时,CNN只能处理其窗口内的信息,相邻窗口的信息只能借助后一层的卷积层来达到信息的融合,这对卷积窗口和移动的步长等等参数依赖是很大的,因此CNN处理NLP任务实际上是建模容易、调参难的一个特点。而RNN则训练时间会相对长很多。可以说各具优势吧。

关于CNN做短文本的文本分类,本人使用tensorflow做了一个简单的实验,有兴趣可以看看: 

CNN在中文文本分类的应用
--------------------- 
作者:大愚若智_ 
来源:CSDN 
原文:https://blog.csdn.net/zbc1090549839/article/details/55252516 
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值