python实现word2vec训练结果bin文件转txt文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python实现word2vec训练结果bin文件转txt文件相关的知识,希望对你有一定的参考价值。

      经理让我把word2vec训练后得到的bin文件转为txt文件,目前还不知道txt文件用来干什么。其实word2vec训练语料时可以选择训练处出bin文件或者txt文件,但是训练出bin文件时过程太漫长,我怕直接训练出txt文件也一样慢,所以还是自己想办法做这个事情了。

      我用到了gensim,这个需要自己安装一下,我的电脑装这个还挺麻烦的。

# -*- coding: utf-8 -*-  
import gensim 
import codecs    
  
def main():  
    path_to_model = result.bin  
    output_file = file.txt  
    bin2txt(path_to_model, output_file)  
  
  
def bin2txt(path_to_model, output_file):  
    output = codecs.open(output_file, w , utf-8)  
    model = gensim.models.KeyedVectors.load_word2vec_format(path_to_model, binary=True)  
    print(Done loading Word2Vec!)  
    vocab = model.vocab  
    for item in vocab:  
        vector = list()  
        for dimension in model[item]:  
            vector.append(str(dimension))  
        vector_str = ",".join(vector)  
        line = item + "\t"  + vector_str   
        output.writelines(line + "\n")  #本来用的是write()方法,但是结果出来换行效果不对。改成writelines()方法后还没试过。
    output.close()  
  
if __name__ == "__main__":  
    main() 

 

以上是关于python实现word2vec训练结果bin文件转txt文件的主要内容,如果未能解决你的问题,请参考以下文章

Python Word2Vec使用训练好的模型生成词向量

让你上瘾的网易云音乐推荐算法,用Word2vec就可以实现

教程 | 在Python和TensorFlow上构建Word2Vec词嵌入模型

学习笔记CB012: LSTM 简单实现完整实现torch小说训练word2vec lstm机器人

利用搜狐新闻语料库训练100维的word2vec——使用python中的gensim模块

word2vec 算法的意外结果