自然语言处理--加载使用facebook的预训练 fastText 模型wiki-news-300d-1M.vec

fastText,与 Word2vec 中预测周围词不同,该算法预测周围的 n 个字符。例如,“whisper”将生成以下两字符的 gram 和 3 字符的 gram:

wh, whi, hi, his, is, isp, sp, spe, pe, per, er

fastText 为每个 n 字符的 gram 训练一个向量表示,其中包括词、拼错的词、词片段,甚至单个字符。这种方法比原来的 Word2vec 能够更好地处理罕见词。

# # .bin文件
# from gensim.models.fasttext import FastText
#
# ft_model = FastText.load_fasttext_format(model_file=MODEL_PATH)
# print(ft_model.most_similar('soccer'))

# .vec文件
from gensim.models import KeyedVectors

FASTTEXTFILE = "xxx\\wiki-news-300d-1M.vec"
ft_model = KeyedVectors.load_word2vec_format(FASTTEXTFILE)
print(ft_model.most_similar('soccer'))

备注:gensim 提供的 fastText API 的功能与 Word2vec 基本一致。在前面的方法也适用于 fastText 模型。

猜你喜欢

转载自blog.csdn.net/fgg1234567890/article/details/112974874