一、原理
Glove原理部分有大神已经写好的,此处给出链接方便查看:
https://blog.csdn.net/coderTC/article/details/73864097
Glove和skip-gram、CBOW模型对比
Cbow/Skip-Gram 是一个local context window的方法,比如使用NS来训练,缺乏了整体的词和词的关系,负样本采用sample的方式会缺失词的关系信息。
另外,直接训练Skip-Gram类型的算法,很容易使得高曝光词汇得到过多的权重
Global Vector融合了矩阵分解Latent Semantic Analysis (LSA)的全局统计信息和local context window优势。融入全局的先验统计信息,可以加快模型的训练速度,又可以控制词的相对权重。
二、Glove实践
1、 开发环境准备
本人采用的是Ubuntu16.04的系统,安装了python 2.7
首先打开终端,安装gensim
sudo easy_install --upgrade gensim 就好了~~~~~~~~~~~~~
2、下载官方的代码
官方的代码的GitHub在此 : https://github.com/stanfordnlp/GloVe
该代码为c的版本,并且跑在linux下