如何从 bin 文件中获取 vec 文件?

问题描述

我正在尝试将我的模型与 fasttext unsupervised.py https://github.com/facebookresearch/MUSE 对齐。我用 fasttext 训练了我的模型,并得到了二进制文件 model.bin。当我使用 unsupervised.py 时,我得到

error: ValueError: model.bin has wrong file format

怎么了?我必须有 .vec 文件吗?如何获得?

解决方法

有关 .bin 和 .vec 文件之间区别的信息,您可以阅读此question

无论如何,MUSE 需要 .vec 文件

如果您想将 .bin 文件转换为 .vec 文件,this answer 可能会帮助您。

,

Puthon Gensim 包可以使用其 FastText.load_facebook_model() method 加载 Facebook FastText .bin 模型:

ft_model = FastText.load_facebook_model(path_to_bin)

然后,使用 KeyedVectors' method .save_word2vec_format()with thebinary=False` option 仅将模型包含的 .wv 词向量中的向量保存为纯文本 .vec 文件:

ft_model.wv.save_word2vec_format('ft_model.vec')