对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多线程用法实例详解
Jan 15 Python
Python编程之列表操作实例详解【创建、使用、更新、删除】
Jul 22 Python
在python2.7中用numpy.reshape 对图像进行切割的方法
Dec 05 Python
python 处理telnet返回的More,以及get想要的那个参数方法
Feb 14 Python
Python_查看sqlite3表结构,查询语句的示例代码
Jul 17 Python
Python pandas自定义函数的使用方法示例
Nov 20 Python
Python Celery多队列配置代码实例
Nov 22 Python
10个python3常用排序算法详细说明与实例(快速排序,冒泡排序,桶排序,基数排序,堆排序,希尔排序,归并排序,计数排序)
Mar 17 Python
Python新手如何理解循环加载模块
May 29 Python
Python中的Cookie模块如何使用
Jun 04 Python
Python如何绘制日历图和热力图
Aug 07 Python
Python实现敏感词过滤的4种方法
Sep 12 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
win7下memCache的安装过程(具体操作步骤)
2013/06/28 PHP
PHP实现支持SSL连接的SMTP邮件发送类
2015/03/05 PHP
PHP中foreach()用法汇总
2015/07/02 PHP
PHP重置数组为连续数字索引的几种方式总结
2018/03/12 PHP
JavaScript中的对象化编程
2008/01/16 Javascript
ExtJs 3.1 XmlTreeLoader Example Error
2010/02/09 Javascript
用方法封装javascript的new操作符(一)
2010/12/25 Javascript
jQuery中实现动画效果的基本操作介绍
2013/04/16 Javascript
JavaScript 创建运动框架的实现代码
2013/05/08 Javascript
js调用css属性写法
2013/09/21 Javascript
jquery如何把数组变为字符串传到服务端并处理
2014/04/30 Javascript
JavaScript中的alert()函数使用技巧详解
2014/12/29 Javascript
JavaScript中setFullYear()方法的使用详解
2015/06/11 Javascript
超级给力的JavaScript的React框架入门教程
2015/07/02 Javascript
js控制文本框只能输入中文、英文、数字与指定特殊符号的实现代码
2016/09/09 Javascript
jQuery Ztree行政地区树状展示(点击加载)
2016/11/09 Javascript
详解js数组的完全随机排列算法
2016/12/16 Javascript
js时间戳格式化成日期格式的多种方法介绍
2017/02/16 Javascript
微信小程序 两种为对象属性赋值的方式详解
2017/02/23 Javascript
jQuery validata插件实现方法
2017/06/25 jQuery
Angular4绑定html内容出现警告的处理方法
2017/11/03 Javascript
浅析JS抽象工厂模式
2017/12/14 Javascript
vue动态合并单元格并添加小计合计功能示例
2020/11/26 Vue.js
python的re模块应用实例
2014/09/26 Python
Python实现list反转实例汇总
2014/11/11 Python
djano一对一、多对多、分页实例代码
2019/08/16 Python
Python安装tar.gz格式文件方法详解
2020/01/19 Python
Python通过类的组合模拟街道红绿灯
2020/09/16 Python
app内嵌H5 webview 本地缓存问题的解决
2020/10/19 HTML / CSS
linux面试题参考答案(5)
2016/11/05 面试题
致跳远、跳高运动员广播稿
2014/01/09 职场文书
社区居务公开实施方案
2014/03/27 职场文书
人民检察院起诉书
2015/05/20 职场文书
Python中re模块的元字符使用小结
2022/04/07 Python
纯CSS实现一个简单步骤条的示例代码
2022/07/15 HTML / CSS
CSS元素定位之通过元素的标签或者元素的id、class属性定位详解
2022/09/23 HTML / CSS