小小搬运工周末也要学习一下~~虽然和世界没关 但还是地铁上看书吧, 大老勿怪 今天来说一下 文本分类必备经典模型

模型 SOTA!模型资源站收录情况 模型来源论文
RAE https://sota.jiqizhixin.com/models/models/c4afbfa6-a47f-4f7c-85fa-8b7ba8382f65
收录实现数量:1
Semi-Supervised Recursive Autoencoders for Predicting Sentiment Distributions
DAN https://sota.jiqizhixin.com/models/models/b7189fbd-871f-4e13-b4fd-fc9747efde11
收录实现数量:1
Deep Unordered Composition Rivals Syntactic Methods for Text Classification
TextRCNN https://sota.jiqizhixin.com/models/models/a5a82cbe-98b7-4f3d-87ae-f9fd59caa55e
收录实现数量:1
支持框架:TensorFlow
Recurrent Convolutional Neural Networks for Text Classification
Multi-task https://sota.jiqizhixin.com/models/models/351b1aba-c543-437a-8cf8-9b027c5c42b7
收录实现数量:1
支持框架:PyTorch
Recurrent Neural Network for Text Classification with Multi-Task Learning
DeepMoji https://sota.jiqizhixin.com/models/models/9f50abc9-d67e-483a-bb44-e10c3baeb327
收录实现数量:8
支持框架:TensorFlow、PyTorch、Keras
Using millions of emoji occurrences to learn any-domain representations for detecting sentiment, emotion and sarcasm
RNN-Capsule https://sota.jiqizhixin.com/models/models/f8cd1ed1-5ebe-42bf-8672-a1d2d9c1c97f
收录实现数量:1
支持框架:TensorFlow
Investigating Capsule Networks with Dynamic Routing for Text Classification

文本分类是自然语言处理中最基本、最经典的任务,大部分自然语言处理任务都可以看作是分类任务。近年来,深度学习在众多研究领域中获得了巨大的成功,如今,也成为了 NLP 领域的标配技术,广泛渗透入文本分类任务中。

与数字、图像不同,对文本的处理强调精细化的处理能力。传统的文本分类方法一般需要对输入模型的文本数据进行预处理,此外还需要通过人工标注的方法来获得良好的样本特征,然后使用经典的机器学习算法对其进行分类。类似的方法包括 NaiveBayes(NB)、K 近邻(KNN)、支持向量机 SVM 等。特征提取的水平对文本分类效果的影响甚至高于图像分类,而文本分类中的特征工程往往非常耗时且计算成本高。2010 年后,文本分类的方法逐渐过渡到深度学习模型。应用于文本分类的深度学习通过学习一系列的非线性变换模式将特征工程直接映射到输出,从而将特征工程集成到模型拟合过程中,一经应用就获得了巨大的成功。

与图像分类模型不同,文本分类模型一般不会采用堆叠模块、修改深度模型结构等方式去改进,更多则是通过引入其它技术手段改进模型效果,例如引入注意力机制、预训练、图神经网络、胶囊网络等。所以在介绍经典文本分类模型时,更多的是介绍为了解决文本分类中的哪一类具体问题,针对性的引入了哪些专门的技术 trick,以及这些引入的 trick 是如何与原有的经典架构融合的。

此外,NLP 领域中大量工作都聚焦于前端的词、语句、文本的处理或语义理解,目的是为下游的各类任务服务,当然也包括文本分类任务。为了更聚焦于文本分类模型,我们在这篇文章中只介绍专门的文本分类模型,其它 NLP 模型会放在后续的专题报告中介绍。最后,文本分类模型以 BERT 的出现明显呈现出两个不同的发展阶段,BERT 提出后(2019 年之后),单纯基于 RNN、CNN 改进的且效果比较突出的方法就比较少了。

一、ReNN

递归神经网络(Recursive Neural Network,ReNN)可以自动学习文本的语义,并自动学习语法树结构,而无需进行特征设计。ReNN 是最早期的应用于文本分类的深度学习模型。与传统模型相比,基于 ReNN 的模型提高了性能,并且由于排除了用于不同文本分类任务的特征设计,节省了人力成本。我们具体介绍 ReNN 中的 RAE 模型。

1.1 RAE

递归自动编码器(Recursive AutoEncoder,RAE)被用来预测每个输入句子的情感标签分布,并学习多词短语的表述。在做文本分析时,依据词向量得到某一段文字的向量空间,然后逐层向上分析,继而得到整段文字的向量表示,对这个向量分析得到用户的情感。RAE 相关论文首次发表在 EMNLP 2011 中。图1给出了一个 RAE 模型的说明,该模型从无监督的文本中学习短语和完整句子的向量表示以及它们的层次结构。作者扩展了模型,在层次结构的每个节点上学习情感标签的分布。

图1. RAE 架构说明,RAE 学习短语的语义向量表示。词索引(橙色)首先被映射到语义向量空间(蓝色),然后,被同一个自动编码器网络递归地合并成一个固定长度的句子表示。每个节点的向量被用作预测情感标签分布的特征
半监督递归自动编码器(Semi-Supervised Recursive Autoencoders)
模型旨在为大小可变的短语在无监督&半监督的情况下寻找训练机制,这些词表征能用在后续任务中。本文首先介绍神经网络词表征,再提出一种基于autoencoder的递归模型,进而引入本文模型 RAE,以及 RAE 能学到短语、短语结构和情感分布联合表征原因。

1)神经词汇表征(Neural Word Representations)。首先将词表征为连续的向量。有两种方法,第一种方法是简单初始化每个词向量,通过一个高斯分布进行采样;第二种方法是通过无监督的方法进行词向量的预训练,这类模型能够在向量空间中学到词表征,通过梯度迭代词向量从他们共现的统计特征中捕获语法和语义信息。

2)传统递归自动编码器(Traditional Recursive Autoencoders)。传统的自动编码器作用是学习输入的表征,一般用于预给定的树结构,如图 2:

图2. 递归自动编码器在二进制树上的应用说明。没有填充的节点只用于计算重建误差。一个标准的自动编码器(方框内)在树的每个节点上都被重新使用
3)用于结构预测的无监督递归自动编码器(Unsupervised Recursive Autoencoder for Structure Prediction)。在没有给定输入结构的情况下,RAE 的目标是最小化子树中子节点对的重构误差,再通过贪心算法重构树结构。此外,作者还引入 Weighted Reconstruction 和 Length Normalization 以降低重构误差。

4)半监督的递归自动编码器(Semi-Supervised Recursive Autoencoders)。作者拓展了 RAE 用于半监督训练,去预测句子&短句级的目前分布 t。RAE 的优势之一在于树构建的每个节点都能关联到分布词向量表征,能被作为短语的特征表示。图 3 显示了一个半监督的 RAE 单元。

图3. 非终端树节点的 RAE 单元的图示。红色节点显示用于标签分布预测的有监督的 softmax 层

当前 SOTA!平台收录 RAE 共 1 个模型实现资源。

模型 SOTA!平台模型详情页
RAE 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/models/models/c4afbfa6-a47f-4f7c-85fa-8b7ba8382f65

二、MLP

多层感知器(MultiLayer Perceptron,MLP),有时被俗称为 "vanilla "神经网络,是一种简单的神经网络结构,用于自动捕捉特征。如图 4 所示,我们展示了一个三层的MLP 模型。它包含一个输入层,一个所有节点都有激活函数的隐藏层以及一个输出层。每个节点都用一定的权重

TextRCNN、TextCNN、RNN相关推荐

  1. fastText、TextCNN、TextRNN……这里有一套NLP文本分类深度学习方法库供你选择 作者:机器人圈 / 微信号:ROBO_AI发表时间 :2017-07-28 图:pixabay

    fastText.TextCNN.TextRNN--这里有一套NLP文本分类深度学习方法库供你选择 「机器人圈」编译:嗯~阿童木呀.多啦A亮 这个库的目的是探索用深度学习进行NLP文本分类的方法. 它 ...

  2. NLP-分类模型:短文本分类概述【FastText、TextCNN、TextRNN、TextRCNN、DPCNN】

    一.概述​ 随着信息技术的发展,最稀缺的资源不再是信息本身,而是对信息的处理能力.且绝大多数信息表现为文本形式,如何在如此大量且复杂的文本信息中如何获取最有效的信息是信息处理的一大目标.文本分类可以帮 ...

  3. 利用word2vec、textCNN、jieba对事故文本多分类及致因修复(三维向量)

    中文分词 + 数据集三维向量化 + TextCNN 一.背景 经过几天的测试及模拟建模训练,尝试了机器学习中的一些常用模型,例如Lasso.LR.SVM.XGBoost.GBTD等,发现效果并不如人意 ...

  4. [Python人工智能] 二十八.Keras深度学习中文文本分类万字总结(CNN、TextCNN、LSTM、BiLSTM、BiLSTM+Attention)

    从本专栏开始,作者正式研究Python深度学习.神经网络及人工智能相关知识.前一篇文章分享了BiLSTM-CRF模型搭建及训练.预测,最终实现医学命名实体识别实验.这篇文章将详细讲解Keras实现经典 ...

  5. [模型]CNN、Text-CNN、PCNN学习笔记

    CNN 卷积层 池化层 Dropout层 Text-CNN PCNN

  6. TextCNN原理、结构、代码

    文章目录 原理 网络 embedding convolution and pooling 模型图 代码 有个需求,给短文本分类,然后看了下文本分类的算法 传统机器学习算法:分为特征提取.分类两部分 深 ...

  7. NLP精选10个实现项目推荐-涉及预训练Bert、知识图谱、智能问答、机器翻译、对话等...

    自然语言处理技术近几年发展非常快,像BERT.GPT-3.图神经网络.知识图谱等技术被大量应用于项目实践中. 今年大厂的NLP面试中对项目方面的考察深度也随之提升了很多,经常会被面试官揪着细节一步一步 ...

  8. 10大NLP精选项目-涉及预训练Bert、知识图谱、智能问答、机器翻译、对话等

    自然语言处理技术近几年发展非常快,像BERT.GPT-3.图神经网络.知识图谱等技术被大量应用于项目实践中. 今年大厂的NLP面试中对项目方面的考察深度也随之提升了很多,经常会被面试官揪着细节一步一步 ...

  9. 强烈推荐十大NLP主流经典项目:预训练BERT、知识图谱、智能问答、机器翻译、文本自动生成等...

    自然语言处理技术近几年发展非常快,像BERT.GPT-3.图神经网络.知识图谱等技术被大量应用于项目实践中. 今年大厂的NLP面试中对项目方面的考察深度也随之提升了很多,经常会被面试官揪着细节一步一步 ...

最新文章

  1. spring 全局变量_[Spring]-Spring框架-02-IOC容器
  2. Linux系统设置全局的默认网络代理
  3. 装有linux的硬盘装到不同主机,把ubuntu系统安装进移动硬盘,可在不同电脑上运行...
  4. python 解决conda的environment未被激活解决方案
  5. todo文件说明已停止工作_番茄ToDo,一款颜值功能兼备的番茄钟。
  6. GitHub:再见,master!
  7. 怎么解决xp系统不能安装NET Framework4.0?
  8. 7-5 考试座位号 (15 分)
  9. [开源] 使用 Python 轻松操作已存在的表
  10. 【java】java 并发编程 CyclicBarrier 源码分析
  11. FastDFS学习总结(2)--Tracker与Storage配置详解
  12. heartbeat和keepalive
  13. Unity3D教程笔记——unity初始02
  14. Gartner:2017年十大科技趋势盘点
  15. elk笔记25--快速体验APM
  16. 【数字图像处理】图像滤波C语言实现(中值,均值,高斯)
  17. python3 最基础
  18. C#--扁平化窗体UI
  19. Kubernetes权限管理与控制-RBAC
  20. 数据结构—C语言:校园导航系统(最短路径两种算法:深度搜素以及Dijkstra)

热门文章

  1. 关键字驱动和数据驱动
  2. UDT协议-基于UDP的可靠数据传输协议
  3. 分块矩阵求行列式的一道题
  4. python绘制缓和曲线_autocad绘制缓和曲线
  5. C语言打开中文路径文件
  6. 在线重定义在线更换分区表分区类型
  7. JavaFX实现网络对话程序设计(互联网程序设计课程 第2讲)
  8. [libxml2]_[C/C++]_[使用libxml2读取分析xml文件]
  9. 双主机切换下导致的显示器闪动
  10. Python错误之 SyntaxError: invalid syntax的解决方法总结