windows下 word2vec学习笔记

参考博客地址:简单教程-word2vec处理英文语料

1)安装

gensim是word2vec的python版本,官网地址:gensim官网

在Anaconda相应的环境下执行以下命令,即可安装成功:

pip install  --upgrade gensim

gensim中函数的使用方法,英文版介绍:gensim API

2)使用训练好的模型

google提供了word2vec训练好的model: GoogleNews-vectors-negative300.bin.gz 。

下载地址:https://drive.google.com/uc?id=0B7XkCwpI5KDYNlNUTTlSS21pQmM&export=download

网盘地址:http://pan.baidu.com/s/1kTCQqft

使用WinRAR解压后。原文利用了下面python代码将文件转为txt格式,得到的txt文件大约10G,生成时需要一些时间。

from gensim.models.keyedvectors import KeyedVectors

model = KeyedVectors.load_word2vec_format('GoogleNews-vectors-negative300.bin', binary=True)
model.save_word2vec_format('GoogleNews-vectors-negative300.txt', binary=False)

实际过程中发现生成txt后,可能由于文件过大,读取时间非常慢,执行3)中的操作时特别消耗时间。后来发现直接用bin也可以,所以不需要执行上面的代码。

3)利用下面的代码读入model,测试结果。

from gensim.models.keyedvectors import KeyedVectors

model = KeyedVectors.load_word2vec_format("GoogleNews-vectors-negative300.bin", binary=True)

# 查看word的词向量
print(model['word'])
print(model['word'][0])

# 查看所有的词
print(model.wv.vocab.keys())

# 计算两个词的相似度/相关程度
y1 = model.similarity("woman", "man")
print("woman和man的相似度为:", y1)

# 计算某个词的相关词列表
y2 = model.most_similar("good", topn=20)  # 20个最相关的
print ("和good最相关的词有:")
for item in y2:
    print(item[0], item[1])

# 寻找对应关系
print(' "boy" is to "father" as "girl" is to ...? ')
y3 = model.most_similar(['girl', 'father'], ['boy'], topn=3)
for item in y3:
    print(item[0], item[1])

more_examples = ["he his she", "big bigger bad", "going went being"]
for example in more_examples:
    a, b, x = example.split()
    predicted = model.most_similar([x, b], [a])[0][0]
    print("'%s' is to '%s' as '%s' is to '%s'" % (a, b, x, predicted))

# 寻找不合群的词
y4 = model.doesnt_match("breakfast cereal dinner lunch".split())
print("不合群的词:", y4)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值