原文链接:https://dreamhomes.github.io/posts/202007261112.html
摘要
网页检索的主要任务是按照应答用户查询的相关性和流行度对相关对象进行排名。由于不同网页对象间存在不同的关系,传统的PageRank模型在计算对象的流行度(Popularity)时不再有效。本文提出一种对特殊域中对象级排名的链接分析模型,明确的对每种的对象关系分配一个流行度传播因子(PPF,Popularity Propagation Factor),研究不同种类关系的不同PPF如何影响网页对象的流行度排名,同时提出一种自动搜索PPF的方法。
算法过程
网页链接构成的图称为网页图,这种图为同质图且算法PageRank和HITS可以通过分析链接来对网页进行排序。网页中不同种类的对象通过相互联系形成了对象图,由于图中包含不同对象及其不同的关系,明显PageRank算法不适用且未考虑对象间关系的影响,例如Author多的Paper其流行度不一定高。网页对象图如下所示:
文章中提出一种综合考虑对象的网页流行度和对象间关系的计算网页对象流行分数的排序算法 PopRank。该方法是对PageRank算法的扩展,通过给不同种类的链接关系分配一个PPF。如上图的文献对象关系图所示,需要三个PPF:
γ
3
\gamma_3
γ3,
γ
2
\gamma_2
γ2,
γ
1
\gamma_1
γ1来表示三种类型的关系:cited-by, authored-by, and published-by。通过人工分配PPF显然不现实,因此文中提出一种基于模拟退火的方法(simulated annealing algorithm)来自动学习每种类型关系的PPF,为了减小模拟退火算法的搜索空间,文中仅选用子图来计算PPF。
上图表示类型为
X
i
X_i
Xi对象的网页链接。由于Web中对象信息是嵌入在网页中的,因此可以根据PageRank来计算网页流行度(Web Popularity)。
利用向量
R
E
X
R_{EX}
REX 来表示对象
X
X
X 的网页流行度,
R
X
R_X
RX表示通过网页链路图或对象关系图找到对象
X
X
X的概率。为了计算对象的流行度分数,PopRank算法综合考虑了网页对象流行度及其对象关系,使用以下公式来计算类型
X
X
X对象的PopRank分数
R
X
R_X
RX:
R
X
=
ε
R
E
X
+
(
1
−
ε
)
∑
∀
Y
γ
Y
X
M
Y
X
T
R
Y
R_{X}=\varepsilon R_{E X}+(1-\varepsilon) \sum_{\forall Y} \gamma_{Y X} M_{Y X}^{T} R_{Y}
RX=εREX+(1−ε)∀Y∑γYXMYXTRY
其中:
- X = { x 1 , x 2 , … , x n } , Y = { y 1 , y 2 , … , y n } X=\left\{x_{1}, x_{2}, \ldots, x_{n}\right\}, Y=\left\{y_{1}, y_{2}, \ldots, y_{n}\right\} X={x1,x2,…,xn},Y={y1,y2,…,yn}表示类型为 X X X, Y Y Y的对象集合。
- R X R_X RX和 R Y R_Y RY 表示类型为 X X X, Y Y Y的流行度分数。
- M Y X M_{YX} MYX 为邻接矩阵。 m y x = 1 N u m ( y , x ) m_{y x}=\frac{1}{N u m(y, x)} myx=Num(y,x)1 如果对象 x , y x, y x,y 之间存在边,否则为0, N u m ( x , y ) Num(x, y) Num(x,y)表示对象 y y y到类型为 X X X对象间的链接数量。
- γ Y X \gamma_{Y X} γYX表示对象类型 X X X 与对象类型 Y Y Y间的PPF, ∑ ∀ Y γ Y X = 1 \sum_{\forall Y} \gamma_{Y X}=1 ∑∀YγYX=1。
- R E X R_{EX} REX表示对象类型 X X X的网页流行度。
- ε \varepsilon ε 表示衰减因子。
后续包括利用模拟退火算法自动学习PPF(SAFA,Simulated Annealing for Factor Assignment)和子图选择过程。算法过程如下所示:
需要了解参数设置的同学可以查看原文。