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