【文本分类】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、如何比较不同模型之间的精度?同一模型每次运行的精度都不一样。

相关文章
|
机器学习/深度学习 数据采集 自然语言处理
【Deep Learning A情感文本分类实战】2023 Pytorch+Bert、Roberta+TextCNN、BiLstm、Lstm等实现IMDB情感文本分类完整项目(项目已开源)
亮点:代码开源+结构清晰+准确率高+保姆级解析 🍊本项目使用Pytorch框架,使用上游语言模型+下游网络模型的结构实现IMDB情感分析 🍊语言模型可选择Bert、Roberta 🍊神经网络模型可选择BiLstm、LSTM、TextCNN、Rnn、Gru、Fnn共6种 🍊语言模型和网络模型扩展性较好,方便读者自己对模型进行修改
1793 0
|
机器学习/深度学习 存储 自然语言处理
基于 LSTM 进行多类文本分类( TensorFlow 2.0)
基于 LSTM 进行多类文本分类( TensorFlow 2.0)
|
机器学习/深度学习 自然语言处理
【37】使用LSTM实现文本分类、图像分类、图像生成任务
【37】使用LSTM实现文本分类、图像分类、图像生成任务
1013 0
|
机器学习/深度学习 TensorFlow 算法框架/工具
一文详解如何用 TensorFlow 实现基于 LSTM 的文本分类(附源码)
 引言 学习一段时间的tensor flow之后,想找个项目试试手,然后想起了之前在看Theano教程中的一个文本分类的实例,这个星期就用tensorflow实现了一下,感觉和之前使用的theano还是有很大的区别,有必要总结mark一下。
2135 0
|
机器学习/深度学习 Go 算法框架/工具
(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.
|
机器学习/深度学习 Go 算法框架/工具
(转)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.
|
10月前
|
机器学习/深度学习 算法 安全
【PSO-LSTM】基于PSO优化LSTM网络的电力负荷预测(Python代码实现)
【PSO-LSTM】基于PSO优化LSTM网络的电力负荷预测(Python代码实现)
439 0
|
12月前
|
机器学习/深度学习 算法 数据挖掘
基于WOA鲸鱼优化的BiLSTM双向长短期记忆网络序列预测算法matlab仿真,对比BiLSTM和LSTM
本项目基于MATLAB 2022a/2024b实现,采用WOA优化的BiLSTM算法进行序列预测。核心代码包含完整中文注释与操作视频,展示从参数优化到模型训练、预测的全流程。BiLSTM通过前向与后向LSTM结合,有效捕捉序列前后文信息,解决传统RNN梯度消失问题。WOA优化超参数(如学习率、隐藏层神经元数),提升模型性能,避免局部最优解。附有运行效果图预览,最终输出预测值与实际值对比,RMSE评估精度。适合研究时序数据分析与深度学习优化的开发者参考。
|
12月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于GA遗传优化的BiLSTM双向长短期记忆网络序列预测算法matlab仿真,对比BiLSTM和LSTM
本内容包含基于BiLSTM与遗传算法(GA)的算法介绍及实现。算法通过MATLAB2022a/2024b运行,核心为优化BiLSTM超参数(如学习率、神经元数量),提升预测性能。LSTM解决传统RNN梯度问题,捕捉长期依赖;BiLSTM双向处理序列,融合前文后文信息,适合全局信息任务。附完整代码(含注释)、操作视频及无水印运行效果预览,适用于股票预测等场景,精度优于单向LSTM。

热门文章

最新文章