tensorflow2.0五种机器学习算法对中文文本分类

向AI转型的程序员都关注了这个号????????????

机器学习AI算法工程  公众号:datayx

中文商品评论短文本分类器,可用于情感分析,各模型的准确率均达到90%以上

运行环境:

tensorflow2.0

python3

数据集:

京东商城评论文本,10万条,标注为0的是差评,标注为1的是好评。

路径:data/goods_zh.txt

已实现的模型:

  1. Transfromer

  2. word2vec+textCNN

  3. fastext

  4. word2vec+LSTM/GRU

  5. word2vec+LSTM/GRU+Attention

  6. word2vec+Bi_LSTM+Attention

项目代码获取方式

关注微信公众号 datayx  然后回复 中文分类  即可获取。

AI项目体验地址 https://loveai.tech

1. Transfromer

Transformer由论文《Attention is All You Need》提出,现在是谷歌云TPU推荐的参考模型。

Attention is All You Need:

https://arxiv.org/abs/1706.03762

Transformer的主体结构图:

tensorflow2.0五种机器学习算法对中文文本分类

模型分为编码器和解码器两个部分。

  • 编码器由6个相同的层堆叠在一起,每一层又有两个支层。第一个支层是一个多头的自注意机制,第二个支层是一个简单的全连接前馈网络。在两个支层外面都添加了一个residual的连接,然后进行了layer nomalization的操作。模型所有的支层以及embedding层的输出维度都是dmode。

解码器也是堆叠了六个相同的层。不过每层除了编码器中那两个支层,解码器还加入了第三个支层,如图中所示同样也用了residual以及layer normalization。

2.textCNN

Yoon Kim在论文(2014 EMNLP) Convolutional Neural Networks for Sentence Classification提出TextCNN。

https://arxiv.org/abs/1408.5882

卷积神经网络CNN应用到文本分类任务,利用多个不同size的kernel来提取句子中的关键信息(类似于多窗口大小的ngram,从而能够更好地捕捉局部相关性。

tensorflow2.0五种机器学习算法对中文文本分类

3.fastext

fasttext是facebook开源的一个词向量与文本分类工具,在2016年开源,典型应用场景是“带监督的文本分类问题”。提供简单而高效的文本分类和表征学习的方法,性能比肩深度学习而且速度更快。

https://github.com/facebookresearch/fastText

fastText结合了自然语言处理和机器学习中最成功的理念。这些包括了使用词袋以及n-gram袋表征语句,还有使用子词(subword)信息,并通过隐藏表征在类别间共享信息。我们另外采用了一个softmax层级(利用了类别不均衡分布的优势)来加速运算过程。

4.RNN ( LSTM/GRU/Bi-LSTM )

RNN(Recurrent Neural Network)是一类用于处理序列数据的神经网络。首先我们要明确什么是序列数据,摘取百度百科词条:时间序列数据是指在不同时间点上收集到的数据,这类数据反映了某一事物、现象等随时间的变化状态或程度。这是时间序列数据的定义,当然这里也可以不是时间,比如文字序列,但总归序列数据有一个特点——后面的数据跟前面的数据有关系。

RNN的结构及变体

tensorflow2.0五种机器学习算法对中文文本分类

这是一个标准的RNN结构图,图中每个箭头代表做一次变换,也就是说箭头连接带有权值。左侧是折叠起来的样子,右侧是展开的样子,左侧中h旁边的箭头代表此结构中的“循环“体现在隐层。

在展开结构中我们可以观察到,在标准的RNN结构中,隐层的神经元之间也是带有权值的。也就是说,随着序列的不断推进,前面的隐层将会影响后面的隐层。图中O代表输出,y代表样本给出的确定值,L代表损失函数,我们可以看到,“损失“也是随着序列的推荐而不断积累的。

除上述特点之外,标准RNN的还有以下特点:


阅读过本文的人还看了以下:

不断更新资源

深度学习、机器学习、数据分析、python

 搜索公众号添加: datayx  

tensorflow2.0五种机器学习算法对中文文本分类

长按图片,识别二维码,点关注

AI项目体验

https://loveai.tech

tensorflow2.0五种机器学习算法对中文文本分类

相关文章:

  • 2021-05-26
  • 2022-01-02
  • 2021-07-15
  • 2021-10-12
  • 2022-01-16
  • 2021-12-05
  • 2021-12-06
猜你喜欢
  • 2021-09-25
  • 2021-08-15
  • 2021-12-04
  • 2021-07-19
  • 2021-12-12
  • 2022-12-23
相关资源
相似解决方案