1.摘 要

经典的 LSTM 分类模型,一种是利用 LSTM 最后时刻的输出作为高一级的表示,而另一种是将所有时刻的LSTM 输出求平均作为高一级的表示.这两种表示都存在一定的缺陷,第一种缺失了前面的输出信息,另一种没有体现每个时刻输出信息的不同重要程度.为了解决此问题,引入Attention 机制,对 LSTM 模型进行改进,设计了LSTM-Attention 模型.实验结果表明: LSTM 分类模型比传统的机器学习方法分类效果更好,而引入 Attention 机制后的 LSTM 模型相比于经典的文本分类模型,分类效果也有了一定程度的提升.

2.数据集

本文的实验数据集来源于搜狗实验室中的搜狐新闻 数据,从中提取出用于训练中文词向量的中文语料, 大小约为 4GB 左右.然后选取了10 个类别的新闻数据,分别为体育, 财经, 房产, 家居, 教育, 科技, 时尚, 时政, 游戏, 娱乐.每个类别 新闻为5000 条,共 50000 条新闻,利用这 50000 条 数据来训练模型.其测试集和验证集如下

  • 验证集: 500*10
  • 测试集: 1000*10

3. 模型实现

代码如下:

 model_input = keras.layers.Input((seq_length,), dtype='float64')embedding = keras.layers.Embedding(vocab_size+1, 256, input_length=seq_length(model_input)LSTM = keras.layers.LSTM(256,return_sequences=True)(embedding)ATT= Attention(name="weights")(LSTM )FC1 = keras.layers.Dense(256, activation="relu")(ATT)droped = keras.layers.Dropout(0.5)(FC1)FC2 = keras.layers.Dense(num_classes, activation="softmax")(droped)model = keras.models.Model(inputs=model_input, outputs=FC2)

模型讲解链接:

基于LSTM-Attention的中文新闻文本分类-深度学习文档类资源-CSDN下载

4.结果分析

实验环境:开python3.6.5、tensorflow==1.12、keras==2.2.4

模型 P R F
LSTM 0.97 0.97 0.97
LSTM-Attention 0.98 0.98 0.98

LSTM-Attention 分类模型的分类效果要比传统的机器学习分类模型好,原因在于 Attention 计算了
文本中每个词分配的注意力概率分布值,这样可以有效地提取出文本中的关键词,而关键词对文本的语义表达起到了重要的作用,说明 Attention 对文本分类性能的提升起到了一定的作用.

5.总结

本文利用 word2vec 训练大规模中文新闻语料,从大量的文本信息中得到中文词的词向量,作为文
本的特征表达.相比于传统的机器学习提取特征的方法,word2vec 可以自动将语义信息浓缩进数学向量中.基于词向量的文本表示方法,本文对 LSTM 分类模型进行了改进,引入了 Attention 机制.Attention的计算是可微的,可以通过反向传播训练,适用于深度学习中的网络结构,由此设计了 LSTM-Attention模型.从实验结果也可以看出,引入 Attention 机制后的 LSTM 模型对文本的分类效果有了一定程度的提升.但是,Attention 机制的应用也有一定的限制,它需要耗费一定的计算成本,因为需要为每个输入输出组合分别计算注意力分配的概率值,一旦输入输出序列增加,Attention 计算量随之呈指数级增长.

完整代码链接:

https://download.csdn.net/download/weixin_40651515/63420394

https://download.csdn.net/download/weixin_40651515/63420394

基于 LSTM-Attention 的中文新闻文本分类相关推荐

  1. [Pytorch系列-61]:循环神经网络 - 中文新闻文本分类详解-3-CNN网络训练与评估代码详解

    作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址:https://blog.csdn.net/HiWangWenBing/article/detai ...

  2. 基于BERT-PGN模型的中文新闻文本自动摘要生成——文本摘要生成(论文研读)

    基于BERT-PGN模型的中文新闻文本自动摘要生成(2020.07.08) 基于BERT-PGN模型的中文新闻文本自动摘要生成(2020.07.08) 摘要: 0 引言 相关研究 2 BERT-PGN ...

  3. [Pytorch系列-60]:循环神经网络 - 中文新闻文本分类详解-2-LSTM网络训练与评估代码详解

    作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址:https://blog.csdn.net/HiWangWenBing/article/detai ...

  4. 【文本分类】基于BERT预训练模型的灾害推文分类方法、基于BERT和RNN的新闻文本分类对比

    ·阅读摘要: 两篇论文,第一篇发表于<图学学报>,<图学学报>是核心期刊:第二篇发表于<北京印刷学院学报>,<北京印刷学院学报>没有任何标签. ·参考文 ...

  5. 基于神经网络语言模型的中文新闻文本聚类算法

    一.新闻文本集  其中  通过TF-IDF排序 中的词(由大到小),选择其中的 t 个词作为关键字,,是对应关键字的TF-IDF值. 二.神经网络语言模型 输入:该词的上下文中相邻的几个词向量(词袋模 ...

  6. 基于朴素贝叶斯和LSTM的两种新闻文本分类方法

    新闻文本分类 文章目录 新闻文本分类 一.项目背景 二.数据处理与分析 三.基于机器学习的文本分类--朴素贝叶斯 1. 模型介绍 2. 代码结构 3. 结果分析 四.基于深度学习的文本分类--LSTM ...

  7. 基于BERT-PGN模型的中文新闻文本自动摘要生成

    论文创新点 1.将BERT与指针生成网络(PGN)相结合,提出了一种面向中文新闻文本的生成式摘要模型,实现快速阅读: 2. 结合多维语义特征的BERT-PGN模型对摘要原文的理解更加充分,生成的摘要内 ...

  8. NLP实战-中文新闻文本分类

    目录 1.思路 2.基于paddle的ERINE模型进行迁移学习训练 3.分步实现 3.1 获取数据 (1)数据解压 (2)将文本转成变量,这里为了好计算,我只选了新闻标题做文本分类 3.2 中文分词 ...

  9. 基于Python的新浪新闻文本分类

    资源下载地址:https://download.csdn.net/download/sheziqiong/85736113 语料库构建 本项目的语料来源新浪新闻网,通过 spider.py 爬虫模块获 ...

最新文章

  1. 【面试】迄今为止把同步/异步/阻塞/非阻塞/BIO/NIO/AIO讲的这么清楚的好文章(快快珍藏)...
  2. 【Python】30个Pandas高频使用技巧
  3. Quartz.NET的使用(附源码)
  4. Find Any File for Mac(文件搜索软件)
  5. ---perl 模块安装方法
  6. 第九十八节,JavaScript语法、关键保留字及变量
  7. node爬取cnode首页数据
  8. 整理电力系统GPS时间同步装置(GPS对时系统)孤岛方案
  9. win2008服务器系统玩红警,win8系统玩红警2共和国卡死的解决办法
  10. 京东API item_search - 按关键字搜索商品
  11. 红外线人体感应灯arduino_Arduino 各种模块篇 人体红外感应模块 proximity sensor
  12. vue中实现 楼层效果
  13. 初学01-夜神模拟器连接Android Studio
  14. 顶级“黑客”能厉害到什么地步?无信号也能上网,专家:高端操作!
  15. 怎么在mysql查看运行日志_如何查看mysql运行、访问记录等日志
  16. ar vr mr 计算机技术,VR、AR、MR、还有云计算,他们到底是什么?
  17. 高校间计算机专业交流研讨会,第七届全国高校计算机网络教学暨网络工程专业建设研讨会...
  18. 项目预算包括管理储备__成本基准只包括应急储备
  19. kali Linux单用户模式的退出方法
  20. 带头双向循环链表的模拟实现

热门文章

  1. 数据中台-资产管理、数据安全
  2. 暗影精灵5学计算机够用吗,使用一个月 聊聊我对暗影精灵5的感受
  3. vue css过渡及过渡钩子函数介绍
  4. java is as,as-is是什么意思
  5. Unity2D游戏使游戏角色跳跃的脚本(包括长按跳跃加成)
  6. ##模拟图灵机 XN*2的运算
  7. python解锁电脑屏幕_使用Python解锁计算机屏幕
  8. Springboot学生作业管理系统毕业设计-附源码251208
  9. 辅助设计是用计算机进行绘图和过程设计,高中通用技术 技术与设计1《第三节 “计算机辅助制图”教学设计》...
  10. mongodb $符号的神奇用法+mongo数据类型