利用gensim进行词向量处理和找到相似词

本文介绍了如何使用gensim加载词向量,包括txt、bin和mmap三种格式,重点讨论了mmap模式的快速加载。通过gensim的KeyedVectors模型,演示了词向量的计算和相似词查找。尽管mmap加载速度快,但在计算相似度时并未显著提升效率。建议使用预计算的相似度初始化。同时提到了annoy库作为构建索引以高效检索相似向量的工具。
摘要由CSDN通过智能技术生成

关于词向量

有三种存储格式:

  1. txt
    文本格式,类似 word 0.001233 0.34219 …
  2. bin
    google的序列化,二进制模式;
  3. mmap
    内存共享模式。一个字就是快;加载快。

加载方法

bin格式转mmap;或者txt转mmap(binary=False)

word = '机器学习'

def bin2mmap():
    word2vec_model = KeyedVectors.load_word2vec_format(word2vec_model_path_bin, binary=True, unicode_errors='ignore')
    print(word2vec_model.get_vector(word))

    print(word2vec_model.similar_by_word(word), 10)
    t0 = time.time()
    for i in range(1,100):
        word2vec_model.similar_by_word(word)
    t1 = time.time()
    print("timeusage-word2vec:",(t1-t0))

    word2vec_model.init_sims(replace=True) 
    print(word2vec_model.get_vector(word))

    print(word2vec_model.similar_by_word(word), 10)
    t0 = time.time()
    for i in range(1,100):
        word2vec_model.sim
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值