学习NLP的第12天——文章关键词提取:TextRank

TextRank是PageRank算法在文本处理中的应用,通过将PageRank中的节点从网站替换为单词。

每个单词的“外链”均来自于单词前后固定大小的窗口内的所有单词。

给 你 形容 美好 今后 你 常常 眼睛 会 红

例如,当窗口大小而2时,上面的句子中的“美好”一词,它的窗口内就包含“你”、“形容”、“今后”、“你”这个四个词;以此类推。

在计算TextRank的过程中,窗口内的每个词都相当于给中心词投了一篇,那一票的权重等于该词投出去的所有票平分。

这样的投票方式会产生如下的效果:

  • 一个词语左右搭配越多(信息熵越高),给这个词投票的词就越多,这个词的得分就越高。
  • 一个词出现频率越高,就越有机会被更多的词投票,这个词的得分也会越高。

下面,我们将朱自清的《春》作为例子,使用HanLP提供的extractKeyword静态函数实现TextRank算法,提取其中的前10个关键词:

from pyhanlp import HanLP

if __name__ == '__main__':
    content = "盼望着,盼望着,东风来了,春天的脚步近了。......"

    keyword_list = HanLP.extractKeyword(content, 10)
    print(keyword_list)

运行结果

[春天, 里, 眼, 起来, 风, 雨, 乡下, 小草, 味儿, 刚]

而使用词频统计的方法提取《春》的关键词的结果如下:

[里=4, 春天=4, 起来=3, 眼=3, 风=2, 雨=2, 赶趟儿=2, 花=2, 眨=2, 盼望着=2]

相比之下,TextRank有效判断出了“春天”是比“里”更重要的关键词,但同样也存在一些问题。

学习参考文献:《自然语言处理入门》(何晗):9.2.3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

长行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值