TextCNN Convolutional Neural Networks for Sentence Classification阅读笔记

论文原文 Convolutional Neural Networks for Sentence Classification
论文信息 EMNLP2014
论文解读 Zhenyu Zhang & Hytn Chen
更新时间 2020-02-19

文本分类简介

发展历史历经基于规则的文本分类,基于特征的文本分类以及基于神经网络的文本分类三大阶段。

基于规则的文本分类基本思想就是使用人工编写特定的规则来进行分类,一般情况下,当文本中含有特定的词语、短语或者模式时即将其判断为相应的类别,是最古老也是最简单的一种分类方法。

工程流程就是输入文本,规则匹配,最后输出类别

基于特征的文本分类基本思想就是通过人工设计和提取特征,也就是特征工程之后,使用机器学习模型来捕获句子中蕴含的关键信息,从而减少噪声词对最终结果的影响。

以向量空间模型为例,首先使用词袋模型表示每个词;再使用词项作为特征项,TF-IDF值作为词项的权重;之后使用加权求和得到文本表示;最后训练一个分类器来进行文本分类。

基于神经网络的文本分类基本思想就是首先将输入的文本进行分词等预处理操作之后,将句子中的单词进行词嵌入,再用编码器得到句子表示,最终得到文本的目标类别。

本文就是基于神经网络的文本分类的开山之作,使用的是卷积神经网络CNN,有关卷积神经网络的经典核心,可以阅读斯坦福大学CS231n的这篇详解

阅读过后应当对于相关概念有所了解了,但是实际编代码的时候可能对于其中细节还不了解,主要有两个基础的概念较为重要,需要有感性理解,就是batch normalizationdropout

论文提出的模型

整体模型结构简图如下

在这里插入图片描述

对于该模型的理解有很多资料,在了解CNN流程之后可参考该篇文章

实验部分

该模型使用了七个文本分类的数据集如下:

MR:情感分类二分类数据集(正极性和负极性)

SST-1:斯坦福情感分类标准数据集(5类,中立类+正负极性各两类)

SST-2:斯坦福情感二分类数据集

Subj:主客观数据集(判断主客观二分类)

TREC:问题类型的数据集(共6类)

CR:商品评价极性判断数据集(二分类)

MPQA:观点极性判断数据集(二分类)

超参数设置:L2正则约束,Dropout率0.5,filter size有3,4,5,feature map大小是100

优化算法:Adadelta

预训练词向量:word2vec

主实验结果图如下

在这里插入图片描述

model里面第一个CNN-rand是随机初始化的词向量,CNN-static是训练时固定预训练词向量的模型,CNN-non-static是训练时对预训练词向量进行finetune的模型,CNN-multichannel就是混合了static和non-static两种输入的模型(该种模型在小规模的数据集上表现很好,核心做的事情就是削弱了微调后的词向量偏离原始值的幅度)

与该篇论文较为相关的一篇论文就是在IJCNLP2017发表的A Sensitivity Analysis of CNN for Sentence Classification,该篇论文探讨了CNN在文本分类领域的应用场景,给出了一系列的实验分析和调参指导,也是在本文模型上(TextCNN)的更深改进。

发布了33 篇原创文章 · 获赞 45 · 访问量 2530

猜你喜欢

转载自blog.csdn.net/nstarLDS/article/details/104401833