方法
摘要生成算法主要分為抽取型(Extraction-based)和概括型(生成)(Abstraction-based)兩類。
傳統(tǒng)的摘要生成系統(tǒng)大部分是抽取型的摄杂,就是從給定文章中抽取出關(guān)鍵的句子或短語脐嫂,重新拼接成一小段摘要钞护,沒有對原有內(nèi)容做創(chuàng)造性修改觉渴。生成摘要的語法可能不準確检痰。
GitHub上的有sumy, pytextrank, textteaser等。
概括性摘要生成系統(tǒng)能生成或許不屬于源文檔的新句子苇经。由于抽象式機器學習算法能夠生成表示源文本中最重要信息的新短語和句子赘理,所以這些抽象式算法有助于克服抽取式摘要中的語法不準確問題。
下面就抽取式摘要生成做基本實現(xiàn)
數(shù)據(jù)集:nlpcc2017textsummarization塑陵,
鏈接:https://pan.baidu.com/s/1P7Vv11NKSWMFK0HUChvaPQ
提取碼:kxr1
(1)textrank
首先應用Glove得到對應數(shù)據(jù)的詞向量感憾,按取均值的方法得到句子向量。并應用textrank算法得到排名前3的句子。具體實現(xiàn)過程如下:
1)加載包
2)讀取數(shù)據(jù)
3)文本做簡單處理
4)訓練glove模型的詞向量
5)句子向量準備
6)相似矩陣和textrank模塊
7)得出結(jié)果并存儲
8)結(jié)果如下: