gensim vocab索引是相应的1-hot-vector中的索引吗?

问题描述

我正在进行需要直接操纵和嵌入一键向量的研究,并且正在尝试使用gensim来为此加载预训练的word2vec模型。

问题在于它们似乎没有直接的API用于处理1-hot-vector。而且我正在寻找解决方法。

所以我想知道是否有人知道这样做的方法?或者更具体地说,如果这些vocab索引(定义非常模糊)。可以成为对应的1热向量的索引吗?

我发现的上下文:

  • 似乎this question是相关的,但是我尝试通过model.syn0(来自答案中的链接)访问“输入嵌入”(假设它们是一个热门表示),但是我得到了一个非稀疏矩阵。 ..
  • 还出现they refer to word indices as 'doctags'(搜索Doctag /索引)。
  • Here是另一个为索引提供了一些背景信息的问题(尽管还不能完全回答我的问题)。
  • Here是官方文档:

############################################# #

gensim.models.keyedvectors.Vocab(** kwargs)类 基地:对象

单个词汇表项,在内部用于收集每个单词的频率/采样信息,并用于构建二叉树(包括单词叶和内部节点)。

############################################# #

解决方法

是的,您可以将gensim的declarativeContent字向量的index(位置)视为一个维度,即Word2Vec –与所有其他V维度一起,其中V是唯一单词的数量,即1.0

该实现实际上从未创建过一个稀疏或显式表示的矢量。它只是使用单词的索引作为其密集向量的查找-遵循gensim实现最初基于的Google 0.0代码的路径。

(术语“ doctags”仅在word2vec.c(也称为“ Paragraph Vector”-实现)中相关。这里是用于查找文档矢量的不同标记/ int的名称,使用与文档中的单词不同的名称空间。也就是说,在Doc2Vec中,您可以使用Doc2Vec作为文档向量名称,也称为“ doctag”,即使使用字符串令牌{{1} }还在文档中以单词形式出现,由doctag键'doc_007'引用的doc矢量和由word键'doc_007'引用的单词矢量将不是同一内部矢量。)>

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...