NLP模型(三)——FastText介绍

1. FastText 概述

首先,我们得搞清楚,FastText 是什么?有的地方说是分类模型,有的地方又将其用于词向量,那么,FastText究竟指的是什么?我搜集资料时发现很多视频的up主都没弄清楚,其实,FastText 的指向有两个模型,一个就是指向的文本分类模型,首先在论文《Bag of Tricks for Efficient Text Classification》中提出,另一个自然就是词向量模型,首先在文章《Enriching Word Vectors with Subword Information》中提出,接下来我们将会介绍一下两种FastText模型,并将其复现。

2. FastText 分类模型

FastText的分类模型具有速度快、精度高的优点,其分类的准确率甚至不输于大型的深度学习模型,但是由于其模型简单,其训练的速度则要比后者快上好几个数量级。

2.1 结构

FastText在模型结构上采用了 C B O W CBOW CBOW 模型的结构,结构如下:
在这里插入图片描述
其中这里的 x 1 , x 2 , ⋯   , x N x_1,x_2,\cdots,x_N x1,x2,,xN 是输入的词,整个网络与 C B O W CBOW CBOW 都一样,不同之处主要有以下方面

  1. C B O W CBOW CBOW 预测的是中心词,FastText最后输出的是各个标签的概率;
  2. FastText 由于面向的是超多分类以及大量数据的情况,所以FastText 最后的输出采用了层级Softmax,大大优化了模型的运行速度

2.2 n-gram

首先要声明,在原论文中,n-gram并不是FastText必要的步骤,仅仅是一个锦上添花的步骤而已,没有n-gram它还是FastText。

引入n-gram首先是为了解决word2vec中的词序问题,比如两个句子“你礼貌吗”和“礼貌你吗”这两个句子仅仅词序不同,但是意思却天差地别,这种情况word2vec是检测不到词序的不同的,由此提出了n-gram。

注意,词分类模型的n-gram的是word级别的,并不是字符级别的,比如,有如下的句子
I h a v e a n a p p l e I \hspace{0.5em}have\hspace{0.5em} an \hspace{0.5em}apple Ihaveanapple如果n-gram中的 n = 2 n=2 n=2 时,那么输入其中的句子经过n-gram后被分为以下部分 I h a v e , h a v e a n , a n a p p l e I \hspace{0.5em}have,have\hspace{0.5em} an,an \hspace{0.5em}apple

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值