前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于tensorflow+CNN的报警信息短文本分类

基于tensorflow+CNN的报警信息短文本分类

作者头像
潇洒坤
发布2018-10-25 15:01:55
1.2K3
发布2018-10-25 15:01:55
举报
文章被收录于专栏:简书专栏简书专栏简书专栏

2018年10月15日笔记

tensorflow是谷歌google的深度学习框架,tensor中文叫做张量,flow叫做流。

CNN是convolutional neural network的简称,中文叫做卷积神经网络。

文本分类是NLP(自然语言处理)的经典任务。

0.编程环境

操作系统:Win10

python版本:3.6

集成开发环境:jupyter notebook

tensorflow版本:1.6

1.致谢声明

本文是作者学习《使用卷积神经网络以及循环神经网络进行中文文本分类》的成果,感激前辈;

github链接:https://github.com/gaussic/text-classification-cnn-rnn

2.配置环境

使用卷积神经网络模型要求有较高的机器配置,如果使用CPU版tensorflow会花费大量时间。

读者在有nvidia显卡的情况下,安装GPU版tensorflow会提高计算速度50倍。

安装教程链接:https://blog.csdn.net/qq_36556893/article/details/79433298

如果没有nvidia显卡,但有visa信用卡,请阅读我的另一篇文章《在谷歌云服务器上搭建深度学习平台》,链接:https://www.jianshu.com/p/893d622d1b5a

3.下载数据

数据集下载链接: https://pan.baidu.com/s/1nvfAWk2Wg1F4xZd2qkq5yA 提取码: 86bh

数据集总共大小71kB,文件夹结构如下图所示:

image.png

1.data文件夹是原始数据,其中有4个csv文件,分别代表4个分类;

2.cnn_package.py文件是代码文件,可以通过python cnn_package.py命令运行;

3.cnn_test.ipynb文件是可以分步运行的代码文件,可以通过jupyter notebook打开服务后访问;

4.shortTextClassification.ipynb文件是做数据处理的代码文件,将data中的数据转换为之后的4个pickle文件和1个词汇表文件;

5.test_content_list.pickle文件是测试集内容列表文件;

6.test_label_list.pickle文件是测试集标签列表文件;

7.train_content_list.pickle文件是训练集内容列表文件;

8.train_label_list.pickle文件是训练集标签列表文件;

9.vocabulary.txt文件是词汇表文件;

10.报警信息短文本分类.zip文件是前面10个文件的压缩结果。

基于当前文件夹打开cmd,在其中输入命令并运行:python cnn_package.py

运行结果如下图所示,上方红框表示100次迭代训练过程,下方红框表示混淆矩阵报告表

image.png

4.完整代码

完整代码已经在数据集文件中给出,即cnn_test.ipynb文件和cnn_package.py文件;

shortTextClassification.ipynb文件中代码的作用是将文本文件转换为二进制文件,即4个pickle文件;

cnn_test.ipynb文件中有作者整理好的代码,思路清晰,易于理解;

从工程开发的角度考虑,本文作者在cnn_package.py文件中封装了一个类TextClassification,对于样本数量在10万左右的分类任务较为适用。

5.推荐阅读

因为本文作者写了类似的文章,并且比本片文章的样本数量更多,难度更大。

1.理解cnn_test.ipynb文件推荐阅读《基于tensorflow+CNN的新浪新闻文本分类》,链接:https://cloud.tencent.com/developer/article/1351828

2.理解cnn_package.py文件推荐阅读《基于tensorflow+CNN的垃圾邮件文本分类》,链接:https://cloud.tencent.com/developer/article/1355177

6.总结

1.本文是作者第9个NLP小型项目,数据共有1712条。

2.本文是一个简单的例子,容易进行上手和实践,本文作者通过本文中代码的练习,完成了类的封装。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.10.17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0.编程环境
  • 1.致谢声明
  • 2.配置环境
  • 3.下载数据
  • 4.完整代码
  • 5.推荐阅读
  • 6.总结
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档