1 背景
这是16年提出的论文Supervised and Semi-Supervised Text Categorization using LSTM for Region Embeddings。
文本分类在具体应用中包含,情感分析和话题分类任务等。基于CNN的“region Embedding + pooling”模式,每次卷积实质上是对小块区域的文本采样并生成其区域特征,池化过程则是综合所有区域特征的作用,最后得到优质的文本表示来分类。RNN是一种比CNN更贴近文本序列特质的网络结构,且其序列化的特征意味着我们无法同步的进行训练(CNN是并行的),训练时间更长。
本文中,作者把“region Embedding + pooling”引入到LSTM中,并对RNN对全局的信息的感知和训练时间做出改进,提出 监督和半监督综合的模型优化模型。
2 模型
传统的LSTM模型,是把文本使用词向量表示后输入到LSTM网络中,并且只利用LSTM最后一层的信息,这样导致,LSTM对长序列文本感知的信息不完整。而这篇论文的网络结构是,把最开始的信息也感知进来。创新点:
1、消除词向量层,直接使用one-hot作为输入。通常我们是使用词向量作为输入,也就是,把one-hot乘上词向量矩阵,从而获得每个词的对应词向量作为输入。这里不是很懂,不使用词向量带来什么好处呢?个人认为,词向量有很多好处,更能表示词之间的距离,当然,只使用one-hot,可能矩阵更加稀疏?
2、增加池化。基础LSTM模型的一个弊端在于最后一个隐层需要概括全局,实际上,随着文本长度的不断增加,这是很难做到的。因此,这里使用每个时刻的输出共同进行池化得到全局性的输出,建模模型记忆的负担。
3、分块。由于前面使用池化,可以把长段文本分为若干个小段落,每个段落使用LSTM进行特征提取,然后合并(池化)。
4、简化LSTM模型和采用双向LSTM。
好的,上面是这篇论文的监督模型(supervised model)部分。
作者尝试引入半监督模型。思路是:
监督模型可以表示为:
通过根据特定窗口内词语的相互预测,获得另一批词语的特性,并且同时加入到原网络中。
改进的半监督网络是:
其实,从无监督网络,作者想作的是,将无标签样本放入到LSTM网络中,并且获得向量表示(tv-embeddings),然后把这些从无标签样本的 tv-embeddings, 放入到有监督网络进行训练。
但,还是不理解这个无监督网络是怎样训练的??
3、总结
可以说,这篇论文架构非常清晰,尝试把cnn的优势以及利用无标签样本来改善RNN网络在文本上的应用。
reference:
1、搜狐翻译;
2、原论文Supervised and Semi-Supervised Text Categorization using LSTM for Region Embeddings