常见文本分类模型

如题所述

第1个回答  2022-07-23

Fasttext 模型架构和 Word2vec 的 CBOW 模型架构非常相似,下面就是 FastText 模型的架构图:

与传统图像的CNN网络相比, TextCNN 在网络结构上没有任何变化, 从下图可以看出 TextCNN 其实只有一层 convolution ,一层 max-pooling , 最后将输出外接 softmax 来 n分类

一般取 前向/反向LSTM 在最后一个时间步长上隐藏状态,然后进行拼接,在经过一个 softmax 层进行一个多分类;或者取 前向/反向LSTM 在每一个时间步长上的隐藏状态,对每一个时间步长上的两个隐藏状态进行 拼接concat ,然后对所有时间步长上拼接后的隐藏状态取均值,再经过一个 softmax层 进行一个多分类

与 TextCNN 比较类似,都是把文本表示为一个嵌入矩阵,再进行卷积操作。不同的是 TextCNN 中的文本嵌入矩阵每一行只是文本中一个词的向量表示,而在 RCNN 中,文本嵌入矩阵的每一行是当前词的词向量以及上下文嵌入表示的拼接

相对于以前的文本分类中的 BiLSTM 模型, BiLSTM+Attention 模型的主要区别是在 BiLSTM 层之后,全连接 softmax 分类层之前接入了一个叫做 Attention Layer 的结构

第一层采用 text region embedding ,其实就是对一个 n-gram 文本块进行卷积,得到的 feature maps 作为该文本块的 embedding 。然后是 convolution blocks 的堆叠,就是两个卷积层与 shortcut 的组合。 convolution blocks 中间采用 max-pooling ,设置步长为2以进行负采样。最后一个 pooling层 将每个文档的数据整合成一个向量

NLP新人,欢迎大家一起交流,互相学习,共同成长~~

相似回答