问题标签 [latent-semantic-indexing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
11226 浏览

python - 通过 Gensim 查找未见过文档的主题

我正在使用 Gensim 进行一些大规模的主题建模。我很难理解如何确定未见(非索引)文档的预测主题。例如:我有 2500 万个文档,我已将其转换为 LSA(和 LDA)空间中的向量。我现在想弄清楚一个新文档的主题,我们称之为 x。

根据 Gensim 文档,我可以使用:

其中 doc(x) 是将 x 转换为向量的函数。

然而,问题是上面的变量,topics,返回一个向量。如果我将 x 与其他文档进行比较,该向量很有用,因为它允许我找到它们之间的余弦相似度,但我实际上无法返回与 x 本身相关的特定单词。

我错过了什么,还是 Gensim 没有这种能力?

谢谢,

编辑

拉斯曼斯给出了答案。

我能够使用以下方法展示主题:

0 投票
3 回答
14263 浏览

python - 使用什么 NLP 工具来匹配具有相似含义或语义的短语

我正在做一个项目,该项目要求我将短语或关键字与一组相似的关键字进行匹配。我需要为此执行语义分析。

一个例子:

相关 QT
廉价健康保险
负担得起的健康保险
低成本医疗保险
健康计划,用于更
便宜的健康保险

共同意义

低成本健康保险

这里 Common Meaning 列下的单词应该与 Relevant QT 列下的相匹配。我查看了一堆工具和技术来做同样的事情。S-Match 看起来很有前途,但我必须使用 Python,而不是 Java。潜在语义分析也看起来不错,但我认为它更多地用于基于关键字而不是关键字匹配的文档分类。我对 NLTK 有点熟悉。有人可以提供一些关于我应该前进的方向以及我应该使用哪些工具的见解吗?

0 投票
2 回答
599 浏览

python - 基于主题的推荐系统的用户分析

我正在尝试提出一个基于主题的推荐系统来向用户推荐相关的文本文档。

我在维基百科语料库上使用 gensim 训练了一个潜在语义索引模型。这让我可以轻松地将文档转换为 LSI 主题分布。我现在的想法是以同样的方式代表用户。但是,当然,用户有查看文章的历史记录,以及文章的评分。

所以我的问题是:如何代表用户?

我的一个想法如下:将用户表示为所有查看过的文档的聚合。但是如何考虑评级?

有任何想法吗?

谢谢

0 投票
1 回答
669 浏览

analysis - 潜在语义分析 (LSA) 单值分解 (SVD) 理解

通过我对 LSI(机械工程背景)的适度理解,请耐心等待:

在 LSI 中执行 SVD 后,您有 3 个矩阵:

U、S 和 V 转置。

U 将单词与主题进行比较,S 是每个特征强度的一种度量。Vt 将主题与文档进行比较。

返回 SVD 之前的原始矩阵。如果不做太多(无)深入的代数,似乎:

返回逐项矩阵,该矩阵提供项之间的比较。即一个术语与其他术语的相关程度,一种比较单词而不是组件的DSM(设计结构矩阵)。我可能完全错了,但我在样本数据集上进行了尝试,结果似乎很有意义。但这可能只是偏见(我希望它起作用,所以我看到了我想要的)。由于文档受到保护,我无法发布结果。

不过我的问题是:这有意义吗?逻辑上?数学上?

感谢您的任何时间/回复。

0 投票
1 回答
704 浏览

mahout - mahout 中的 SVD 输出解释

我正在尝试在 mahout 中运行 SVD 作业。我创建了一个大小为 372053 x 21338 的矩阵(比如 A)(文档 x 术语)(21338 个唯一词说 N,372053 个文档说 M)。所以我的矩阵 A 的大小是 (M*N)。我使用 mahout 运行了 svd,我得到了清理后的特征向量(我给出了预期的等级为 200 说 R)。现在我有一个大小为 R*N 的特征向量矩阵。

说明 SVD 方程

A = U * S * V'(V' 是 V 的转置)

我需要将矩阵 A 转换为新空间,以获取文档的压缩向量(我正在尝试实现 LSI)

我从 mahout SVD 得到的输出是什么?(我想知道上面的等式)我阅读了邮件列表,我们可以从生成的特征向量矩阵中的 NamedVectors 中获取特征值。

请指导我如何从这里开始在新空间(大小为 M*R)中生成文档术语矩阵 A。

非常感谢任何帮助:)

0 投票
1 回答
1411 浏览

python - Gensim的LSI模型中如何获取主题分数?

我一直在 gensim 中使用 LsiModel 对 10000 封邮件的语料库中的主题进行建模。我能够获取每个主题的单词和单词分数并将它们存储在一个文件中。我曾尝试使用print_topics()show_topics()但都只返回与这些词相关的词和分数。但我还需要它输出到日志文件的主题分数,我希望这些值在一个变量中。就像下面的这个示例日志输出一样:

我需要这些分数在一个变量中。

包中是否有任何方法可以获取这些输出?请帮忙。

0 投票
1 回答
1104 浏览

machine-learning - LSA - 特征选择

我有这个文档的 SVD 分解

SVD分解

我已阅读此页面,但我不明白如何计算文档分离的最佳功能。

我知道:

S x Vt 给出了文档和特征之间的关系

U x S 给出了术语和特征之间的关系

但最佳特征选择的关键是什么?

0 投票
2 回答
1979 浏览

topic-modeling - 潜在语义索引主题的数量

我正在使用 gensim 的包在语料库上实现 LSI。我的目标是找出语料库中出现频率最高的不同主题。

如果我不知道语料库中的主题数量(我估计在 5 到 20 之间),那么设置 LSI 应该搜索的主题数量的最佳方法是什么?寻找大量主题(20-30)还是少量主题(〜5)更好?

0 投票
1 回答
643 浏览

lsa - LSA 相似度接口

我是翻译研究的博士生,目前正在撰写我的论文。我在我的论文中使用 LSA 相似性接口作为分析方法。我的背景是语言学而不是计算机科学。我试图找到一个简单的 LSA 文档分类工具,但我找不到任何工具。我试着和 Gensim 一起玩,我没有工作。我认为我的问题是将我的语料库(txt 文件)与 Gensim 工具链接以进行分析(我不知道如何执行此步骤)。如果有人可以帮助我进行分析或指导我使用任何工具或简单的教程来使用 Gensim 进行分析,我将不胜感激。

我想做以下事情:我想应用文档文档查询来从语料库中检索最相关的 5 个文档到查询文档。

  1. 我有 15 个查询文件
  2. 我有一个语料库(150 个文本)文本是短篇小说

我很绝望,我很犹豫在这里发布这个问题。我确信在翻译研究中应用 LSA 会增加这个领域,这让我更加坚持找到一种方法来进行我的分析。

0 投票
1 回答
1173 浏览

document-classification - 将 LSA/LSI 与朴素贝叶斯结合用于文档分类

一般来说,我是gensim包和向量空间模型的新手,我不确定我应该如何处理我的 LSA 输出。

为了简要概述我的目标,我想使用主题建模来增强朴素贝叶斯分类器,以改进评论的分类(正面或负面)。这是我一直在阅读的一篇很棒的论文,它塑造了我的想法,但让我对实施仍然有些困惑。

我已经有了朴素贝叶斯的工作代码——目前,我只是使用一元词袋,因为我的特征和标签要么是正面的,要么是负面的。

这是我的gensim代码

这是输出

任何建议或一般性意见将不胜感激。