Swing算法

Swing算法

概念:不同于传统基于“点”的节点亲密度(proximity)计算方式,如:Common  Neighbors,  Adamic/Adar,  Cosine  Similarity,  Jaccard  Similarity,  Wb-cosine,  Rooted  PageRank等,Swing会考虑网络结构信息,以高维的网络结构向二跳节点扩展抗噪能力强,相比传统的CF准确性有大幅的提升。

算法详情:对于用户进行推荐,往往通过对用户的意图进行建模,但是会有马太效应的问题,即会造成越流行的东西随着搜索过程的迭代会越流行,使得那些越不流行的东西石沉大海。

Swing是一种基于图结构的实时推荐算法,Swing指的是秋千,用户和物品的二部图中会存在很多这种秋千,例如(u1,u2,i1)(u1,u2,i1), 即用户1和2都购买过物品ii,三者构成一个秋千(三角形缺一条边)。这实际上是3阶交互关系。传统的启发式近邻方法只关注用户和物品之间的二阶交互关系。Swing会关注这种3阶关系。这种方法的一个直觉来源于,如果多个user在点击了i1i1的同时,都只共同点了某一个其他的i2i2,那么i1i1和i2i2一定是强关联的,这种未知的强关联关系相当于是通过用户来传递的。另一方面,如果两个user pair对之间构成的swing结构越多,则每个结构越弱,在这个pair对上每个节点分到的权重越低。

 

为了衡量物品i和j的相似性,考察都购买了物品i和j的用户u和v, 如果这两个用户共同购买的物品越少,则物品i和j 的相似性越高。极端情况下,两个用户都购买了某个物品,且两个用户所有购买的物品中,共同购买的物品只有这两个,说明这两个用户兴趣差异非常大,然而却同时购买了这两个物品,则说明这两个物品相似性非常大。            

 

 

 

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值