问题描述
我已经用 Python 训练了一个 FastText 模型并将文件保存到一个文件夹中。这些是文件夹的内容:
fasttext.model
fasttext.model.trainables.syn1neg.npy
fasttext.model.trainables.vectors_ngrams_lockf.npy
fasttext.model.trainables.vectors_vocab_lockf.npy
fasttext.model.wv.vectors.npy
fasttext.model.wv.vectors_ngrams.npy
fasttext.model.wv.vectors_vocab.npy
如何在 MATLAB 中加载模型并提取某些单词的词嵌入? 这就是我们在 Python 中所做的:
from gensim.models.fasttext import FastText
model = FastText.load(fasttext.model)
vector = model.wv[word]
MATLAB 中有类似的东西吗?如何在 MATLAB 中获取 Python 中的 FastText 模型生成的词嵌入并使用它们?
解决方法
使用trainWordEmbedding和readWordEmbedding函数
训练和测试你的词嵌入:“emb” 词嵌入不需要词袋。它只需要标记化的文档(“cleanDoc”)。
emb = trainWordEmbedding(cleanDoc,"Dimension",100)
writeWordEmbedding(emb,"medEmb.vec");
列出嵌入中的词汇: emb.词汇