Word2Vec的安装与使用

  • Word2Vec介绍
  • Word2Vec安装
  • Word2Vec使用
  • 安装过程遇到问题
    • 1. error:could not build wheels for word2vec, which is required to install pyproject.toml-based project:
    • 2.error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools“: h:

本案例在win10系统中,使用Python 3.6.5,Word2Vec 0.11.1【word2vec版本不同,使用上有一些差异,尤其在给方法、类传递参数时】。建议能用新的尽量都用新包。

Word2Vec介绍

我们看一下官网怎么说吧:

Python interface to Google word2vec.
Training is done using the original C code, other functionality is pure Python with numpy

Word2Vec诞生于2013年,由Google开源问世。
是一款计算词向量的工具。在这里我们需要辨析的是:Word2Vec不是一个算法,而是计算词向量的工具。
因此,就有了一种简单理解:Word2Vec工具其实是基于CBoW模型和Skip-gram模型的计算词向量的工具。
那么没有接触过自然语言处理的童鞋一定会好奇:“词向量又是什么呢?”
在这里用一个例子尝试说明:

问题:西安 - 陕西 + 江苏 = ?
简单从人的角度出发来看,西安是陕西的省会,“西安”减去“陕西”等于“省会”,“省会”加上“江苏”大概率指的就是“南京”了。
但是机器很难分析出“南京”这个结果,为了帮助机器理解文字,需要想办法将文字以数学的形式表达出来。
因此我们引入的向量的概念,因为向量是可以进行加减的,所以会将文字转化为词语,再转化为向量,由此而来了一种可以分析文字的方法。

说了这么多,再来看对Word2Vec的简单定义:**Word2Vec工具其实是基于CBoW模型和Skip-gram模型的计算词向量的工具。**是不是就更清楚了嘞?

Word2Vec安装

方法1. 可以安装gensim,应为gensim是一个工具箱,里面包含了Word2Vex:
pip install gensim
方法2. 也可以直接安装Word2Vex。需要注意的是安装word2vec需要gcc依赖,如果没有gcc的话,会安装失败。
pip install Word2Vex

注意,安装Word2Vex前需要安装:

  • 1.安装gcc。不然报错:error:could not build wheels for word2vec, which is required to install pyproject.toml-based project
  • 2.Microsoft Visual C++ 14.0。不然报错:error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools“: h
  • 3.安装numpy、scipy,使用pip install即可

Word2Vec使用

  1. 在本次Word2Vec 0.11.1版本中使用:
from gensim.models import Word2Vec
from gensim.models.word2vec import LineSentence
import numpy as np# sentence = LineSentence("content.txt")  #如果语料是文件,可以使用LineSentence准备训练语料
sentence = [["小明", "今天", "要", "去", '少年宫', "游泳"]]  # 准备训练预料
model = Word2Vec(sentences = sentence, vector_size=5, window=5, min_count=1, workers=4) # 生成模型
word_vectors = model.wv['小明'] # 输出词语的向量映射
print(word_vectors) # [-0.06810732 -0.01892805  0.11537147 -0.15043278 -0.0787221 ]
moresentence = [["小明", "和", "小明", "哥哥", "不要", "去", '少年宫', "游泳"]] # 准备训练预料
model.train(corpus_iterable = moresentence, epochs = 1, total_words = 1) # 训练模型
model.save('train_demo.model') # 保存模型
model = Word2Vec.load('train_demo.model')  # 加载模型
# 使用模型
result = model.wv.most_similar(positive=['今天', '游泳'], negative=['少年宫'], topn=2) # 使用模型找出相近的10个词,'今天', '游泳'对相似性有正面贡献,'少年宫'有负面贡献
print(result) # [('去', 0.714894711971283), ('要', -0.5734316110610962)]
distance = model.wv.distance("少年宫", "小明") # 两个单词的距离
print(distance) # 0.22581267356872559
  1. 在之前的Word2Vec版本中使用
from gensim.models import Word2Vec
sentences = [["cat", "say", "meow"], ["dog", "say", "woof"]]
model = Word2Vec(sentences, size=100, window=5, min_count=1, workers=4)
#model.build_vocab(sentences, update=True)  # prepare the model vocabulary
model.train(sentences, total_examples=model.corpus_count, epochs=model.iter)  # train word vectors
model.save('test2.model')
model = Word2Vec.load('test2.model') #加载语料

最终的使用方法以源码为主,源码中有备注案例,大家可以查看。

  1. 注意:

    • 建立模型分解步骤:model = Word2Vec(sentence, vector_size=300, window=5, min_count=1, workers=4) # 生成训练模型

      # 该步骤也可分解为以下三步(但没必要):
      model=gensim.model.Word2Vec() 建立一个空的模型对象
      model.build_vocab(sentences) 遍历一次语料库建立词典
      model.train(sentences) 第二次遍历语料库建立神经网络模型
      
    • 建立模型具体参数:可以看源码
      class Word2Vec(utils.SaveLoad):def __init__(self, sentences=None, corpus_file=None, vector_size=100, alpha=0.025, window=5, min_count=5,max_vocab_size=None, sample=1e-3, seed=1, workers=3, min_alpha=0.0001,sg=0, hs=0, negative=5, ns_exponent=0.75, cbow_mean=1, hashfxn=hash, epochs=5, null_word=0,trim_rule=None, sorted_vocab=1, batch_words=MAX_WORDS_IN_BATCH, compute_loss=False, callbacks=(),comment=None, max_final_vocab=None, shrink_windows=True,):
      

安装过程遇到问题

1. error:could not build wheels for word2vec, which is required to install pyproject.toml-based project:

解决办法见此链接

2.error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools“: h:

解决办法见此链接

Word2Vec的安装与使用相关推荐

  1. python word2vec怎么用_python调用word2vec工具包安装和使用指南

    python调用word2vec工具包安装和使用指南 word2vec python-toolkit installation and use tutorial 环境准备 安装gcc, 安装gcc坑比 ...

  2. Windows python3安装word2vec模块常见错误处理

    参考链接https://www.cnblogs.com/hufulinblog/articles/8311450.html,本文主要讲解本人在安装word2vec遇到的问题,更多问题可以看这篇博客. ...

  3. 一文排除WINDOWS-PYTHON3.7环境安装WORD2VEC包的所有坑

    之前介绍了很多R语言进行自然语言处理方面的东西,不过我们知道在自然语言处理上python平台还是当之无愧的王者,而我的笔记本又是windows的,平时通勤的过程中也想玩玩word2vec该如何做呢,今 ...

  4. DL4J中文文档/语言处理/Word2Vec

    Word2Vec, Doc2vec & GloVe: 用于自然语言处理的神经词嵌入 内容 介绍 神经词嵌入 有趣的Word2Vec结果 给我代码 Word2Vec 剖析 安装,加载与训练 代码 ...

  5. word2vec原理及其Hierarchical Softmax优化

    文章目录 一.什么是word2vec? 1.1 词嵌入(word embedding)介绍 1.2 word2vec概述 二.CBOW模型 2.1 Context滑动窗口 2.2 模型结构 三.Hie ...

  6. (三)用于构建AI语言翻译系统的工具

    目录 介绍 工具和版本 TensorFlow Keras Pandas Word2Vec 下一步 下载源文件 - 3.5 KB 介绍 谷歌翻译工作得如此之好,它通常看起来很神奇.但这不是魔法--这是深 ...

  7. word2vec安装以及使用

    一.安装 我使用的是在linux环境下运行的,所以首先去下载linux环境模拟器,下载的是cygwin因为要使用make命令工具,所以安装时要选中Devel与utils模块,默认安装没有安装make命 ...

  8. [Python人工智能] 九.gensim词向量Word2Vec安装及《庆余年》中文短文本相似度计算

    从本专栏开始,作者正式开始研究Python深度学习.神经网络及人工智能相关知识.前一篇详细讲解了卷积神经网络CNN原理,并通过TensorFlow编写CNN实现了MNIST分类学习案例.本篇文章将分享 ...

  9. word2vec安装使用教程

    1.下载word2vec工具包,http://download.csdn.net/download/hortond/8095703 2.下载之后解压,tar -zxvf word2vec-2014-1 ...

最新文章

  1. 内存地址 哪个程序_记一次排查线上程序内存的忽高忽低,又是大集合惹祸了...
  2. Linux 操作系统原理 — 系统结构
  3. 九州云陈沙克:OpenStack的成功源于自身的开放
  4. python编程做什么工作-什么样的人要学点python编程?请你对号入座
  5. 全国计算机等级考试题库二级C操作题100套(第89套)
  6. 使用Nant构建入门
  7. Python 函数(类)的装饰器与闭包
  8. [转]PKM-个人知识体系建设
  9. endnote 制作GB/T7714《文后参考文献著录规则》的输出格式
  10. 互联网发展阶段的三阶段是什么?从门户到搜索,到移动互联网
  11. Git在dev分支获取master分支最新代码
  12. 原创 | 从土地财政到数据财政
  13. linux中国共享文件,linux上的文件共享服务详解
  14. 创宇滤镜|API防刷|短信邮件接口防刷|验证码防刷|搜索防刷 - 知道创宇云安全
  15. js 万年历农历转阳历 方法_JS实现带阴历的日历功能详解
  16. http 协议大文件下载
  17. python代码运行速度有点慢 ? 教你使用多线程速度飞升
  18. golang coredump分析
  19. 【历史上的今天】3 月 12 日:万维网概念被提出;Google Code 停运;仙童半导体公司被收购
  20. 01_邂逅vue3开发

热门文章

  1. linux修改操作系统语言方法
  2. pmap anon 内存泄露
  3. 七年之痒,从小米6看小米公司的善与罪
  4. 【汇智学堂】docker网络管理之一
  5. Raspberry Pi3驱动Oled ssh1106屏
  6. STAF 删除文件操作
  7. 手把手教你解决PL2303驱动在Win10无法使用
  8. 【项目实战课】基于Pytorch的UGATIT人脸动漫风格化实战
  9. 感冒发烧都能报?小额医疗险了解下!
  10. RadioButtonList功能汇总