所以我有大约 300-500 篇文本文章,我想比较它们的相似性和图形的相似性,这些文章是相关的/重复的,有些文章可能涉及相同的主题但不相同。 所以为了解决这个问题,我开始尝试使用 spaCy 和相似性函数……现在的问题是相似性一次只比较两个文档,我想我需要循环每个文本并将其与另一个文本进行比较,这是一个非常缓慢且消耗内存的过程有没有办法解决这个问题?

#1楼 票数:0

我不知道您将如何比较文本之间的相似性,但假设您将使用 Jaccard 或余弦相似性将每个文本与另一个进行比较。

然后,您可以使用本文中提出的所有对相似性搜索, 搜索在此处有一个实现。 这个算法非常快,特别是对于这么小的数据量。

all-pairs 搜索返回两个文档及其相似性,因此如果您想找到一个相似文档的“族”,那么您将进一步需要应用像 DFS 这样的图遍历。 python元组上的堆栈溢出帖子使用邻接列表并提供 O^(n+m) 时间复杂度。

这是一个示例,您可以使用 all-pairs 算法尝试在 reddit 笑话 subreddit 中查找转发。

  ask by pshl_slq22447 translate from so

未解决问题?本站智能推荐:

2回复

查找文本中的所有数字并将其返回到python中的浮点列表中

我有文本摘录,需要创建一个函数来查找文本中的所有数字并在浮点数列表中返回它们。 如果可以用逗号分隔千位,并且可以用逗号和空格分隔几个连续的数字,那就太好了 不幸的是,我收到了一个 TypeError : 'int' object is not iterable' at '[float(i) for
7回复

用于文本分析的算法或库,特别是:主导词,跨文本的短语和文本的集合

我正在开展一个项目,我需要分析一个文本页面和文本页面集合以确定主导词汇。 我想知道是否有一个库(更喜欢c#或java)来处理繁重的工作。 如果没有,是否有一个算法或多个可以实现我的目标。 我想要做的是类似于你在网上找到的url或rss feed构建的单词云,除了我不想要可视化。 他们一
1回复

使用序列匹配器比较文本相似性:为什么小写和大写字符串的结果不同?

我在熊猫数据框中有一组文本(字母数字),我想计算成对文本(例如文本 1 和 2、2 和 3、3 和 4...)的相似度分数。 我正在使用 Sequence Matcher 进行计算并且能够获得分数。 我认为将文本转换为小写后进行比较也是值得的。 我创建了 2 个分数列来比较结果:分数 1 = 来自非
3回复

有没有可以让我确定文本是否谈论预定义主题的功能?

我想编写主题列表,以检查评论是否涉及已定义的主题之一。 对我来说,自己编写主题列表而不使用主题建模来查找可能的主题对我很重要。 我以为这叫做字典分析,但是我什么也找不到。 我有一个来自亚马逊的评论数据框: 现在,我要定义主题列表: 对于第一个评论的“电话”主题,该方法的结果应为
1回复

嵌入式循环和Python语法

我目前正在学习Python中的NLP,并且遇到了Python语法问题。 我不明白第2行的目的。而且,我不明白为什么每个循环都不能像Python中的任何循环一样以“:”结尾。 有人可以向我解释此代码吗? 该代码有效,但我不完全了解其语法。 谢谢
3回复

如何使用Python在第二次出现特定单词后提取文本文件的一部分

我试图在第二次出现特定单词后提取文本文件的一部分,直到第二次出现另一个特定单词为止。 原因是这两个词是在目录中首先陈述的。 因此,当我运行代码时,第一次出现的输出为 0。 示例文本: 目录项目 1a. 风险因素 不是任何文本(不需要的部分) 项目 1b 目录结束主要内容项目 1a。 风险因素 文本(
1回复

Python自然语言处理停用词[重复]

这个问题在这里已有答案: 为什么这些词被视为停用词? 1个答案 我正在用Python研究NLP,我发现了一些奇怪的东西。 审核以下否定推文: 并通过删除停用词进行一些处理。 部分输出是: 我很难理解为什么停用词包含'not',这会影响推文的情绪。 我的理解
3回复

在Python中查找敬语和大写字母

我正在尝试根据 .txt 文件中是否包含男性或女性演讲者将其分成两个单独的文件。 此文件类型中的扬声器在敬语后的所有大写中都有他们的姓氏。 因此,此文件中发言者的男性敬语格式是“XYZ 先生”,其中 XYZ 是任意 3 个以上的大写字母(连续 3 个大写字母足以将文件中的任何人检测为发言者)。 女