专栏首页技术向爬到的数据不处理怎么行?大话TextRank自动关键词与摘要生成

爬到的数据不处理怎么行?大话TextRank自动关键词与摘要生成

本文由腾讯云+社区自动同步,原文地址 http://blogtest.stackoverflow.club/97/

PageRank是TextRank的核心

PageRank是谷歌发明的,最开始用来计算网页的重要性。整个www可以看作一张有向图图,节点是网页。如果网页A存在到网页B的链接,那么有一条从网页A指向网页B的有向边。

构造完图后,使用下面的公式:

S(Vi)是网页i的中重要性(PR值)。d是阻尼系数,一般设置为0.85。In(Vi)是存在指向网页i的链接的网页集合。Out(Vj)是网页j中的链接存在的链接指向的网页的集合。|Out(Vj)|是集合中元素的个数。

为了更好地理解这个公式,我们可以把阻尼系数设为1,那么S(i) = sum(S(j) / out(j)). 这其实就是一个“分人品”的过程,看看每一个和页面i相邻的边都把多少人品分给了自己。比如页面j人品为5,分出了5个链接,其中一个指向了i,那么页面i从j得到了数值为1的人品。

至于阻尼系数,是为了防止意外发生,如存在一些出链为0,也就是那些不链接任何其他网页的网, 也称为孤立网页。他们的PR值被设定到了一个最小值。

PageRank需要使用上面的公式多次迭代才能得到结果。初始时,可以设置每个网页的重要性为1。上面公式等号左边计算的结果是迭代后网页i的PR值,等号右边用到的PR值全是迭代前的。

使用TextRank提取关键字

将原文本拆分为句子,在每个句子中过滤掉停用词(可选),并只保留指定词性的单词(可选)。由此可以得到句子的集合和单词的集合。

每个单词作为pagerank中的一个节点。设定窗口大小为k,假设一个句子依次由下面的单词组成:

w1,w2,w3,w4,w5,…,wn
[w1,w2,…,wk]、[w2,w3,…,wk+1]、[w3,w4,…,wk+2]

等都是一个窗口。在一个窗口中的任两个单词对应的节点之间存在一个无向无权的边。

基于上面构成图,可以计算出每个单词节点的重要性。最重要的若干单词可以作为关键词。

使用TextRank提取关键短语

参照“使用TextRank提取关键词”提取出若干关键词。若原文本中存在若干个关键词相邻的情况,那么这些关键词可以构成一个关键短语。

例如,在一篇介绍“支持向量机”的文章中,可以找到三个关键词支持、向量、机,通过关键短语提取,可以得到支持向量机。

使用TextRank提取摘要

将每个句子看成图中的一个节点,若两个句子之间有相似性,认为对应的两个节点之间有一个无向有权边,权值是相似度。

通过pagerank算法计算得到的重要性最高的若干句子可以当作摘要。

运行实例

在开源项目地址:https://github.com/letiantian/TextRank4ZH 已经有一个写好的针对中文语料的TextRank,调用示例如下:

对于文本https://raw.githubusercontent.com/letiantian/TextRank4ZH/master/test/doc/01.txt

该算法的输出如下:

参考博客:https://www.letiantian.me/2014-12-01-text-rank/

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • onlyoffice 反向代理实现https错误排查

    使用三台机器搭建nextcloud + onlyoffice: 树莓派:反向代理 蜗牛星际:nextcloud 淘汰笔记本:onlyoffice

    羽翰尘
  • nextcloud-onlyoffice-反向代理https错误排查

    本文由腾讯云+社区自动同步,原文地址 https://stackoverflow.club/article/reverse_proxy_https_debug/

    羽翰尘
  • 清除dell主板bios密码

    本文由腾讯云+社区自动同步,原文地址 http://blogtest.stackoverflow.club/eliminate-dell-bios-passwd...

    羽翰尘
  • 谷歌背后的数学原理

    在如今这个互联网时代, 有一家公司家喻户晓——它自 1998 年问世以来, 在极短的时间内就声誉鹊起, 不仅超越了所有竞争对手, 而且彻底改观了整个互联网的生态...

    华章科技
  • 网站项目开发学习手册

    筑梦师winston
  • 干货!2018年你值得一看的网页设计作品集赏析

    网页设计作品集对网页设计师而言,既是网页门面,也是个人专业素养的体现。那么在作品集设计上万不能掉以轻心。无论是制作一份简约大方还是极具表现力的精良作品集,设计师...

    奔跑的小鹿
  • 善用5个优雅的 Python NumPy 函数

    在机器学习和数据科学项目的日常数据处理中,我们会遇到一些特殊的情况,这些情况需要样板代码来解决。在此期间,根据大家的需要和使用情况,其中一些转换为核心语言或包本...

    AiTechYun
  • Java常用排序算法/程序员必须掌握的8大排序算法(下)

    昨天发表的java常用排序算法/程序员必须掌握的8大算法(上),没看的可以点上面这个链接↑↑↑↑,(概念+实例+代码+排序舞蹈视频)更好的帮助你理解。 java...

    zhisheng
  • Web性能领域常见的专业术语

    编者按:本文作者Berwin,W3C性能工作组成员,360导航资深前端工程师。《深入浅出Vue.js》作者。

    桃翁
  • DevSecOps现状:理论叫得响,实践待发展

    近年来,DevSecOps 的理念越叫越响,业内似乎对此都喜闻乐见,但是 DevSecOps 在具体实践上还有待发展。 DevOps 快速发展,SecOps 成...

    FB客服

扫码关注云+社区

领取腾讯云代金券