沈小烽,刘柏嵩,吴俊超,钱江波
宁波大学 信息科学与工程学院,浙江 宁波 315211
随着网络的不断发展和网络上数据量的不断增加,用户获得信息的方式也在发生着变化。推荐系统作为一种有效的信息过滤方式,有效缓解了信息爆炸的问题。目前,在电影、音乐、电商等领域,推荐系统是一个的研究热点。但是,在数据量十分庞大的论文学术领域,对推荐系统的研究却相对较少。研究人员每天都需要花费许多时间进行论文检索,以找到与他们研究兴趣相关的学术论文。然而在这一过程中需要过滤大量论文,从而导致了低效的论文信息获取,同时也容易错过对自己有帮助的论文。个性化论文推荐系统通过理解研究人员与论文的交互,对论文进行深度分析,来预测学者感兴趣的论文。这对于缓解学者用户花费大量时间和经验进行文献搜索具有重要作用。在过去的几年里,对个性化论文推荐的模型和算法的研究取得了一定的进展。
以前的研究利用不同的推荐技术为学术论文提供个性化的推荐。目前的论文推荐可分为四种类型,基于内容的推荐、协同过滤推荐、基于图的推荐和混合推荐。基于内容的过滤方法通常提取论文内容来创建项目之间的关系,但是由于版权限制,学术论文的所有内容不能自由获取。此外,由于自然语言的模糊性,基于内容的过滤不能恰当地捕捉用户兴趣。协同过滤是一种经典的推荐方法,在学术论文推荐系统中得到广泛应用。它创建论文引用矩阵来查找学术论文之间的关系。然而,数据稀疏性和冷启动问题是其中的两大难题。为了避免这些陷阱,在现有的方法中引入了基于图的方法,该方法利用引文网络中的链接信息,通过依赖于引用模式、计数的联合强度和引文耦合来进行度量[1]。但是,这些方法通常不考虑研究论文的内容以及用户行为,缺少个性化的推荐。混合推荐通过结合其中的几种方法,利用它们的优点来弥补单一方法的不足,这样可能会产生比较好的推荐效果,但同时也会带来较高的时间复杂度和较差的可扩展性。目前在论文推荐领域中,混合推荐分为模型的混合与方法的混合。Sakib等人[2]为了解决冷启动和版权限制的问题,提出了一种混合方法的推荐,有效地合并了基于内容的推荐模块和基于协同过滤的推荐模块,提高了推荐的准确性。Zhao等人[3]为了提高用户隐含评分预测的准确性,结合传统的潜在因子模型(latent factor model,LFM)和双向门控递归单元神经网络模型(bidirectional gated recurrent unit,BiGRU),提出了一种混合模型。该模型深入挖掘文本非结构化内容中的潜在语义,生成更准确的评分矩阵。
近年来,不同的网络表示方法被提出,这些方法利用不同的论文信息构成网络,将网络中的节点编码到低维空间中,从而生成论文推荐。幂律分布特性表明[4],网络中的大多数节点与少量的边相关联。因此,对于信息有限的节点,很难找到有效的表示方法。为了提高少数节点的嵌入程度,许多学者采用了不同的方法。常用的方法是利用研究论文的引用信息和相关的辅助信息源,即作者、地点、标签和论文,来产生更好的推荐效果。流行度作为论文本身自带的属性,具有天然的推荐效果,因此许多文献利用流行度属性进行论文推荐。Yadav等人[5]提出了一个混合推荐模型RecCite,它将论文的流行度与语义相似度进行结合来生成推荐,并且通过社区检测算法大幅度降低了模型运行时间。与之相似的是,Liu等人[6]提出了一种基于无方向论文引用图的关键字驱动和流行度推荐方法,利用用户查询的关键字和论文的受欢迎程度来有效地推荐出一组令人满意的论文。但是他们只是将流行度作为前期数据处理的方式,在生成论文嵌入向量表示的时候并没有包含流行度信息。而根据应用的网络不同,可以将网络表示分为同构网络表示和异构网络表示,同构网络通常由引文网络构成。Tanner等人[7]提出了一个应用方法来提取引文网络图中的权重,根据原始论文引用参考论文的次数来定义引用关系,并利用这种引用关系来衡量论文之间关系的强弱,最后在不同的方法中进行了实践,该模型的问题在于具有显著的长尾效应和冷启动问题,只有十分热门的论文才会具有强关联性,并且最新出版的论文会与低被引论文遭遇相同的处理。因此,Paudel等人[8]针对推荐的多样性,提出了一个带有擦除的随机游走方式,通过不同定义的擦除矩阵,使顶点拥有不同的概率分布,提高了游走的灵活性,从而避免过多地推荐高被引论文。而在异构图中,Li等人[9]提出了一种基于异构网络的个性化论文推荐方法PRHN,通过研究网络中的元路径以获取用户偏好,通过将不同元路径上的推荐分数与个性化权重相结合来计算全局推荐分数,同时PRHN也没有很好地处理论文的冷启动问题。
图嵌入作为网络表示的一个重要方向,能够将论文内容与论文结构嵌入到低维向量空间中。伴随节点属性的图嵌入增加了节点嵌入信息,有利于缓解物品冷启动问题,因此十分适合图的链路预测,不少学者将它应用到推荐中。Ali等人[10]为了充分利用论文辅助信息,针对冷启动和数据稀疏问题提出了一种加权概率论文推荐模型PR-HNE。该模型通过将来自六个信息网络的信息编码到一个联合潜在空间中来联合学习研究者和论文的动态。为了进一步挖掘辅助信息,Zhao等人[11]充分利用用户与物品之间的潜在关系,提出了一种基于异构网络嵌入的推荐方法,称为HetNERec。它整合了从相关异构网络中提取的各种类型的信息,以提高推荐的性能。这两个模型都试图利用论文的辅助信息来缓解论文冷启动问题。同时,针对这个问题,研究者也从上下文信息入手。Xie等人[12]提出了一种专注于项目推荐的元图嵌入方法,即HINs中的AMERec,并利用用户、物品及其基于元图的上下文之间的低维和高维交互信息进行推荐。为了学习用户和项目的嵌入表示,Wu等人[13]提出了一个协同推荐的共生嵌入正则化度量学习模型CRML,将共生嵌入应用到协同过滤推荐中,并利用软参数共享策略来优化模型参数。在图嵌入过程中,也有研究者通过挖掘文章之间的关系来缓解冷启动问题。Chen等人[14]提出了一种新的基于引文趋势的论文推荐算法CIRec,该算法在网络嵌入过程中更深入地了解了文章之间的潜在关系。CIRec的问题在于它抛弃了引文信息,只是将引文作为一种文章之间的关系进行处理。因此,Zhang等人[15]提出了一种新的嵌入算法DocCit2Vec,将引文信息与引文内容直接嵌入作为一个文档的嵌入信息。Kong等人[16]通过对引文网络中的论文进行向量表示学习,提出了VOPRec模型。它利用文本和网络表示学习的最新研究成果进行无监督特征设计。在将文本信息和结构同一性与引用网络联系起来之后,可以通过网络嵌入来学习论文的向量表示。为了在图嵌入中使物品的嵌入包含更多的信息,阿里巴巴的Wang等人[17]提出了EGES模型,通过构造增强的边信息嵌入,使嵌入向量包含更丰富的边信息,以此解决冷启动问题。
当前许多文献都在利用论文本身包含的复杂信息来缓解冷启动问题,可是大多数模型只是利用了其中的一种或几种,使得部分更有益的辅助信息被忽略。与此同时,目前并没有一种方法能够判断哪些信息对于缓解冷启动问题是有效果的,哪些信息是无效的,缺少定量的判断。目前的论文推荐算法也很少考虑到论文本身的质量对推荐的影响。基于以上的分析,本文提出了一种基于辅助信息嵌入的论文推荐算法CERec,它考虑到在论文推荐中存在的两个现实问题:一是推荐的论文本身的质量问题,具体体现在论文的影响因子、作者、出版刊物等;另一个问题是如何定量地利用论文辅助信息来缓解新出版的论文面临推荐冷启动问题。由于新出版的论文极少会被其他论文引用,导致了新论文很难拥有较高的推荐排名,但是高质量的新论文往往是学者所需要被推荐的论文类型之一。因此,本文推荐算法中设计了一篇论文影响力分数作为一篇论文的质量高低的体现,并且将这个分数作为引文网络中边的权重,以此来决定在随机游走中,每篇论文被选中的概率。在论文的图嵌入中,加入多个不同的论文辅助信息,利用注意力机制对不同的辅助信息附加不同的权重,组成最终的论文表示向量。这不仅增加了嵌入向量本身的信息量,提高了推荐效果,同时具有相似辅助信息的新论文更有可能拥有较高的推荐排名。
对于学术论文推荐,论文本身的质量和作者的声誉以及发表论文的期刊质量是需要考虑的重要方面,统称为论文的影响力。虽然现有方法基于作者和期刊的相似性进行推荐,但它们无法确保质量高和相关性强的论文可以被优先推荐。在大多数的学术论文推荐中,时间越近的论文有着更好的推荐效果,也更加接近学术前沿。同时,论文本身的影响力随着时间的推移而慢慢减弱。利用论文出版时间戳和当前时间戳的差值作为影响论文的一个重要变量,这样做的目的是防止旧论文权重过大而影响推荐的效果。
假设c是对引用次数有显著影响的变量集,cn为论文的第n个特征变量,每个特征变量的维数为m,则。对C进行主成分分析(principal component analysis,PCA),通过线性变换将原始数据变换为一组各维度线性无关的表示,用于提取数据的主要特征分量。对C进行零均值化后求出它的协方差矩阵C′。
将协方差矩阵对应的特征值按照从小到大排序,在实际计算过程中,将特征值的阈值设置为1,得到m个主成分值,其公式为:
其中,Fi为第i个主成分值。将主成分值进行线性组合,得到一个节点的影响力值。
其中,系数αi是在计算主成分时Fi的方差与总方差的比例。
使用上述方法得到的影响力分数Y来构建影响力网络。从目标节点得分中减去源节点得分,其差值ω被定义为边的权重。假设有一条有向边A→B,那么:
其中,Y表示节点的影响力分数。这种分配策略主要是为了在网络节点随机游走时,边权重将作为组成游走概率的一部分,与权重大的边相连节点将会有更大的概率被选择为邻居节点。此外,这种边权重的分配允许在保留引用信息的同时包含论文的影响力。
给定一个源节点u,假设对影响力网络进行固定长度1的随机漫步,a0是起始点,即a0=u,ai是随机走到的第i个点,则走到ai的概率由以下公式生成:
其中,πvk是从点v走到点k的概率,A是标准化常数。
在进行偏置随机游走时,当πvk=ωvk,且常数A为顶点v的出度权重之和。当,其中N+()v表示出度邻居的集合,即i到中的所有节点都有的边,这样就变成了deepwalk[18]的游走方式。虽然deepwalk可以充分发挥权重的优势,但是没有充分考虑引用的同质性和结构等价性。本文采用Node2vec[19]算法,将影响力权重作为随机游走中偏置值的一部分进行计算。与EGES模型相比,带有偏置的随机游走考虑到了论文的质量属性对论文关系的影响,使得权重较大的节点更容易被选为邻居节点,从而形成带有属性影响的论文序列。
假设一个随机游走从点u走到了点v,当决定下一个点k时,转移概率如下:
其中,duk表示节点u和k之间的最短路径距离。ωvk是影响力网络中计算得出的边权重,权重越大,转移的概率也就越大。通过调节参数q,使具有相似主题的论文紧密嵌入在一起,调节参数p将优先考虑具有相似引用的论文组成论文序列。由于权重ω的性质,使得高质量的论文有更高的概率被选中,因此在向量空间中,高质量论文之间的距离更短。
假设f:V→Rd是从顶点到向量空间的映射函数。其中d是向量空间表示的维数,f是一个参数矩阵,大小为||V×d。对于源节点u∈V,将N(u)∈V定义为通过随机游走得到的邻域节点。将Skip-gram算法应用到论文序列,通过f最大化论文u与N()u的对数概率,得到论文u的嵌入表示:
在学术论文推荐系统的上下文中,辅助信息包括论文作者、出版期刊(社)、学科分类等论文内容以外的信息。在论文图嵌入的过程中加入辅助信息,可以丰富论文嵌入的信息量。当具有较少被引用的新论文与用户感兴趣的论文具有相似的辅助信息时,它们在嵌入空间中更为接近。基于这个假设,提出了如图1所示的带有辅助信息的图嵌入方法。其中Sn表示辅助信息,S0表示由图嵌入得到的论文嵌入,αn为不同辅助信息的不同权重。
假设W表示论文或辅助信息的嵌入矩阵。Wu表示论文u的嵌入,Wiu表示附加到论文u的第i种类型的辅助信息的嵌入。当d为嵌入维数时,W0uW1u…Wnu∈Rd。因此,对于具有n种辅助信息的论文v,共有n+1个向量。当在嵌入过程中集成不同种类的辅助信息时,不同种类的辅助信息对论文的贡献程度是不同的,比如同一个作者的论文比同一出版社出版的论文相关性更大。利用注意力机制来聚合与项目相关的辅助信息的嵌入,给定一个节点u,设A∈R||u×()n+1为权重矩阵。结合不同辅助信息的加权平均层定义如下:
其中,Mu是论文u的聚合嵌入,aiu为第u项第i类辅助信息的权重。以这样的方式合并,让论文的嵌入包含更多的信息,使得具有相似辅助信息的论文在嵌入空间中更接近。
假设节点u是节点v的上下文节点,通过负采样后,带有辅助信息的图嵌入的目标函数变为:
其中,σ()为sigmod函数y是正负样本的标签,正样本为1,负样本为0。
基于以上分析,算法1给出了带有辅助信息的图嵌入算法的详细步骤。
算法1带有辅助信息的图嵌入算法
输入:影响力网络G=( )
V,E,W,每个节点的游走次数t,每次游走长度l,窗口长度k,游走参数q和p,辅助信息S,嵌入维数d。
输出:论文的加权嵌入向量M和权重矩阵A。
1.初始化嵌入向量M和权重矩阵A
2.fori=1→t:
3. forv∈V:
4.PL=node2vecWalk( )
G,v,l,p,q
5. forj=1→l:
6.v′=PL()
j
7. for()
0,l遍历窗口k:
8.u=NegativeSampling()
V
9. update(M,A)→L(v′,u,y)
10. end for
11. end for
12. end for
13.end for
14.return( )
M,A
在图嵌入中,推荐问题将转化成链路预测问题,两个节点的相似性越高表明其链接的可能性越高。由于论文的数据量十分庞大,每次计算论文的嵌入向量将会耗费大量时间,一般采用离线计算。将用户交互过或感兴趣的论文作为目标论文,计算与其他论文的距离,来获得推荐论文。当获得论文嵌入向量后,使用余弦相似度来计算论文之间的距离。假设两篇论文表示为d维向量Θ(u)=( x1,x2,…,xd)以及Θ(v)=( y1,y2,…,yd),其相似度计算公式如下:
实验采用公开可用的ArnetMiner学术论文数据集,该数据集的内容包括论文信息、论文引用信息、作者信息和作者协作信息,其中包含2 092 356篇论文以及相关的8 024 869条引用信息,1 712 433位作者和4 258 615条作者之间的合作关系信息。数据集还包含了每个作者的论文发表数量、H指数、P指数、合著者信息和研究兴趣等信息,能够对作者进行全方位的评估。根据以上数据,实验使用论文以及引用关系创建了包含29 813个节点的引用图,其中有71 403条边以及等量的权重数值。
为了评估这些比较方法的有效性,实验选择了两个不同的指标,分别是召回率和NDCG(normalize discounted cumulative gain),用于评估论文推荐结果的好坏。Recall@N是指为每篇目标论文推荐N篇候选论文时的召回率。对于论文推荐问题,召回率越高的同时N越小,推荐效果越好。
Recall@N:召回率用于衡量出现在前N名推荐列表中的原论文的百分比。该比率表示每个目标论文的总召回率除以所有目标论文的大小。该指标定义为:
其中,Q为目标论文数,N为推荐数。对于每篇目标论文,Ru是基于一篇目标论文u推荐的前N名论文列表。Tu是引用目标论文u的论文集。
NDCG@N:推荐系统的有效性对相关论文的排名很敏感,相关度越高的论文应该排名越高,因此这不仅仅需要召回率来表示,还需要NDCG来进行评估。实验使用NDCG来衡量推荐的排名列表。排名列表在特定位置的NDCG值计算如下:
其中,Q为目标论文数,N为前N项的推荐数。ri是排名列表中第i篇论文的评级,如果ri=1则表示论文相关,如果ri=0则表示论文不相关。IDCG@N是一个理想排名分数,如果NDCG@N=1则表示这是一个理想的排名,即最相关的论文排第一,依次往下。
(1)Node2vec[19]:对有向无环子图进行抽样的图嵌入方法。它在deepwalk基础上进行了改进,增加两个权重参数来寻找广度优先搜索和深度优先搜索之间的平衡,获得的序列通过skip-gram算法进行嵌入。
(2)Doc2vec[20]:一种众所周知的排名方法,用于测量基于文本的匹配文档与查询的相关性。它使用神经网络模型将可变长度的文本映射成固定长度的分布式向量。
(3)EGES[16]:带有辅助信息的图嵌入方法。从用户的行为历史中构建一个项目图,并学习图中所有项目的嵌入。项目嵌入用于计算所有项目之间的成对相似性,然后进行推荐。
(4)RecCite[5]:将论文的受欢迎程度与语义相似性相结合,以获得相关性的论文推荐方法。同时从更通用和更大的网络中过滤论文到与SIG(特殊兴趣小组)相关的社区中,解决了可伸缩性方面的问题。
(5)PGRec[21]:引入了pregraph,作为面向排名推荐系统中数据的图形表示的一种新的结构,并且开发了一种在异构用户-项目数据图中嵌入节点的新方法。它使用基于CNN的图嵌入技术来微调由NMF从用户-项目交互矩阵中最初提取的特征向量。
实验分别进行了召回率的对比和NDCG指标的对比。召回率主要凸显了推荐结果的精准度,NDCG主要凸显了排名的准确度。在进行Top-N推荐时,N分别取25、50、75、100进行实验。实验中CERec算法的随机行走长度是10,每个节点的行走次数是20次,上下文窗口长度为5,向量的维数被设置为64。
表1表明了在ArnetMiner数据集上各算法的性能和推荐效果。与其他表示学习算法相比,CERec在不同的Top-N值下都取得了更好的推荐效果。随着Top-N的增大,各个算法的Recall也在增大。当N值为25时,在召回率指标中,CERec分别比Doc2vec和Node2vec两种经典嵌入方法提高了0.078 3和0.128 2,其中召回率提升比较大的主要原因是CERec添加了论文的多种辅助信息,丰富了论文的最终嵌入,使嵌入向量包含了更多信息。对比最新的嵌入模型,CERec比EGES在召回率上提高了0.030 0,其中召回率提升的主要原因是CERec模型在图嵌入过程中,考虑到了论文属性对论文关系,也就是两个节点的边的影响。在N增大的过程中,CERec在召回率指标中的表现也比其他5个模型的表现要好。
表1 不同图嵌入方法的实验结果比较Table 1 Comparison of experimental results of different graph embedding methods
从表1可以看出,在NDCG指标的对比中,当N的值为25时,CERec分别比Doc2vec和Node2vec两种经典嵌入方法提高了0.059 4和0.111 3。实验说明融合了辅助信息的嵌入向量能有效得提升嵌入向量的信息量,从而提高推荐结果的准确性。其中一部分原因是CERec加入了论文影响力的考虑,使得高质量论文更容易被推荐,这也影响了推荐论文的最终排序,使得在NDCG中拥有更好的表现。在与最新的两种嵌入方法的对比中,CERec分别比EGES、RecCite和PGRec三种嵌入方法提高了0.046 4、0.029 9和0.015 3。其中相对于EGES模型的提升比较明显,主要原因是EGES模型在聚合辅助信息时,对每种辅助信息的权重都是一样的,没有进行区分,导致不同辅助信息有了相同权重的嵌入,不利于最终的论文排名。
图2和图3分别标明了不同算法在不同Top-N下的实验指标结果。可以看到CERec模型无论在召回率指标还是NDCG指标都有着不错的表现。并且当N值增大时,CERec与两种经典嵌入算法在召回率上的差距也在增大,原因是带有辅助信息的嵌入向量增加了论文相似度的区分,使得推荐效果更好。
参数p和q的作用是根据不同的节点距离设置转移概率。参数p控制再次访问被访问过的节点的概率,参数q控制游走偏向于内节点游走还是外节点游走。两个参数的本质作用是在形成论文序列时,邻接节点的选取偏向于相似引用的论文作为邻居还是相似主题的论文作为邻居。因此对于最终形成的论文向量嵌入具有很大的影响。图4是模型在不同p值和q值下召回率的折线图,虽然越低的q值鼓励引用相似性的探索,但是同时较低的p值保证了节点不会探索得太远。
学术论文推荐系统越来越受到科学界的关注,它极大地促进了研究工作者对特定领域的深入了解。在目前阶段,论文推荐主要是基于引文链接的方法,然而在处理引文信息网络过程中,随机游走并没有考虑到论文属性对论文关系的影响,同时忽略了论文的辅助信息的作用。文本提出了一种基于辅助信息嵌入的论文推荐方法,考虑到论文本身的质量是影响推荐结果的一个重要因素,因此利用与论文质量相关的变量来构建影响力网络,提高了论文质量对推荐结果的影响。同时,在论文嵌入向量中加入论文辅助信息,缓解了新论文的冷启动问题。由于在图嵌入技术中,普遍缺少对用户兴趣的考量,在下一步工作中,会将用户兴趣考虑到推荐模型中,生成更具个性化的推荐结果。