对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 相关文章推荐
Python2.5/2.6实用教程 入门基础篇
Nov 29 Python
设计模式中的原型模式在Python程序中的应用示例
Mar 02 Python
Django项目中用JS实现加载子页面并传值的方法
May 28 Python
django js实现部分页面刷新的示例代码
May 28 Python
python使用Matplotlib画饼图
Sep 25 Python
Python 中导入csv数据的三种方法
Nov 01 Python
老生常谈python中的重载
Nov 11 Python
使用Python进行防病毒免杀解析
Dec 13 Python
python连接PostgreSQL过程解析
Feb 09 Python
keras模型保存为tensorflow的二进制模型方式
May 25 Python
基于Pygame实现简单的贪吃蛇游戏
Dec 06 Python
Python中使用Opencv开发停车位计数器功能
Apr 04 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中让上传的文件大小在上传前就受限制的两种解决方法
2013/06/24 PHP
那些年我们错过的魔术方法(Magic Methods)
2014/01/14 PHP
php fseek函数读取大文件两种方法
2016/10/12 PHP
Laravel框架实现的rbac权限管理操作示例
2019/01/16 PHP
用显卡加速,轻松把笔记本打造成取暖器的办法!
2013/04/17 Javascript
JS加jquery简单实现标签元素的显示或隐藏
2013/09/23 Javascript
JS获得浏览器版本和操作系统版本的例子
2014/05/13 Javascript
jQuery实用技巧必备(上)
2015/11/02 Javascript
Knockout自定义绑定创建方法
2015/12/26 Javascript
JavaScript tab选项卡插件实例代码
2016/02/23 Javascript
JS实现图片剪裁并预览效果
2016/08/12 Javascript
Vue组件开发初探
2017/02/14 Javascript
JS控件bootstrap suggest plugin使用方法详解
2017/03/25 Javascript
javascript 中Cookie读、写与删除操作
2017/03/29 Javascript
jQuery+pjax简单示例汇总
2017/04/21 jQuery
Vue.js对象转换实例
2017/06/07 Javascript
JavaScript作用域、闭包、对象与原型链概念及用法实例总结
2018/08/20 Javascript
vue实现的组件兄弟间通信功能示例
2018/12/04 Javascript
微信小游戏之使用three.js 绘制一个旋转的三角形
2019/06/10 Javascript
python之import机制详解
2014/07/03 Python
Python绘制的二项分布概率图示例
2018/08/22 Python
python和C++共享内存传输图像的示例
2020/10/27 Python
python 批量将中文名转换为拼音
2021/02/07 Python
Jimmy Choo美国官网:周仰杰鞋子品牌
2018/06/08 全球购物
《最大的“书”》教学反思
2014/02/14 职场文书
个人简历自荐信
2014/06/26 职场文书
民政局个人整改措施
2014/09/24 职场文书
2015年挂职锻炼工作总结
2014/12/12 职场文书
淘宝客服专员岗位职责
2015/04/07 职场文书
中学生运动会广播稿
2015/08/19 职场文书
2016年9月份红领巾广播稿
2015/12/21 职场文书
小学班级标语口号大全
2015/12/26 职场文书
解决Navicat for Mysql连接报错1251的问题(连接失败)
2021/05/27 MySQL
Java面试题冲刺第十八天--Spring框架3
2021/08/07 面试题
MongoDB数据库部署环境准备及使用介绍
2022/03/21 MongoDB
MySQL中一条SQL查询语句是如何执行的
2022/04/08 MySQL