code: https://github.com/tgisaturday/Seq2CNN

我们的模型Seq2CNN包括两部分,抽取输入文本摘要的序列部分,处理摘要的卷积部分,然后进行分类,Seq2CNN可以分类不同长度的文本,不进行预处理,提出GWS方法进行训练,GWS用在损失函数上。

1 Introduction

信息分类的重要性。

文本分类的应用,垃圾邮件过滤,新闻分类,情感分类。

在计算机视觉中,卷积神经网络获得很好的结果,输入必须是固定长度的,TextCNN的参数个数取决于输出文本的长度,所以必须对文本进行pad或剪切以获得特定长度,这样会丢失信息。TextCNN使用文本摘要可以获得性能的替身。

摘要抽取有两种方式:

  1. 抽取型摘要抽取:从原文本抽取几个句子
  2. 抽象型摘要抽取:压缩原文本,可能使用原文本没有的词语。

这两种方法都可以使不同长度的文本变成特定长度的文本,并保持原文本的重要特征。

TextRank是基于图的抽取型摘要抽取方法,TextRank给文本中所有句子进行排序,这在结构化的文本比如新闻比较有用。

使用seq2seqRNNs进行抽象性摘要抽取,使用attention可以注意输入的不同部分,seq2seq在抽象型摘要抽取获得重大成果。

本论文的模型包括两部分:seq部分和卷积部分。

基于注意力的seq部分抽取文本摘要,然后输入到cnn部分,TextCNN再对特征进行分类,两部分使用non-static的词嵌入。

 

2 Related Work

采用摘要抽取进行分类分类已有人做过,摘要抽取采用LSA,这是抽取式摘要抽取,提出的模型使用的是未标记的数据进行SVM分类,由于数据的领域不同,使用TextRank进行抽取式摘要抽取,TextCNN进行分类。

我们使用Bahdanau attention,

我们使用的attention解码和编码进行摘要抽取和seq2seqRNNs与attention模型相似,

seq2seq模型要求训练集包括输入文本和相应的摘要抽取。

采用多任务,即摘要抽取和分类任务,但是效果不好,因为训练早期获得的摘要包含较多的UNK标记,所以,我们注重

 

3 Seq2CNN Model

Abstractive Text Classification Using Sequence-to-convolution Neural Networks

3.1 Sequential Block

seq模块包含attentional 解码编码的RNN,把一个句子编码成一个固定长度,获得抽象型摘要,编码器包含bidirectional的RNN,解码器包含uni-directional的RNN,使用LSTM的RNN,隐藏层包含128个单元,LSTM使用dropout。

前向的LSTM编码器读取输入序列,后向的LSTM读取相反的顺序,这种方法中,编码器获得的固定长度的向量包含了前面和后面的词的摘要,在attention的机制下,编码器决定注意输入文本的哪部分,并注意对于摘要有用的部分。

3.2 Convolution Block

基于TextCNN的卷积部分,获得n*k大小的向量表示,n表示词的个数,k表示词嵌入的维度,每个滤波器在输入上抽取一种特征并采用max-pooling操作,模型使用不同的滤波器获得不同的特征,这些特征进行全连接的softmax层获得标签的概率分布。

将seq块获得的摘要输入卷积层,获得向量表示,使用ReLU作为非线性函数,滤波器的大小为3,4,5,并且每个滤波器都是32个,在每个卷积层后添加块规则化,规则化可以加快训练速度,降低协变量的转移。

3.3 Word Embedding Block

从训练数据中获得2w到3w个词语,并且有最低的频率f,小于f的词语删除,embedding层是non-static,词嵌入的维度是100。

Abstractive Text Classification Using Sequence-to-convolution Neural Networks

Abstractive Text Classification Using Sequence-to-convolution Neural Networks

3.6 Sharing Word Embedding for Summarization and Classification

摘要抽取和分类共享词嵌入,seq块在最小化seq损失时更新词嵌入,另外,卷积块在最小化分类损失时更新词嵌入。

3.7 Optimization

SGD,Adam优化器,β1=0.9β2=0.999,ϵ=0.1,learning rate=0.001,exponential rate=0.95,dropout=0.7,gradient clipping的梯度归一化限制在5。

卷积层的初始化采用He Normal initializer,全连接层的初始化采用Xavier initializer,其他权重的初始化采用uniform distribution,min=-1和max=1,mini-batch=256。

4 Experiments

三种不同的数据处理方法:full-text,crop&pad,summarize。

full-text:取数据集中最长的文本作为maxlen

crop&pad:pad到特定长度或是剪切长于maxlen的

summarize:摘要抽取,采用抽取型的摘要抽取,TextRank。

所有的预处理都是一样的

4.1 Datasets

Abstractive Text Classification Using Sequence-to-convolution Neural Networks]

 

4.2 Text Classification

Abstractive Text Classification Using Sequence-to-convolution Neural Networks

抽取型摘要抽取:测试不同的文本长度的影响,没有一种数据预处理可以使所有的数据集获得最好的效果,采用TextRank进行摘要抽取很有用。

抽象型摘要抽取:

4.3 Text Summarization

抽取型摘要抽取无法获得好的摘要,如果原始文本很短的话,所以Vanilla CNN and TextRank(Vanilla CNN Sum(20))在Yahoo问答数据集上效果较差,Seq2CNN对于短文本效果较好,seq块可以获得好的摘要,

Abstractive Text Classification Using Sequence-to-convolution Neural Networks

4.4 Gradual Weight Shift

Abstractive Text Classification Using Sequence-to-convolution Neural Networks

Abstractive Text Classification Using Sequence-to-convolution Neural Networks

5 Conclusion

提出Seq2CNN,可以训练不同的文本长度,提出新的训练模式,即GWS,多任务的损失,改变权重的大小。

 

相关文章: