问题标签 [gensim]

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 投票
1 回答
466 浏览

nlp - 用于潜在语义分析的“预建”矩阵

我想为我正在构建的一个小应用程序使用潜在语义分析,但我不想自己构建矩阵。(部分是因为我所拥有的文档不会成为一个很好的训练集,因为它们有点短且异类,部分是因为我刚买了一台新计算机,我发现安装线性代数之类的东西很糟糕我需要的图书馆。)

是否有任何“默认”/预构建的 LSA 实现可用?例如,我正在寻找的东西包括:

  • 默认 U,S,V 矩阵(即,如果 D 是来自某个训练集的术语文档矩阵,则 D = USV^T 是奇异值分解),因此给定任何查询向量 q,我可以使用这些矩阵自己计算 q 的 LSA 投影。
  • 一些黑盒 LSA 算法,给定一个查询向量 q,返回 q 的 LSA 投影。
0 投票
1 回答
1213 浏览

python - 如何使用 gensim 包用一组种子词初始化 LDA

我已经阅读了几篇论文,其中他们实际上使用 LDA 的一组种子词来初始化参数。有谁知道这在 gensim 包中怎么可能?

0 投票
3 回答
7341 浏览

python - 在 python 中使用 gensim 的 LSI

我正在使用 Python 的 gensim 库进行潜在语义索引。我按照网站上的教程进行操作,效果很好。现在我正在尝试对其进行一些修改;每次添加文档时,我都想运行 lsi 模型。

这是我的代码:

geturls 是我编写的函数,它将网站的内容作为字符串返回。同样,如果我等到处理完所有文档后再执行 tfidf 和 lsi,它会起作用,但这不是我想要的。我想在每次迭代中都这样做。不幸的是,我收到此错误:

通常错误会在第二个文档上弹出。我想我明白它在告诉我什么(字典索引不好),我只是不知道为什么。我尝试了很多不同的东西,但似乎没有任何效果。有谁知道发生了什么?

谢谢!

0 投票
1 回答
3821 浏览

python - 为什么会出现分段错误!当我尝试运行/使用 Python 包 gensim 时?

我正在尝试[gensim][1]在我的一些机器学习实验中使用 Python 的向量空间建模包。我按照这里所说的安装说明进行了操作,尽管按照他们的建议scipy在我的 OpenSuse 11.3 上安装失败easy_install,所以我求助于从官方包搜索门户上提供的包安装

安装成功scipy,然后我按照他们的建议easy_install安装。gensim这也很好。

现在,在安装之后,我尝试运行他们给出的第一个使用包的示例,它以一个简陋的 import 语句开头,如下所示:

瞧!当我试图在我的 python 解释器中运行它时,亲爱的东西崩溃了Segmentation Fault!这就是发生的事情:

有人救了我,因为我不知道错误可能来自哪里。

我知道段错误通常是由于进程的非法内存访问,那么这可能是由于导入而发生的吗?还是里面的一些错误gensim

更多信息,据说安装包后可以测试,所以我这样做是为了测试我的gensim,Lo!一样Segmentation Fault!这是输出:

对于依赖包,我有:

好的,按照评论中的要求,我确实将gdb挂钩到解释器,然后再次尝试了import语句,那么当segfault再次发生时,这是gdb给出的:

0 投票
1 回答
4773 浏览

python - Eclipse + PyDev 导入错误

我无法让Eclipse上的 PyDev 识别已安装的模块(gensim),这些模块在 IDLE 中工作正常。我正在使用 32 位的 Windows Vista。蟒蛇 2.7。

我发现有人问过这个问题:herehereherehere

推荐的解决方案是转到preferences > pydev > interpreter - python,然后删除并重新添加(w/Auto Config)python解释器。我已经这样做了,并重新启动了 Eclipse。在PYTHONPATH, C:\Python27\lib\site-packages\gensim-0.8.0-py2.7.egg, 中出现,但我仍然遇到导入错误。我的代码是:

这会产生:

另一个推荐的解决方案是通过单击解释器底部的“新建文件夹”手动添加文件夹 - python 屏幕并导航到安装 gensim 的位置。我也这样做了,并添加了C:\Python27\lib\site-packages\gensim-0.8.0-py2.7.egg\gensim,其中包含所有必要的\__init__.py文件。但是,我仍然得到ImportError.

关于我还可以尝试什么的任何建议?

0 投票
2 回答
5850 浏览

python - TF-IDF是如何在python的gensim工具中实现的?

从我从网上找到的文档中,我找出了用于确定语料库中术语的术语频率和逆文档频率权重的表达式

tf-idf(wt)= tf * log(|N|/d);

我正在经历 gensim 中提到的 tf-idf 的实现。文档中给出的示例是

这显然不遵循 Tf-IDF 的标准实现。两种型号有什么区别?

注意:0.70710678 是 2^(-1/2) 的值,通常用于特征值计算。那么特征值是如何进入 TF-IDF 模型的呢?

0 投票
2 回答
2321 浏览

machine-learning - 如何在新闻文章中使用 gensim for lda?

我正在尝试从大量新闻文章中检索主题列表,我打算使用 gensim 使用 LDA 为每个文档提取主题分布。我想知道 gensim 实现 lda 所需的已处理文章的格式以及如何将原始文章转换为该格式。我在维基百科转储上看到了这个关于使用 lda 的链接,但我发现语料库处于处理状态,其格式在任何地方都没有提及

0 投票
3 回答
1768 浏览

python - 从一个部分中提取一个单词加上 20 个以上(python)

Jep 仍然在玩 Python。

我决定尝试 Gensim,这是一个为选定的单词和上下文找出主题的工具。

所以我想知道如何在一段文本中找到一个单词并连同它一起提取 20 个单词(例如在那个特定单词之前的 10 个单词和那个特定单词之后的 10 个单词)然后将它与其他这样的提取一起保存,这样 Gensim 就可以运行它。

对我来说似乎很难的是找到一种方法来在找到所选单词时提取前后 10 个单词。我之前玩过 nltk,只需将文本标记为单词或句子,就很容易掌握句子。仍然在那个特定句子之前和之后得到那些单词或句子对我来说似乎很难弄清楚该怎么做。

对于那些感到困惑的人(这里是凌晨 1 点,所以我可能会感到困惑),我将举一个例子:

话音刚落,她的血液就涌上心头,因为听到白雪公主还活着,她很生气。“可是现在,”她心想,“我要不要做点什么,彻底毁掉她。” 说着,她用自己懂的术做了一把毒梳子,然后伪装成老寡妇的样子。她翻过七座小山来到七个小矮人的家,[15] 敲了敲门,喊道:“今天卖的好货!”

如果我们说这个词是白雪公主,那么我想提取这部分:

她的心,因为听到白雪公主还活着,她很生气。“可是现在,”她心想,“会

白雪公主前后各 10 个字。

如果这可以在 nltk 中完成并且更容易,那么在出现 Snow-White 的句子之前和之后获取句子也很酷。

我的意思是,如果有人可以帮助我,我会对这两种解决方案中的一种感到满意。

如果 Gensim 也可以做到这一点……而且这更容易,那么我也会对此感到满意。所以这 3 种方法中的任何一种都可以……我只是想尝试看看如何做到这一点,因为 atm 我的脑袋一片空白。

0 投票
2 回答
11226 浏览

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

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

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

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

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

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

谢谢,

编辑

拉斯曼斯给出了答案。

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

0 投票
3 回答
1304 浏览

python - 基于主题的文本和用户相似度

我希望使用他们的主题表示来计算用户和文本文档之间的相似性。即,每个文档和用户都由一个主题向量(例如神经科学、技术等)以及该主题与用户/文档的相关程度来表示。

然后我的目标是计算这些向量之间的相似度,以便我可以找到相似的用户、文章和推荐文章。

我曾尝试使用 Pearson Correlation,但一旦达到约 40k 篇文章并且向量的长度约为 10k,它最终会占用过多的内存和时间。

我正在使用 numpy。

你能想象一个更好的方法来做到这一点吗?还是不可避免(在单台机器上)?

谢谢