python 全文搜索 句子_python新玩法:用python进行文章摘要拿取,只需要一行代码
前言
今天為大家介紹一個python算法TextRank,實現(xiàn)從長篇中快速抽取精準摘要。
TextRank是一種基于圖形的文本處理排序算法。PageRank通常用作其底層的圖排序模型。當然,其他的圖排序模型也可以與之結(jié)合。
TextRank算法不需要深入的語言和專業(yè)知識,因為它是一種無監(jiān)督算法。在文本中使用基于圖形的排序算法,需要構(gòu)造一個圖形來表達文本、單詞和其他實體。
在漢語中,單詞、短語、句子等可以作為圖中的頂點。通過建立這些頂點之間的關(guān)系,如詞序關(guān)系、語義關(guān)系、內(nèi)容相似性等,可以構(gòu)造出一個合適的圖。
目前,TextRank在中文文本中的應(yīng)用主要有三個方向,分別是:
1)關(guān)鍵詞提取;
2)關(guān)鍵短語提取;
3)自動摘要。
Python中有一個名為textrank4zh的包,它實現(xiàn)了這三個函數(shù)。其源地址為:
實現(xiàn)了良好的文本處理效果。
效果預(yù)覽
近日,Tushare Pro發(fā)布了近10年來央視新聞播出數(shù)據(jù),對數(shù)據(jù)進行了清理和規(guī)范。
然而,每天新聞廣播中有成千上萬的單詞,很難完全讀懂。如果我們使用自動摘要技術(shù)將成千上萬的單詞濃縮成10個句子,閱讀的負擔就會減輕。自動匯總是TextRank的切入點。
在實現(xiàn)這個功能之前,讓我們先來看看從新聞中提取的抽象效果。
扣扣 :13465+25417多虧了Tushare的新聞廣播標準文本,TextRank的自動摘要看起來非常好。
為什么TextRank這么好用?這主要是因為圖排序模型是基于全局信息來計算每個頂點的重要性,而不是僅僅使用局部信息。下面簡要介紹TextRank應(yīng)用于自動摘要的基本原理。
基本原理
如前所述,使用TextRank分析文本首先需要在文本上構(gòu)建一個圖表。
對于文本自動摘要的任務(wù),我們使用句子作為圖的頂點,句子之間的關(guān)系作為圖的邊。我們需要評估句子之間的相似性。每個句子只與最相似的句子連接,并使用相似度作為邊的權(quán)重。
事實上,這兩句話是相似的,所以可以認為這兩句話之間有一種“推薦”關(guān)系,也就是說,在讀者閱讀了這句話之后,這句話推薦讀者閱讀與之相似的句子。
評價兩個句子相似度的方法有很多,如余弦相似度、編輯距離等。TextRank算法使用的是最基本的方法。相似度可以通過計算兩個句子中相同單詞的數(shù)量來計算。此外,還可以添加語法過濾器來過濾單詞。
通過確定圖的頂點和邊以及邊的權(quán)值,得到了一個加權(quán)圖,加權(quán)圖的形狀如圖1所示。接下來,可以使用PageRank迭代計算每個頂點(句子)的重要性。最后,將最重要的N個句子作為全文的總結(jié),這是TextRank的自動總結(jié)結(jié)果。
代碼實現(xiàn)
因為textrank4zh已經(jīng)實現(xiàn)了TextRank的功能,我們可以直接使用它,而且使用非常簡單。
總結(jié)
以上是生活随笔為你收集整理的python 全文搜索 句子_python新玩法:用python进行文章摘要拿取,只需要一行代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: docker 发布tomcat项目_在d
- 下一篇: selinux= 为 disabled_