最近需要做一些文本摘要的东西,选取了TextRank(论文参见《TextRank: Bringing Order into Texts》)作为对比方案,该方案可以很方便的使用Python相关库进行实现。

下面介绍如何利用Python实现一个简单的文本摘要工具。

Demo


【前期准备】:

  1. Python 2.7.x - 当然也推荐Python3,少掉很多编码问题。信仰选2!
  2. jieba分词 - 最好的python中文分词工具(最新清华出了个THULAC,有兴趣的可以试试,看对比效果似乎更好)
  3. networkx - 一个非常棒的复杂网络工具库

【背景知识】

利用Textrank做文本摘要的核心思想很简单,和著名的网页排名算法PageRank类似:每个句子可以作为一个网络中的节点(称为节点i),与之相连的其他节点(例如节点j)会对其重要度产生一定的“贡献值”,该“贡献值”与节点j自身的重要度以及i、j之间的相似度(也可以称为连接的强度)有关,只需要对整个图进行迭代直至收敛,最后各节点的分值即是该句子的重要性,根据重要性排序后选取前k个句子即可作为摘要。

xxxxx

摘自:http://jayveehe.github.io/2016/05/11/da_textrank/

英文的在线提取见:http://textsummarization.net/text-summarizer

最新文章

  1. leetcode-【中等题】3. Longest Substring Without Repeating Characters
  2. 解决MVC中JSON字符长度超出限制的异常
  3. Android Studio使用第三方类库
  4. bzoj 2659: [Beijing wc2012]算不出的算式
  5. 用get方式提交请求的url带有中文参数
  6. Java实现数组按数值大小排序
  7. c#部分---结构体再利用;
  8. JAVA_Reflection
  9. Jcrop 做图片剪裁 在IE中无法显示问题解决办法
  10. C++字符串(1)
  11. nginx 生成 缩略图 and 生成缩略图到硬盘
  12. eclipse禁用svg文件Validation
  13. 概率分布之间的距离度量以及python实现(四)
  14. SpringMVC框架学习笔记(6)——拦截器
  15. 网络流 P2770 航空路线问题
  16. redis整合Spring集群搭建及业务中的使用
  17. mysql的 深度使用 - 游标 , 定时器, 触发器 的使用 ?
  18. Java嵌入式数据库H2学习总结(二)——在Web应用程序中使用H2数据库
  19. 使用anaconda安装tensorflow (windows10环境)
  20. 003--MySQL 数据库事务

热门文章

  1. javascript事件绑定1-模拟jquery可爱的东西
  2. js 图片轮播代码编辑
  3. css属性代码大全总结(一)
  4. Windows下使用Caffe-Resnet
  5. PAC学习理论:机器学习那些事
  6. Windows Live Writer 历史Blog修改的功能
  7. beetl模板入门例子
  8. centos7 删除libc.so.6 紧急救援
  9. js数组操作find查找特定值结合es6特性
  10. 编写输出Hellow word!