为什么gensim.word2vec中两个词袋之间的相似度要这样计算?

2023-12-20

def n_similarity(self, ws1, ws2):
    v1 = [self[word] for word in ws1]
    v2 = [self[word] for word in ws2]
    return dot(matutils.unitvec(array(v1).mean(axis=0)), matutils.unitvec(array(v2).mean(axis=0)))

这是我从gensim.word2Vec摘录的代码,我知道两个单词的相似度可以通过余弦距离计算,但是两个单词集呢?该代码似乎使用每个 wordvec 的平均值,然后计算两个平均向量的余弦距离。我对word2vec知之甚少,这样的过程有一些基础吗?


取所有词向量的平均值是将它们简化为单个向量的最简单方法,因此可以使用余弦相似度。直觉是,通过将所有词向量相加,您可以在结果中得到所有词向量(含义)。然后除以向量的数量,这样较大的词袋就不会得到更长的向量(无论如何,这对余弦相似度并不重要)。

还有其他方法可以将整个句子简化为单个向量,这是一种复杂的方法。我在一篇文章中写了一些相关内容相关问题 https://stackoverflow.com/a/15173821/419338就这样。从那时起,一系列新算法被提出。更容易访问的之一是段落向量 http://cs.stanford.edu/~quocle/paragraph_vector.pdf,如果您熟悉的话,理解起来应该不会有问题word2vec.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么gensim.word2vec中两个词袋之间的相似度要这样计算? 的相关文章

  • 用于估计(一元)困惑度的 NLTK 包

    我正在尝试计算我所拥有的数据的困惑度 我正在使用的代码是 import sys sys path append usr local anaconda lib python2 7 site packages nltk from nltk co
  • NLTK 中的无监督 HMM 训练

    我只是想进行非常简单的无监督 HMM 训练nltk http www nltk org 考虑 import nltk trainer nltk tag hmm HiddenMarkovModelTrainer from nltk corpu
  • ANEW 字典可以用于 Quanteda 中的情感分析吗?

    我正在尝试找到一种方法来实施英语单词情感规范 荷兰语 以便使用 Quanteda 进行纵向情感分析 我最终想要的是每年的 平均情绪 以显示任何纵向趋势 在数据集中 所有单词均由 64 名编码员按照 7 分李克特量表在四个类别上进行评分 这提
  • BERT 输出不确定

    BERT 输出是不确定的 当我输入相同的输入时 我希望输出值是确定性的 但我的 bert 模型的值正在变化 听起来很尴尬 同一个值返回两次 一次 也就是说 一旦出现另一个值 就会出现相同的值并重复 如何使输出具有确定性 让我展示我的代码片段
  • 将 word2vec 模型查询的结果保存在 csv 文件中?

    我正在语料库上训练 word2vec 模型 然后查询该模型 这工作正常 但我正在运行一个实验 需要针对不同的条件调用模型 保存每个条件的模型 查询每个条件的模型 然后将查询的输出保存到 csv 文件中 例如进一步分析所有条件 我研究了 ge
  • AttributeError:类型对象“Word2Vec”没有属性“load_word2vec_format”

    我正在尝试实现 word2vec 模型并收到属性错误 AttributeError 类型对象 Word2Vec 没有属性 load word2vec format 下面是代码 wv Word2Vec load word2vec format
  • 如何在Python中使用多处理来加速循环执行

    我有两个清单 列表 A 包含 500 个单词 列表 B 包含 10000 个单词 我正在尝试为列表 A 找到与 B 相关的相似单词 我正在使用 Spacy 的相似函数 我面临的问题是计算需要很长时间 我是多处理使用的新手 因此请求帮助 如何
  • 从 Penn Treebank 格式的文本中提取子句

    说我有一句话 After he had eaten the cheese Bill went to the grocery 在我的程序中 我得到以下输出 PARSE TREE ROOT S SBAR IN After S NP PRP he
  • 如何使用FeatureUnion转换PipeLine中的多个特征?

    我有一个 pandas 数据框 其中包含有关用户发送的消息的信息 对于我的模型 我感兴趣的是预测消息的缺失收件人 即给定消息的收件人 A B C 我想预测还有谁应该成为收件人的一部分 我正在使用 OneVsRestClassifier 和
  • 高维数据的ELKI Kmeans聚类任务失败错误

    我有 60000 个文档 我在其中处理过gensim得到一个60000 300的矩阵 我将其导出为csv文件 当我导入这个时ELKI环境和运行Kmeans聚类 我遇到以下错误 Task failed de lmu ifi dbs elki
  • Java 中的自然语言处理 (NLP) [重复]

    这个问题在这里已经有答案了 可能的重复 Java 有没有好的自然语言处理库 https stackoverflow com questions 870460 java is there a good natural language pro
  • Rasa core 和 Rasa nlu 之间的区别

    我试图理解之间的区别拉莎核心 https core rasa ai and Rasa NLU https nlu rasa ai installation html从官方文档看的 但我不太明白 我的理解是Rasa core用于引导对话流程
  • 在 Gensim 中通过 ID 检索文档的字符串版本

    我正在使用 Gensim 进行一些主题建模 并且已经达到使用 LSI 和 tf idf 模型进行相似性查询的程度 我取回 ID 集和相似点 例如 299501 0 64505910873413086 如何获取与 ID 在本例中为 29950
  • 在 Python 中识别大型字符串列表中的项目之间的文本相似性的最有效方法是什么?

    下面的代码实现了我想要实现的结果 有一个称为 引理 的字符串列表 其中包含特定类别单词的可接受形式 另一个列表称为 形式 包含在不同时期和特定语言的不同方言的大量文本中发现的单词的许多拼写变体 对于 forms 中的每个单词 我想获取 le
  • 使用自定义层运行 Keras 模型时出现问题

    我目前正在攻读学士学位论文FIIT STU https www fiit stuba sk en html page id 749 其主要目标是尝试复制和验证以下结果study http arxiv org abs 2006 00885 这
  • 分词统计方法

    我想解决分词问题 从没有空格的长字符串中解析单词 例如我们想要从中提取单词somelongword to some long word 我们可以通过字典的动态方法来实现这一点 但我们遇到的另一个问题是解析歧义 IE orcore gt or
  • 如何改进 NLTK 中的荷兰语 NER 词块划分器

    感谢这个伟大的答案 我使用 NLTK 和 Conll2002 语料库训练自己的荷兰语 NE 词块划分器 有了一个良好的开端 NLTK 荷兰语命名实体识别 https stackoverflow com questions 11293149
  • 更换色谱柱时出现稀疏效率警告

    def tdm modify feature names tdm non useful words kill stampede trigger cause death hospital minister said told say inju
  • BERT 获取句子嵌入

    我正在复制代码这一页 https colab research google com drive 1yFphU6PW9Uo6lmDly ud9a6c4RCYlwdX 我已将 BERT 模型下载到本地系统并获取句子嵌入 我有大约 500 00
  • 如何在 scikit-learn 的 SVM 中使用非整数字符串标签? Python

    Scikit learn 具有相当用户友好的用于机器学习的 python 模块 我正在尝试训练用于自然语言处理 NLP 的 SVM 标记器 其中我的标签和输入数据是单词和注释 例如 词性标记 而不是使用双精度 整数数据作为输入元组 1 2

随机推荐

  • .filter 和 .includes 用数组过滤数组?

    我对 javascript 很陌生 正在学习一门课程来获得一些经验 但有时我对返回概念感到困惑 基本上这是我坚持的任务 有一系列不必要的单词 迭代数组以过滤掉这些单词 将剩余的单词保存在名为 betterWords 的数组中 有多种方法可以
  • 循环 FPS 下降的可能原因?

    我正在用 opengl 编写一个新的代码库 很早就遇到了一个奇怪的错误 这是重复且可预测的帧速率明显波动 我知道它绝对与渲染的对象成正比 它还与屏幕尺寸成正比 不是视口尺寸 不是窗口尺寸 只是物理设备尺寸 大约是 0 2 1 低 高 帧的比
  • Elasticsearch 映射未按预期工作

    具有以下映射 curl X PUT localhost 9200 cambio indice pretty true d mappings el tipo properties name type string age type integ
  • 是否可以将伪元素的堆叠顺序设置在其父元素下方? [复制]

    这个问题在这里已经有答案了 我正在尝试使用以下元素来设计元素的样式 after伪元素CSS选择器 element position relative z index 1 element after position relative z i
  • 使用 grouper 列出唯一值

    我有一个数据框 其中索引是日期时间 列 A 和 B 是对象 我需要每周查看 A 和 B 的独特值 我设法获得每周的唯一值计数 我正在使用 pd grouper 函数 但我很难获得每周的唯一值 此代码为我提供了每周的唯一值计数 df uniq
  • web.xml 顺序或过滤器和侦听器

    对于 Java EE Web 应用程序 我有一个实现 ServletRequestListener 的侦听器和一个过滤器 有没有办法在 web xml 中指定应该在侦听器之前调用过滤器 我已经尝试在侦听器之前声明过滤器及其映射 但监听器仍然
  • 如何根据回复动态显示星级?

    我需要根据响应动态显示星级 我能够显示从 1 到 5 的值 但如果评级为 0 则不会显示空星 如果评级 0 4 则也显示 1 颗星 我的控制器 function use strict angular var app angular modu
  • 拦截所有鼠标事件

    我正在寻找一种方法来拦截网页上的所有鼠标事件 尤其是点击 我的第一直觉是 body click 但是 如果为特定事件附加了任何其他处理程序 则这不会捕获该事件 将问题放在上下文中 我正在为我的网络应用程序编写一个 统计 模块 我们希望跟踪页
  • python进程之间共享资源

    我想在多个 python 脚本之间共享多个资源 理想情况下 我想做的是运行我的主程序 它包含一些脚本范围的变量 然后 我想将完全相同的程序分叉到一个新的 shell 中 并让它访问我的脚本范围变量 我正在研究多重处理 但我不确定另一种方法是
  • Perl 和 Python 之间正则表达式行为的差异?

    我有几个电子邮件地址 email protected cdn cgi l email protection and email protected cdn cgi l email protection 在 Perl 中 我可以采取To 原始
  • 在 CDH4.0.1 VM 上使用 MRV1 运行字数统计示例

    我从以下位置下载了虚拟机https downloads cloudera com demo vm vmware cloudera demo vm cdh4 0 0 vmware tar gz https downloads cloudera
  • 如何在 Spring Boot 单元测试中模拟 JWT 身份验证?

    我已使用 Auth0 将 JWT 身份验证添加到我的 Spring Boot REST API 中 如下所示这个例子 https auth0 com docs quickstart backend java spring security5
  • 将“RSA/ECB/PKCS7Padding”与 Bouncy Castle 一起使用

    我尝试使用 RSA ECB PKCS7Padding 进行加密 JCE 不支持它 所以我下载了Bouncy Castle 但Bouncy Castle似乎也不支持这种转换 以下代码 Security insertProviderAt new
  • 为什么一百万个双整型转换的执行时间与空循环相同?

    我正在编写一个具有大量 int double int 转换的高性能组件 因此我需要知道它们之间的执行时间 static double ToDouble int val gt double val static int ToInt doubl
  • 如何在Android项目的gradle中更改proguard映射文件名

    我有一个基于 gradle 的 android 项目 我想在为我的构建生成该文件名后更改它 如何做呢 upd 如何在 build gradle 中完成 由于我可以访问我的口味和其他硬性内容 因此我想根据口味 构建变体版本创建映射文件名 更简
  • ejabberd:从 mysql 数据库检索聊天历史记录

    我正在构建一个基于的聊天系统ejabberd http www ejabberd im 使用 iOS 客户端 以及XMPP框架 https github com robbiehanson XMPPFramework 我当前的聊天系统仅支持用
  • Robot Framework 中的静态变量

    机器人框架中是否有静态类型变量之类的东西 如果是这样我该如何调用它 或者是通过 python 文件来实现的解决方案 我试图解决的问题是 我希望设置一个变量一次 并让它记住设置的值 不幸的是 这个变量位于资源文件中 它与我的测试套件文件分开
  • 让 Scrapy 跟踪链接并收集数据

    我正在尝试在 Scrapy 中编写程序来打开链接并从此标签收集数据 p class attrgroup p 我已经设法让 Scrapy 收集给定 URL 的所有链接 但不跟踪它们 非常感谢任何帮助 你需要屈服Request http doc
  • 加载引导加载程序的第二阶段和/或将控制权转移给它时出现问题

    我的主引导记录代码 bit16 16bit by default org 0x7c00 jmp short start nop bsOEM db OS423 v 0 1 OEM String start cls mov ah 06h Fun
  • 为什么gensim.word2vec中两个词袋之间的相似度要这样计算?

    def n similarity self ws1 ws2 v1 self word for word in ws1 v2 self word for word in ws2 return dot matutils unitvec arra