一、TextCNN→TextRNN→TextBiRNN→TextRCNN→Text-ATT-BI-RNN→HAN
1.TextCNN
特点:CNN的kernel_size类似N-gram中的N。以滑窗的方式+max_pooling的方式进行重要特征抽取。
结构:input→embedding→convolution→pooling→concated→softmax→output
缺点:CNN的窗口大小不好确定,如果size太小容易失去一些信息;如果太大,参数太多;textCNN无法解决文本时序特征的问题,对于长文本的处理效果并不好。
2.TextRNN
特点:textRNN的这个时间点的输出,除了考虑这个时间点的输入外还考虑了上一个时间点的信息,符合文本词与词 句与句之间有顺序的结构特征,可以处理长文本,解决了CNN对长文本处理效果不佳的问题
结构:input→embedding→RNN(LSTM/GRU)→concated→softmax→output
缺点:传统的RNN是将输入转化成固定向量然后交给softmax进行分类,但是这样的RNN存在一个问题:在训练时梯度的分量可以再长序列上指数增长或者衰减,这种梯度的消失或者爆炸的问题使得RNN模型难以在序列中学习到长距离的相关性。
LSTM:内部有一个独立的cell,仅在认为必要时才公开其内容,算是一种特殊的RNN
3.Text-Bi-RNN
双向RNN
特点:相比于textRNN来说,text-bi-RNN既考虑了文本的上文内容,也考虑了文本的下文内容
结构:input→embedding→BIRNN(LSTM/GRU)→concated→softmax→output
缺点:与RNN类似
4.TextRCNN
特点:双向循环获取上下文信息,比传统给予窗口的卷积神经网络更能减少噪声,学习文本表示时可以大范围保留词序;其次使用最大池化层对文本信息进行抽取;自动判断哪个特征在文本分类过程中起更重要的作用。
ps:个人疑问:论文作者在原文里面说:“RNN因为特性所以是一个biased model ” ;RNN一般是以最后一个cell的信息或者所有cell的信息取平均作为softmax的输出 是否这样也类似于max_pooling取最重要的信息。
结构:input→embedding→forward RNN + backward RNN →concate →convolution →maxpooling → concated→sigmoid →output
缺点:相比于attention来说,CNN捕捉信息的能力较差;
5.Text_attention_bi_RNN
特点:相比于RNN 采用了attention,attention机制语序模型在不同时间点的状态之间有更直接的联系,相比于CNN来说,有更强的重要信息捕捉能力。
结构:input →embedding→bi-RNN→attention→concated→sigmoid/softmax→output
缺点:
6.HAN
特点:1.利用文档原有的层次结构特征(句子由单词组成,文档由句子组成),先用单词的词向量表示句子,再此基础上以句子向量构建文档的信息表示;2.在文档中,句子对文档的重要性贡献有差异,词对文档贡献度也有差异,而单词和鱼子的重要性依赖于上下文环境。相同的单词在不同的上下文中所表现出的重要程度不一样的。为了描述这个情况,引入注意力机制;3.文章分别从句子和文档两个层次使用attention机制;4.attention机制带来的两个有点:提升分类性能;提升识别出有影响最终分类决策的单词和句子的重要性。
结构:input → embedding → wordencode → wordvector attention →sentenceencode→sentencevector attention → softmax →output
网友评论