python - 如何在无监督学习模型(cbow,skipgram)的快速文本中获得最近的邻居?

标签 python nearest-neighbor unsupervised-learning fasttext

fasttext 官方网站(fasttext.cc)上的例子(与词表示相关)表明,可以在用 cbow(或 skip-gram 模型)(简而言之,在无监督学习模型上)导出的向量上计算最近邻。据说这可以使用 get_nearest_neighbors 来完成。模型上的函数 ( model.get_nearest_neighbors )。但是,当我尝试使用 Python (3.7.) 时,它向我显示了该函数在无监督学习模型的 fasttext 中不存在的消息,实际上,当我查看 fasttext 帮助时,我没有看到该函数。唯一存在的类似函数是模型的谓词(model.predict(其中指定了 k)),但是这只能在监督学习模型上完成。

谁能向我解释发生了什么,并帮助我解决这个问题?有没有办法计算fasttext中无监督学习模型的最近邻居? :-)

最佳答案

尽管 fasttext 有一个 get_nearest_neighbor 方法,但他们的 pypi relaese 仍然没有那个方法。

所以要么你可以安装 pyfasttext库并访问其最近邻函数。

from pyfasttext import FastText
model = FastText('model.bin')
model.nearest_neighbors('dog', k=2000)

或者,您可以获得fasttext的最新开发版本,您可以从github repository安装
import fasttext
model = fasttext.load_model('model.bin')
model.get_nearest_neighbors('dog', k=100)

关于python - 如何在无监督学习模型(cbow,skipgram)的快速文本中获得最近的邻居?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57903873/

相关文章:

python - 模拟相关的多变量数据

algorithm - 了解用于切割树状图的 DynamicTreeCut 算法

algorithm - 判断无监督学习算法是否正确的方法或常用方法有哪些

image-processing - 深度网络框架中卷积稀疏编码的实现

python - 返回 tkinter 列表框中选定值的列表

python - Pandas 按多列上的多个自定义聚合函数分组

python - 类型错误 : hp_choice() takes 2 positional arguments but 7 were given

python - PyInstaller 和 OpenGL 错误。导入错误 : cannot import name 'opengl_arrays_modules' from 'PyInstaller.utils.hooks'

python - 为半径 r 内的所有点查询 "Annoy"索引

c - 在 3d 空间中找到有效率的最近邻居