从文档中提取文本信息量最大的部分

数据挖掘 nlp 文本挖掘
2021-10-01 00:27:57

是否有任何关于提取包含当前文档大部分信息的部分文本的文章或讨论。

例如,我有来自同一域的大量文档。文本的某些部分包含单个文档所讨论的关键信息。我想提取其中的一些部分并将它们用作文本的摘要。有没有关于如何实现这样的东西的有用文档。

如果有人能指出我应该搜索或阅读的正确方向,以深入了解自然语言处理领域可能已经完成的工作,那将非常有帮助。

2个回答

您所描述的通常是使用TF-IDF提取摘要的简单组合来实现的。

简而言之,TF-IDF 告诉你每个文档中每个单词的相对重要性,与你的语料库的其余部分相比。此时,您对每个文档中的每个单词都有一个近似其“重要性”的分数。然后,您可以使用这些单独的单词分数,通过将每个句子中每个单词的分数相加来计算每个句子的综合分数。最后,简单地将每个文档中得分最高的 N 个句子作为其摘要。

今年早些时候,我整理了一个 iPython Notebook,最终使用 NLTK 和 Scikit-learn 在 Python 中实现了这一点:A Smattering of NLP in Python

许多关键字提取技术取决于以下因素:

  1. 文本的语法质量
  2. 文本长度
  3. 无论您是在寻找单个关键字还是短语关键字等。

但总的来说,如果您的文本很长,并且想从中自动提取关键字,我建议您阅读以下文章:

  1. 文本排名

  2. RAKE [快速自动关键字提取]

  3. 话题

另外要提取未通过上述技术的自定义(特殊)关键字,请查看以下帖子:

在 python 中使用 NLTK POS 标记器提取自定义关键字