首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Gensim Doc2Vec找到'Doctag‘和’Doc2Vec‘之间的距离?

用Gensim Doc2Vec找到'Doctag‘和’Doc2Vec‘之间的距离?
EN

Stack Overflow用户
提问于 2018-09-25 00:10:37
回答 1查看 733关注 0票数 1

使用Gensim的Doc2Vec如何找到Doctaginfer_vector()之间的距离

非常感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-25 01:11:51

Doctag是文档向量密钥的内部名称。infer_vector()操作的结果是向量。所以,正如你所问的,这些都是不可比拟的。

您可以通过在培训期间通过model.docvecs[doctag]提供的doc密钥来请求一个已知文档向量的模型。这将与infer_vector()调用的结果相比较。

有了两个矢量,您可以使用scipy例程来计算各种距离。例如:

代码语言:javascript
复制
import scipy.spatial.distance.cosine as cosine_distance
vec_by_doctag = model.docvecs["doc0007"]
vec_by_inference = model.infer_vector(['a', 'cat', 'was', 'in', 'a', 'hat'])
dist = cosine_distance(vec_by_doctag, vec_by_inference)

您还可以查看gensim的Doc2VecKeyedVectors是如何在模型中的similarity()distance()函数中(通过它们的doctag键名)所知的向量之间进行相似性/距离的,在:

https://github.com/RaRe-Technologies/gensim/blob/ca0dcaa1eca8b1764f6456adac5719309e0d8e6d/gensim/models/keyedvectors.py#L1701

https://github.com/RaRe-Technologies/gensim/blob/ca0dcaa1eca8b1764f6456adac5719309e0d8e6d/gensim/models/keyedvectors.py#L1743

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52488877

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档