python 全文搜索 句子_python新玩法:用python进行文章摘要拿取,只需要一行代码

本文介绍了Python中的TextRank算法,用于从长篇文章中快速抽取精准摘要。TextRank是一种基于图形的文本处理排序算法,适用于关键词提取、关键短语提取和自动摘要。通过构建句子间的相似度图并使用PageRank迭代计算重要性,得出最重要的句子作为摘要。使用textrank4zh包,可以轻松实现这一功能。
摘要由CSDN通过智能技术生成

b7cad2fd36f06f301cf3b233e108ea3d.png

前言

今天为大家介绍一个python算法TextRank,实现从长篇中快速抽取精准摘要。

TextRank是一种基于图形的文本处理排序算法。PageRank通常用作其底层的图排序模型。当然,其他的图排序模型也可以与之结合。

TextRank算法不需要深入的语言和专业知识,因为它是一种无监督算法。在文本中使用基于图形的排序算法,需要构造一个图形来表达文本、单词和其他实体。

在汉语中,单词、短语、句子等可以作为图中的顶点。通过建立这些顶点之间的关系,如词序关系、语义关系、内容相似性等,可以构造出一个合适的图。

目前,TextRank在中文文本中的应用主要有三个方向,分别是:

1)关键词提取;

2)关键短语提取;

3)自动摘要。

Python中有一个名为textrank4zh的包,它实现了这三个函数。其源地址为:

实现了良好的文本处理效果。

效果预览

近日,Tushare Pro发布了近10年来央视新闻播出数据,对数据进行了清理和规范。

然而,每天新闻广播中有成千上万的单词,很难完全读懂。如果我们使用自动摘要技术将成千上万的单词浓缩成10个句子,阅读的负担就会减轻。自动汇总是TextRank的切入点。

在实现这个功能之前,让我们先来看看从新闻中提取的抽象效果。

38db0b02d5ebd4c1689acb393a2c5a65.png

32cf7ad6c39dc87aba164ac54c89287b.png
扣扣 :13465+25417

多亏了Tushare的新闻广播标准文本,TextRank的自动摘要看起来非常好。

为什么TextRank这么好用?这主要是因为图排序模型是基于全局信息来计算每个顶点的重要性,而不是仅仅使用局部信息。下面简要介绍TextRank应用于自动摘要的基本原理。

基本原理

如前所述,使用TextRank分析文本首先需要在文本上构建一个图表。

对于文本自动摘要的任务,我们使用句子作为图的顶点,句子之间的关系作为图的边。我们需要评估句子之间的相似性。每个句子只与最相似的句子连接,并使用相似度作为边的权重。

事实上,这两句话是相似的,所以可以认为这两句话之间有一种“推荐”关系,也就是说,在读者阅读了这句话之后,这句话推荐读者阅读与之相似的句子。

评价两个句子相似度的方法有很多,如余弦相似度、编辑距离等。TextRank算法使用的是最基本的方法。相似度可以通过计算两个句子中相同单词的数量来计算。此外,还可以添加语法过滤器来过滤单词。

通过确定图的顶点和边以及边的权值,得到了一个加权图,加权图的形状如图1所示。接下来,可以使用PageRank迭代计算每个顶点(句子)的重要性。最后,将最重要的N个句子作为全文的总结,这是TextRank的自动总结结果。

b646c745d835a6081cafdb9830b8b6ce.png

代码实现

因为textrank4zh已经实现了TextRank的功能,我们可以直接使用它,而且使用非常简单。

a1746194363ad35da6ef44bee43817e2.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值