英语单文档自动摘要php
(1)针对单文档的自动摘要包java
英语的单文档摘要目前在国内外已至关成熟,所以在网上可找到许多相关的文档和源代码包等。python
用于从HTML页面或纯文本提取自动摘要的简单库和命令行实用程序。 该软件包还包含用于文本摘要的简单评估框架。包括:linux
这里有一些其余摘要:git
详情见网址https://pypi.python.org/pypi/sumy。sumy在python中还有API可调用。github
此外,有关sumy的源代码也可在https://github.com/miso-belica/sumy上找到。web
11种最好的开源自动摘要工具包,详情请见http://www.findbestopensource.com/tagged/summarization。该网站提供了11种最好的开源自动摘要工具包,分别有TextTeaser、Fast-summarizer、Bubble-summarization、Pivotquery、Auto-summarization、Icsisumm、Acrs、Alpha-sum、Unbproteus、Textsum-spring11、Socialskip.
算法
英语多文档自动摘要spring
(1)针对多文档的自动摘要包app
北大万小军老师课题组推出文档自动摘要小工具PKUSUMSUM,集成多种无监督摘要提取算法,支持多种摘要任务与多种语言,采用Java编写,代码彻底开源。说明文档可见http://www.icst.pku.edu.cn/lcwm/wanxj/pkusumsum.htm。此外,该工具包源码也可在github(https://github.com/PKULCWM/PKUSUMSUM)上找到。其包含的算法有:
Method | Single-document summarization | Multi-document summarization | Topic-based Multi-document summarization |
---|---|---|---|
Coverage | - | Yes | Yes |
Lead | Yes | Yes | Yes |
Centroid [1] | Yes | Yes | Yes |
TextRank [2] | Yes | Yes | - |
LexPageRank[3] | Yes | Yes | - |
ILP [4] | Yes | Yes | - |
Submodular1 [5] | Yes | Yes | - |
Submodular2 [6] | Yes | Yes | - |
ClusterCMRW[7] | - | Yes | - |
ManifoldRank[8] | - | - | Yes |
因项目须要,本人及其项目组成员用java改写的代码也即将上传到github上,网址稍后会公布。(传懋负责)
2. Sumbasic算法(python语言,2005年)
相关代码见https://github.com/hardik-vala/sum-basic。
在该份代码中,SumBasic有三种算法版本:
(1)leading版本:经过在第一个文档中引用句子来总结文档,直到达到字限制。
(2)original版本:使用原始SUMBASIC算法汇总文档。原始SUMBASIC算法描述以下:
SumBasic算法是由Nenkova和Vanderwende于2005年提出的基于词频的多文档抽取式文摘方法[1].他们认为文档集合中非停用词的相对频率能够较为准确地反映该词是否出如今专家文摘中.在SumBasic算法中每一个句子S都赋予一个反映它所包含的词频的权值:
.(1)
式中:为一元几率观察值,使用最大似然估计计算时近似等于该词在语料库中出现次数占总词数的比例.
根据式(1)计算句子的分值,并按分值将句子由高到低添加到文摘中,直到达到限制的文摘字数,由该方法获得的模型记为Unigram.在SumBasic算法中已经选为文摘的句子中单词的几率变为原几率的平方:,即选中单词的几率逐渐变小,从而下降文摘的冗余度.虽然SumBasic算法的思想很是简单,但取得了不错的效果[2].
(3)simplified版本:简化的SUMBASIC算法,它保持字数不变,不包含非冗余更新。
引用文献:
[1] NENKOVA A, VANDERWENDE L.The impact of frequency on summarization:MSR-TR-2005-101[ R] .Redmond, USA:MicrosoftResearch, 2005
[2]Haghighi A, Vanderwende L. Exploring content models for multi-document summarization[C]// Human Language Technologies: the 2009 Conference of the North American Chapter of the Association for Computational Linguistics. Association for Computational Linguistics, 2009:362-370.