最近在搞聊天数据分析,对文本摘要有需求,学习一下该方法。
一、文本摘要(Document Summarization)
文本摘要,一般地我们会把它分成抽取式文本摘要和生成式文本摘要。就目前的形势而言,工业界应用广泛的还是抽取式文本摘要。抽取式文本摘要的优点很多,主题不易偏离、适应性广、速度快。
抽取式文本摘要,最最传统的方案,无疑便是Lead3算法了。
github如下:https://github.com/yongzhuo/nlg-yongzhuo/tree/master/nlg_yongzhuo/text_summarization/extractive_sum/nous_base
二、Lead3
Lead3,顾名思义,就是最开始的3个句子,很有意思,就这一个超级简单的算法,就能达到很好的效果,例如bertsum中的测评结果,已经接近Transformer了:
我代码获取的是top2以及最后1句。
代码地址: https://github.com/yongzhuo/nlg-yongzhuo/blob/master/nlg_yongzhuo/text_summarization/extractive_sum/nous_base/lead_3/lead_3.py
三、keyword
keyword,包括word_significance,思想是抽取最有意义的词语。把关键词和句子顺序两盒起来,具体就是先遍历关键词,再顺序遍历句子,直到找到出现的第一个句子,然后删掉该句子,继续遍历。
代码地址:https://github.com/yongzhuo/nlg-yongzhuo/blob/master/nlg_yongzhuo/text_summarization/extractive_sum/feature_base/word_significance%20.py
转载于:https://blog.csdn.net/rensihui/article/details/100529592