深度学习之文本分类 ----FastText_fasttext文本分类(1)

本文介绍了FastText,一种高效的深度学习词向量表示方法,用于文本分类。文章详细讲述了FastText的结构、优点,如何安装和配置,以及进行文本分类的步骤,包括数据预处理和模型训练、预测与验证准确度。
摘要由CSDN通过智能技术生成

FastText

FastText是一种典型的深度学习词向量的表示方法,它非常简单通过Embedding层将单词映射到稠密空间,然后将句子中所有的单词在Embedding空间中进行平均,进而完成分类操作。

FastText是一个三层的神经网络,输入层、隐含层和输出层。
在这里插入图片描述
FastText的优点:

使用浅层的神经网络实现了word2vec以及文本分类功能,效果与深层网络差不多,节约资源,且有百倍的速度提升

深度学习和机器学习的区别:

与传统机器学习不同,深度学习既提供特征提取功能,也可以完成分类的功能。机器学习需要再根据提取到的特征再进行分类。

安装FastText
使用pip安装

pip install fasttext

因为FastText依赖C++的环境,安装的时候可能会报错,有的是C++ 11
有的是C++14看报错里面缺少那个版本的C++环境就安装那个版本的环境就可以了

使用FastText进行文本分类的一般步骤
在这里插入图片描述

数据格式的要求:

__label__标签 文本内容  或  文本内容 __label__标签
__label__标签\t文本内容  或  文本内容\t__label__标签
文本内容和标签之间用\t或空格都可以
目前这几种形式都支持

数据预处理:
将原数据处理为数据要求的格式,分词以后词于词之间用空格连接
这个根据自己数据的情况自己进行处理
训练模型

import fasttext
model = fasttext.train_supervised('train.csv', lr=1.0, wordNgrams=2, verbose=2, minCount=1, epoch=25, loss="hs")     # 训练模型
# train.csv 文件路径,也可以是txt文件,里面的参数根据需要调
"""
 训练一个监督模型, 返回一个模型对象
 input: 训练数据文件路径
 lr: 学习率
 dim: 向量维度
 ws: cbow模型时使用
 epoch: 次数
 minCount: 词频阈值, 小于该值在初始化时会过滤掉
 minCountLabel: 类别阈值,类别小于该值初始化时会过滤掉
 minn: 构造subword时最小char个数
 maxn: 构造subword时最大char个数
 neg: 负采样
 wordNgrams: n-gram个数
 loss: 损失函数类型, softmax, ns: 负采样, hs: 分层softmax
 bucket: 词扩充大小, [A, B]: A语料中包含的词向量, B不在语料中的词向量
 thread: 线程个数, 每个线程处理输入数据的一段, 0号线程负责loss输出
 lrUpdateRate: 学习率更新
 t: 负采样阈值
 label: 类别前缀
 verbose: ??
 pretrainedVectors: 预训练的词向量文件路径, 如果word出现在文件夹中初始化不再随机
 model object

 """

预测数据
使用predict预测数据,预测一段文本属于的类别

model.predict(x)  # x文本内容 返回的数据格式(('\_\_label\_\_4',), array([0.99441689]))
# 可能性最大的标签和准确率
  

使用test验证模型的准确率,传入的是一个文件,文件的格式和训练集一样

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

需要这份系统化资料的朋友,可以戳这里获取

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值