直接上代码吧
现在已经可以直接导入glove文件了,无需再转换了,注意,no_header=True是必须的,
但是当你导入一个word2vec的时候,就选择默认的False就行(binary=False表示对象是txt文件)
w2v= KeyedVectors.load_word2vec_format(glove_file_50,binary=False,no_header=True)
虽然现在使用glove2word2vec任然是可以的的,但是会弹出warning警报,两者转换还需要消耗不少的时间
其实glove文件和word2vec文件只是差了开头的一行:
这是Glove的
the 0.418 0.24968 -0.41242 0.1217 ...
and 0.3465 -0.13545 0.23721 0.01982 ...
...
这是word2vec的,word2vec会多一行来表示单词总数以及词向量维度,no_header就是跳过了这一行内容
<nb_words> <vector_dim>
the 0.418 0.24968 -0.41242 0.1217 ...
and 0.3465 -0.13545 0.23721 0.01982 ...
...