【文本分类】A C-LSTM Neural Network for Text Classification

简介: 【文本分类】A C-LSTM Neural Network for Text Classification

·摘要:

 本文作者将CNN和RNN(LSTM)结合使用,应用到了NLP的文本分类任务中。

·参考文献:

 [1] A C-LSTM Neural Network for Text Classification 论文链接:https://arxiv.org/abs/1511.08630

[1] 摘要


  · 论文结合CNN和RNN(LSTM)模型提出了C-LSTM模型,应用于文本分类。

  · C-LSTM利用CNN提取抽象的高级特征,并将其送入长短期记忆递归神经网络(LSTM)中得到句子表示。最终通过全连接层来做分类任务。

 · C-LSTM既能捕捉短语的局部特征(CNN),也能捕捉句子的序列信息(LSTM)。

[2] 介绍


  2.1、NLP中CNN与RNN的优缺点:

  CNN能够从时间或空间数据中学习局部响应,但缺乏学习序列相关性的能力;另一方面,RNN专门用于序列建模,但不能并行提取特征。

  2.2、C-LSTM核心思想:

CNN LSTM C-LSTM
嵌入层 嵌入层 嵌入层
卷积层 LSTM层 卷积层
池化层 全连接层 LSTM层
全连接层 全连接层

  C-LSTM模型将CNN卷出来的窗口特征,组织成序列化窗口特征作为LSTM的输入。通过这种方式,不是直接从输入的句子构建LSTM,而是首先将每个句子转换为连续的窗口(n-gram)特征。

在网络结构中的全连接层之前,所做的工作都是在寻找一种最好的文本向量化表示方法。

  2.3、C-LSTM模型图:

  官方图:

image.png

 如上图,设有一个batch中的一个文本[“The”,“movie”,“is”,“awesome”,"!"]。卷积核边长为3 x 4,卷积通道为4。那么对于初始的文本向量,会产生出4通道的3 x 1维feature map。然后再把多通道的feature map中对应位置提取在一起,作为LSTM的输入。

 池化层会破坏卷积后的序列性,所以模型中没有池化。

【注一】这里卷积核宽度为embedding层维度,这样卷积后的一个通道的size为n行一列,转置一下就是个一维数组了。

【注二】 在torchtext中,如果想把卷积层的输出作为LSTM层的输入的话,需要设置LSTM层的input_size等于卷积层的filter_num(卷积通道数)。

[3] 疑问?


  1、CNN中卷积核的长宽设置问题,宽不等于embedding_dims时,时什么情况?

  2、如何比较不同模型之间的精度?同一模型每次运行的精度都不一样。

目录
打赏
0
0
0
0
174
分享
相关文章
【Deep Learning A情感文本分类实战】2023 Pytorch+Bert、Roberta+TextCNN、BiLstm、Lstm等实现IMDB情感文本分类完整项目(项目已开源)
亮点:代码开源+结构清晰+准确率高+保姆级解析 🍊本项目使用Pytorch框架,使用上游语言模型+下游网络模型的结构实现IMDB情感分析 🍊语言模型可选择Bert、Roberta 🍊神经网络模型可选择BiLstm、LSTM、TextCNN、Rnn、Gru、Fnn共6种 🍊语言模型和网络模型扩展性较好,方便读者自己对模型进行修改
722 0
一文详解如何用 TensorFlow 实现基于 LSTM 的文本分类(附源码)
 引言 学习一段时间的tensor flow之后,想找个项目试试手,然后想起了之前在看Theano教程中的一个文本分类的实例,这个星期就用tensorflow实现了一下,感觉和之前使用的theano还是有很大的区别,有必要总结mark一下。
1983 0
(zhuan) LSTM Neural Network for Time Series Prediction
LSTM Neural Network for Time Series Prediction  Wed 21st Dec 2016 Neural Networks these days are the “go to” thing when talking about new fads in machine learning.
(转)LSTM NEURAL NETWORK FOR TIME SERIES PREDICTION
LSTM NEURAL NETWORK FOR TIME SERIES PREDICTION Wed 21st Dec 2016   Neural Networks these days are the “go to” thing when talking about new fads in machine learning.
7.1.3.2、使用飞桨实现基于LSTM的情感分析模型的网络定义
该文章详细介绍了如何使用飞桨框架实现基于LSTM的情感分析模型,包括网络定义、模型训练、评估和预测的完整流程,并提供了相应的代码实现。
基于贝叶斯优化CNN-LSTM网络的数据分类识别算法matlab仿真
本项目展示了基于贝叶斯优化(BO)的CNN-LSTM网络在数据分类中的应用。通过MATLAB 2022a实现,优化前后效果对比明显。核心代码附带中文注释和操作视频,涵盖BO、CNN、LSTM理论,特别是BO优化CNN-LSTM网络的batchsize和学习率,显著提升模型性能。
【机器学习】面试题:LSTM长短期记忆网络的理解?LSTM是怎么解决梯度消失的问题的?还有哪些其它的解决梯度消失或梯度爆炸的方法?
长短时记忆网络(LSTM)的基本概念、解决梯度消失问题的机制,以及介绍了包括梯度裁剪、改变激活函数、残差结构和Batch Normalization在内的其他方法来解决梯度消失或梯度爆炸问题。
263 2

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等