FastText
一、论文
- 《Enriching Word Vectors with Subword Information》
- 《Bag of Tricks for Efficient Text Classification》
二、参考
1.b站视频
https://www.bilibili.com/video/BV1aW411e728?from=search&seid=629886085065972795
2. b站视频
https://www.bilibili.com/video/BV1Vt4y1X799?p=8
3. 知乎
https://zhuanlan.zhihu.com/p/32965521
4. FastText学习笔记
https://blog.csdn.net/ymaini/article/details/81489599?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522160233348619725222440959%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=160233348619725222440959&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v25-3-81489599.pc_search_result_cache&utm_term=FastText&spm=1018.2118.3001.4187
5. NLP︱高级词向量表达(二)——FastText(简述、学习笔记)
https://blog.csdn.net/sinat_26917383/article/details/54850933?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf
6. MAC+Anaconda安装MXNet
https://blog.51cto.com/zhuxianzhong/2412065
三、原理
-
fastText 方法包含三部分:模型架构、层次 Softmax 和 N-gram 特征。
-
FastText词向量与word2vec对比:
FastText= word2vec中 cbow + h-softmax的灵活使用
灵活体现在两个方面:
1)模型的输出层:word2vec的输出层,对应的是每一个term,计算某term的概率最大;而fasttext的输出层对应的是 分类的label。不过不管输出层对应的是什么内容,起对应的vector都不会被保留和使用;
2)模型的输入层:word2vec的输出层,是 context window 内的term;而fasttext 对应的整个sentence的内容,包括term,也包括 n-gram的内容; -
fasttext和word2vec两者本质的不同,体现在 h-softmax的使用。
Wordvec的目的是得到词向量,该词向量 最终是在输入层得到,输出层对应的 h-softmax 也会生成一系列的向量,但最终都被抛弃,不会使用。
fasttext则充分利用了h-softmax的分类功能,遍历分类树的所有叶节点,找到概率最大的label(一个或者N个)