PositionRank论文解读

PositionRank: An Unsupervised Approach to Keyphrase Extraction from Scholarly Documents

PositionRank思想

PositionRank是2017年提出的论文,是一种用于从学术文档中提取关键短语的无监督模型,它将单词出现的所有位置的信息合并到有偏置的PageRank中。

在无监督的研究中,关键短语提取被描述为一个排序问题,基于图的排序技术被认为是最优的。基于图的排序算法有PageRank和HITS。

作者总结的三个贡献:

1、提出了一种无监督图模型(PositionRank),将每个单词出现的位置添加到PageRank中,然后再进行计算每个关键词的得分和排名。

2、发现使用词的所有位置信息比仅仅使用词的第一次出现的位置信息效果要更好。

3、试验结果表明PositionRank效果会比PageRank效果好很多。

PositionRank实现

PositionRank实现的三个步骤:

  1. 在词水平上图的构建。
  2. 设计基于位置偏置的PageRank算法。
  3. 生成候选关键字。
图的构建

使用分词工具对文档 d d d进行分词,最终仅保留名字和形容词。为文档 d d d构建一个词图 G = ( V , E ) G=(V,E) G=(V,E),其中文档保留的词均在图 G G G中作为一个节点且出现一次。如果在文档 d d d中这些节点同时出现在一个窗口 w w w中,那么 v i v_i vi v j v_j vj两个节点通过一条边 ( v i , v j ) ∈ E (v_i,v_j) \in E (vi,vj)E进行连接。边的权重由两个词共现的次数来决定。(据研究表明,文本图的类型(有向图/无向图)不会影响图的性能[1])。

基于位置的PageRank算法

构建好无向图 G G G,让 M M M作为图的邻接矩阵。如果节点 v i v_i vi v j v_j vj之间存在边,那边的权重 m i j m_{ij} mij就为 ( v i , v j ) (v_i,v_j) (vi,vj);反之,如果不存在边,那么 m i j m_{ij} mij就为0。

原始PageRank计算公式如下所示:
P R ( p i ) = α ∑ p j ∈ M p i P R ( p j ) L ( p j ) + ( 1 − α ) N PR(p_i)=\alpha \sum_{p_j \in M_{p_i}} \frac{PR(p_j)}{L(p_j)}+\frac{(1-\alpha)}{N} PR(pi)=αpjMpiL(pj)PR(pj)+N(1α)
其中 P R ( p i ) PR(p_i) PR(pi)表示节点 p i p_i pi的值, M p i M_{p_i} Mpi表示以节点 p i p_i pi为入节点的所有节点, L ( p j ) L(p_j) L(pj)表示节点 p j p_j pj的出度, ( 1 − α ) N \frac{(1-\alpha)}{N} N(1α)代表的是让被个节点最终的值都不等于0。

S S S代表每个节点PageRank的得分,对任一节点 v i ∈ V v_i \in V viV,每个节点最初始的值为 1 ∣ V ∣ \frac{1}{|V|} V1。PageRank的每个时刻的计算公式如下所示:
S ( t + 1 ) = M ~ ⋅ S ( t ) S(t+1)=\widetilde M \cdot S(t) S(t+1)=M S(t)
其中矩阵 M ~ \widetilde M M 是归一化的矩阵 M M M,如下式所示:
m ~ i j = { m i j / ∑ j = 1 ∣ V ∣ m i j     i f   ∑ j = 1 ∣ V ∣ m i j ≠ 0 0                          o t h e r w i s e \widetilde m_{ij}=\left \{ \begin{array} {l} {\rm{m_{ij} / \sum_{j=1}^{|V|}m_{ij} \ \ \ if \ \sum_{j=1}^{|V|}m_{ij} \ne 0}} \\ {\rm{0 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ otherwise}} \end{array} \right. m ij={mij/j=1∣V∣mij   if j=1∣V∣mij=00                        otherwise
为了防止PageRank进入闭环中,会添加一个阻尼因子,最终的PageRank计算公式如下所示:
S ( t + 1 ) = α ⋅ M ~ ⋅ S ( t ) + ( 1 − α ) ⋅ p ~ S(t+1)=\alpha \cdot \widetilde M \cdot S(t) + (1- \alpha) \cdot \widetilde p S(t+1)=αM S(t)+(1α)p
p ~ \widetilde p p 表示向量的 ∣ V ∣ |V| V的长度,并且所有的元素都为 1 ∣ V ∣ \frac{1}{|V|} V1。向量 p ~ \widetilde p p 表示节点 v i v_i vi随机游走都是等概率的。有研究学者发现,通过偏置 p ~ \widetilde p p 随机游走将优先选择图中概率较高的节点。

作者想的是将前面出现的词赋予更高概率,如在同一文档第2个单词出现的词应该比第50个出现的单词概率更高。所以在向量 p ~ \widetilde p p 将会被更改为下式:
p ~ = [ p 1 p 1 + p 2 + . . . + p ∣ V ∣ , p 2 p 1 + p 2 + . . . + p ∣ V ∣ , . . . , p ∣ V ∣ p 1 + p 2 + . . . + p ∣ V ∣ ] \widetilde p = [\frac{p_1}{p_1+p_2+...+p_{|V|}}, \frac{p_2}{p_1+p_2+...+p_{|V|}},..., \frac{p_{|V|}}{p_1+p_2+...+p_{|V|}}] p =[p1+p2+...+pVp1,p1+p2+...+pVp2,...,p1+p2+...+pVpV]
其中 p i p_i pi代表的是单词 i i i的位置值,如果单词 i i i在文档的第2、5、10个位置出现,那么 p i = 1 2 + 1 5 + 1 10 = 4 5 = 0.8 p_i=\frac{1}{2}+\frac{1}{5}+\frac{1}{10}=\frac{4}{5}=0.8 pi=21+51+101=54=0.8,最终PositionRank算法计算每个关键词的计算公式如下式所示:
S ( v i ) = ( 1 − α ) ⋅ p i ~ + α ⋅ ∑ v j ∈ A d j ( v i ) w j i O ( v j ) S ( v j ) S(v_i)=(1- \alpha) \cdot \widetilde {p_i} +\alpha \cdot \sum_{v_j \in Adj(v_i)} \frac{w_{ji}}{O(v_j)}S(v_j) S(vi)=(1α)pi +αvjAdj(vi)O(vj)wjiS(vj)
其中 O ( v j ) = ∑ v k ∈ A d j ( v j ) w j k O(v_j)=\sum_{v_k \in Adj(v_j)} w_{jk} O(vj)=vkAdj(vj)wjk p ~ i \widetilde p_i p i是向量 p ~ \widetilde p p 中的节点 v i v_i vi的表示。

格式化候选词

文档中具有连续位置的候选词被连接成短语,考虑以下正则表达式“(形容词)*(名词)+”来匹配候选短语,长度为1~3。最终对组成后的短语进行单个关键字求和在排名。

PositionRank实验

数据集:

  • 第一、二个数据集来自Gollapalli and Caragea http://www.cse.unt.edu/∼ccaragea/keyphrases.html

  • 第三个数据集来自Nguyen and Kan [2]

  • 在这里插入图片描述

表1 三种关键字抽取数据集详情

评价指标:mean reciprocal rank (平均倒数排名,MRR)、precision、recall、F-score。
M R R = 1 ∣ D ∣ ∑ d ∈ D 1 r d MRR=\frac{1}{|D|} \sum_{d \in D}\frac{1}{r_d} MRR=D1dDrd1
其中 D D D是文档集合, r d r_d rd是找到文档 D D D的第一个正确关键字短语的等级。

实验结果展示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OtmdhYZm-1663058442309)(D:\Python\project\weekly_work\2022-09-12_2022-09-18\imgs\image-20220913161632210.png)]

图1 PositionRank设置不同窗口大小的实验结果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oZ515j8c-1663058442310)(D:\Python\project\weekly_work\2022-09-12_2022-09-18\imgs\image-20220913161743316.png)]

图2 PositionRank仅使用此第一次出现的位置信息和所有位置信息结果图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LiPrrNDb-1663058442311)(D:\Python\project\weekly_work\2022-09-12_2022-09-18\imgs\image-20220913161903576.png)]

图3 各种不同模型效果对比图
表2 所有模型效果展示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c67ufTl0-1663058442312)(D:\Python\project\weekly_work\2022-09-12_2022-09-18\imgs\image-20220913162054780.png)]

Reference

[1] Rada Mihalcea and Paul Tarau. 2004. Textrank: Bringing order into text. In Proceedings of the 2004 Conference on Empirical Methods in Natural Language Processing. pages 404–411.

[2] Thuy Dung Nguyen and Min-Y en Kan. 2007. Keyphrase extraction in scientific publications. In Asian Digital Libraries. Springer, pages 317–326.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Trouble..

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

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

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

打赏作者

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

抵扣说明:

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

余额充值