对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 相关文章推荐
Django与遗留的数据库整合的方法指南
Jul 24 Python
使用Python简单的实现树莓派的WEB控制
Feb 18 Python
python中子类继承父类的__init__方法实例
Dec 15 Python
快速了解Python中的装饰器
Jan 11 Python
TensorFlow模型保存和提取的方法
Mar 08 Python
用Python实现大文本文件切割的方法
Jan 12 Python
Python中的类与类型示例详解
Jul 10 Python
python实现七段数码管和倒计时效果
Nov 23 Python
已安装tensorflow-gpu,但keras无法使用GPU加速的解决
Feb 07 Python
基于Numba提高python运行效率过程解析
Mar 02 Python
Python matplotlib修改默认字体的操作
Mar 05 Python
Python使用BeautifulSoup4修改网页内容
May 20 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面向对象详解(三)
2015/12/07 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
2017/08/31 PHP
PHP如何使用cURL实现Get和Post请求
2020/07/11 PHP
基于jquery1.4.2的仿flash超炫焦点图播放效果
2010/04/20 Javascript
JS中setInterval、setTimeout不能传递带参数的函数的解决方案
2013/04/28 Javascript
jQuery Ajax调用WCF服务详细教程
2015/03/31 Javascript
jquery 构造函数在表单提交过程中修改数据
2015/05/25 Javascript
JQuery Mobile实现导航栏和页脚
2016/03/09 Javascript
个人网站留言页面(前端jQuery编写、后台php读写MySQL)
2016/05/03 Javascript
利用js编写响应式侧边栏
2016/09/17 Javascript
Javascrip实现文字跳动特效
2016/11/27 Javascript
Bootstrap 响应式实用工具实例详解
2017/03/29 Javascript
JS数组去重常用方法实例小结【4种方法】
2018/05/28 Javascript
详解react阻止无效重渲染的多种方式
2018/12/11 Javascript
layui 实现表格某一列显示图标
2019/09/19 Javascript
javascript实现拖拽碰撞检测
2020/03/12 Javascript
详解JS函数防抖
2020/06/05 Javascript
用Python中的__slots__缓存资源以节省内存开销的方法
2015/04/02 Python
python 判断txt每行内容中是否包含子串并重新写入保存的实例
2020/03/12 Python
python通过函数名调用函数的几种场景
2020/09/23 Python
python操作链表的示例代码
2020/09/27 Python
Html5 webRTC简单实现视频调用的示例代码
2020/09/23 HTML / CSS
美国精品家居用品网站:US-Mattress
2016/08/24 全球购物
Diptyque英国官方网站:源自法国的知名香氛品牌
2019/08/28 全球购物
Crocs欧洲官网:Crocs Europe
2020/01/14 全球购物
数据库笔试题
2013/05/09 面试题
什么是makefile? 如何编写makefile?
2013/01/02 面试题
门卫班长岗位职责
2013/12/15 职场文书
教师节活动主持词
2014/04/02 职场文书
邀请函怎么写
2015/01/30 职场文书
客户付款通知书
2015/04/23 职场文书
幼儿园新学期开学寄语
2015/05/27 职场文书
禁毒心得体会范文
2016/01/15 职场文书
对Golang中的FORM相关字段理解
2021/05/02 Golang
SpringBoot快速入门详解
2021/07/21 Java/Android
Android Studio实现简易进制转换计算器
2022/05/20 Java/Android