对Python中gensim库word2vec的使用详解


Posted in Python onMay 08, 2018

pip install gensim安装好库后,即可导入使用:

1、训练模型定义

from gensim.models import Word2Vec 
model = Word2Vec(sentences, sg=1, size=100, window=5, min_count=5, negative=3, sample=0.001, hs=1, workers=4)

参数解释:

1.sg=1是skip-gram算法,对低频词敏感;默认sg=0为CBOW算法。

2.size是输出词向量的维数,值太小会导致词映射因为冲突而影响结果,值太大则会耗内存并使算法计算变慢,一般值取为100到200之间。

3.window是句子中当前词与目标词之间的最大距离,3表示在目标词前看3-b个词,后面看b个词(b在0-3之间随机)。

4.min_count是对词进行过滤,频率小于min-count的单词则会被忽视,默认值为5。

5.negative和sample可根据训练结果进行微调,sample表示更高频率的词被随机下采样到所设置的阈值,默认值为1e-3。

6.hs=1表示层级softmax将会被使用,默认hs=0且negative不为0,则负采样将会被选择使用。

7.workers控制训练的并行,此参数只有在安装了Cpython后才有效,否则只能使用单核。

详细参数说明可查看word2vec源代码。

2、训练后的模型保存与加载

model.save(fname) 
model = Word2Vec.load(fname)

3、模型使用(词语相似度计算等)

model.most_similar(positive=['woman', 'king'], negative=['man']) 
#输出[('queen', 0.50882536), ...] 
 
model.doesnt_match("breakfast cereal dinner lunch".split()) 
#输出'cereal' 
 
model.similarity('woman', 'man') 
#输出0.73723527 
 
model['computer'] # raw numpy vector of a word 
#输出array([-0.00449447, -0.00310097, 0.02421786, ...], dtype=float32)

其它内容不再赘述,详细请参考gensim的word2vec的官方说明,里面讲的很详细。

以上这篇对Python中gensim库word2vec的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
把大数据数字口语化(python与js)两种实现
Feb 21 Python
Python的Flask框架及Nginx实现静态文件访问限制功能
Jun 27 Python
Python实现两个list对应元素相减操作示例
Jun 09 Python
对numpy中布尔型数组的处理方法详解
Apr 17 Python
python paramiko利用sftp上传目录到远程的实例
Jan 03 Python
Python常见数字运算操作实例小结
Mar 22 Python
Django 路由控制的实现
Jul 17 Python
使用Python构造hive insert语句说明
Jun 06 Python
Python+logging输出到屏幕将log日志写入文件
Nov 11 Python
使用Djongo模块在Django中使用MongoDB数据库
Jun 20 Python
python 多态 协议 鸭子类型详解
Nov 27 Python
Python Django / Flask如何使用Elasticsearch
Apr 19 Python
用python处理MS Word的实例讲解
May 08 #Python
基于python批量处理dat文件及科学计算方法详解
May 08 #Python
使用Python通过win32 COM实现Word文档的写入与保存方法
May 08 #Python
Ubuntu下使用python读取doc和docx文档的内容方法
May 08 #Python
儿童编程python入门
May 08 #Python
解决python大批量读写.doc文件的问题
May 08 #Python
python在每个字符后添加空格的实例
May 07 #Python
You might like
PHP中如何判断AJAX提交的数据
2012/02/05 PHP
js常用代码段收集
2011/10/28 Javascript
jQuery对象的length属性用法实例
2014/12/27 Javascript
JavaScript前端图片加载管理器imagepool使用详解
2014/12/29 Javascript
简介JavaScript中POSITIVE_INFINITY值的使用
2015/06/05 Javascript
基于PHP和Mysql相结合使用jqGrid读取数据并显示
2015/12/02 Javascript
只需五句话搞定JavaScript作用域(经典)
2016/07/26 Javascript
分享javascript、jquery实用代码段
2016/10/20 Javascript
总结几道关于Node.js的面试问题
2017/01/11 Javascript
addeventlistener监听scroll跟touch(实例讲解)
2017/08/04 Javascript
vue中实现methods一个方法调用另外一个方法
2018/02/08 Javascript
vue之父子组件间通信实例讲解(props、$ref、$emit)
2018/05/22 Javascript
记一次vue-webpack项目优化实践详解
2019/02/17 Javascript
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
2019/07/13 Javascript
基于Taro的微信小程序模板消息-获取formId功能模块封装实践
2019/07/15 Javascript
layui实现多图片上传并限制上传的图片数量
2019/09/26 Javascript
微信小程序新闻网站详情页实例代码
2020/01/10 Javascript
原生JavaScript创建不可变对象的方法简单示例
2020/05/07 Javascript
JS JQuery获取data-*属性值方法解析
2020/09/01 jQuery
vue-router路由懒加载及实现的3种方式
2021/02/28 Vue.js
python使用socket向客户端发送数据的方法
2015/04/29 Python
python下如何查询CS反恐精英的服务器信息
2017/01/17 Python
利用python编写一个图片主色转换的脚本
2017/12/07 Python
tensorflow 打印内存中的变量方法
2018/07/30 Python
python+tkinter实现学生管理系统
2019/08/20 Python
python代码如何实现余弦相似性计算
2020/02/09 Python
Python实现自动打开电脑应用的示例代码
2020/04/17 Python
Windows下pycharm安装第三方库失败(通用解决方案)
2020/09/17 Python
CSS3之边框多颜色Border-color属性使用示例
2013/10/11 HTML / CSS
如何将整数int转换成字串String
2014/03/21 面试题
季度思想汇报
2014/01/01 职场文书
企业精细化管理实施方案
2014/03/23 职场文书
2014年十一国庆节爱国演讲稿
2014/09/23 职场文书
2014工程部年度工作总结
2014/12/17 职场文书
2015年新教师工作总结
2015/04/28 职场文书
2016年学校综治宣传月活动总结
2016/03/16 职场文书