NLP:基于textrank4zh库对文本实现提取文本关键词、文本关键短语和文本摘要
生活随笔
收集整理的這篇文章主要介紹了
NLP:基于textrank4zh库对文本实现提取文本关键词、文本关键短语和文本摘要
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
NLP:基于textrank4zh庫對文本實現提取文本關鍵詞、文本關鍵短語和文本摘要
?
?
?
?
目錄
輸出結果
設計思路
核心代碼
?
?
?
?
?
輸出結果
關鍵詞: 故宮 0.030737773083470445 鏡頭 0.026154204788274925 吸煙 0.02464630557740873 網友 0.0223623041596296 規定 0.021749817200586608 工作 0.021491249428577667 禁止 0.02028752723934755 景區 0.019314322943705477 炫耀 0.018931429709004036 稱 0.01849004576313802 表示 0.017926862026642076 全面 0.016033284719331194 通報 0.016033284719331194 全市 0.01573736890057259 帶有 0.014258600922955385 挑釁 0.014258600922955385 單位 0.012633705830118174 設立 0.012318056112472466 男子 0.012219070984211678 黑名單 0.011988917420401994關鍵短語: 禁止吸煙摘要: 10 0.12507418731273198 視頻在網絡上傳播開來,不少網友擔心故宮的安危,稱一旦發生火情,后果不堪設想,有網友表示,這樣的行為應該被旅游景區拉近黑名單,建議終身禁止進入任何景區和各種場館 0 0.12010154061801917 今天一大早,兩位男子在故宮抽煙對鏡頭炫耀的視頻在網絡上傳播,引發網友憤怒 6 0.10828312286511374 而視頻中兩人也表示知道有故宮禁止吸煙的規定?
設計思路
后期更新……
?
?
?
?
核心代碼
def analyze Found at: textrank4zh.TextRank4Keyworddef analyze(self, text, window=2, lower=False, vertex_source='all_filters', edge_source='no_stop_words', pagerank_config={'alpha':0.85}):"""分析文本Keyword arguments:text -- 文本內容,字符串。window -- 窗口大小,int,用來構造單詞之間的邊。默認值為2。lower -- 是否將文本轉換為小寫。默認為False。vertex_source -- 選擇使用words_no_filter, words_no_stop_words, words_all_filters中的哪一個來構造pagerank對應的圖中的節點。默認值為`'all_filters'`,可選值為`'no_filter', 'no_stop_words', 'all_filters'`。關鍵詞也來自`vertex_source`。edge_source -- 選擇使用words_no_filter, words_no_stop_words, words_all_filters中的哪一個來構造pagerank對應的圖中的節點之間的邊。默認值為`'no_stop_words'`,可選值為`'no_filter', 'no_stop_words', 'all_filters'`。邊的構造要結合`window`參數。"""# self.text = util.as_text(text)self.text = textself.word_index = {}self.index_word = {}self.keywords = []self.graph = Noneresult = self.seg.segment(text=text, lower=lower)self.sentences = result.sentencesself.words_no_filter = result.words_no_filterself.words_no_stop_words = result.words_no_stop_wordsself.words_all_filters = result.words_all_filtersutil.debug(20 * '*')util.debug('self.sentences in TextRank4Keyword:\n', ' || '.join(self.sentences))util.debug('self.words_no_filter in TextRank4Keyword:\n', self.words_no_filter)util.debug('self.words_no_stop_words in TextRank4Keyword:\n', self.words_no_stop_words)util.debug('self.words_all_filters in TextRank4Keyword:\n', self.words_all_filters)options = ['no_filter', 'no_stop_words', 'all_filters']if vertex_source in options:_vertex_source = result['words_' + vertex_source]else:_vertex_source = result['words_all_filters']if edge_source in options:_edge_source = result['words_' + edge_source]else:_edge_source = result['words_no_stop_words']self.keywords = util.sort_words(_vertex_source, _edge_source, window=window, pagerank_config=pagerank_config)?
?
?
?
?
?
?
總結
以上是生活随笔為你收集整理的NLP:基于textrank4zh库对文本实现提取文本关键词、文本关键短语和文本摘要的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DL之PanopticFPN:Panop
- 下一篇: DL框架之TensorFlow:深度学习