对Python中gensim库word2vec的使用详解
2019/7/15 0:48:16
本文主要是介绍对Python中gensim库word2vec的使用详解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
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中gensim库word2vec的使用详解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程