[发明专利]基于效用的在线社交网络链接推荐方法在审

专利信息
申请号: 201610459597.5 申请日: 2016-06-22
公开(公告)号: CN106127591A 公开(公告)日: 2016-11-16
发明(设计)人: 陈清子;陈志;岳文静;刘亚威;王梦伊 申请(专利权)人: 南京邮电大学
主分类号: G06Q50/00 分类号: G06Q50/00
代理公司: 南京经纬专利商标代理有限公司 32200 代理人: 叶连生
地址: 210023 *** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开一种基于效用的在线社交网络链接推荐方法。该方法根据潜在链接对在线社交网络贡献的价值,使用贝叶斯网络来预测潜在链接是对在线社交网络贡献价值最大的K个之一的概率,然后采用top‑K算法得到要推荐的K个潜在链接,并进行推荐。本发明能够维护链接推荐中运营商的利益,推荐的链接不仅建立的可能性较大,而且链接建立后的网络价值较大。
搜索关键词: 基于 效用 在线 社交 网络 链接 推荐 方法
【主权项】:
一种基于效用的在线社交网络链接推荐方法,其特征在于该方法包括以下步骤:步骤1)测量用户对在线社交网络贡献的价值,具体步骤如下:步骤1.1)对用户j定义用户的价值用户的价值包含内在价值和网络价值所述v是价值;所述内在价值是用户在在线社交网络自主付出的价值,I表示用户在在线社交网络自主付出;所述网络价值依赖在线社交网络的链接结构,两个用户建立链接所经过的用户越多,用户的网络价值越小,F表示用户所在的在线社交网络,m表示用户一个单位的价值贡献,α是衰减因子,α∈(0,1),x是与用户j建立链接的用户个数,X是两个用户建立链接所经过的用户数的最大值,|Fj,x|表示在线社交网络上有x个用户与用户j建立链接的集合中节点个数;步骤1.2)定义在线社交网络的总价值TV,所述n为在线社交网络用户数;步骤1.3)定义用户j和用户h间潜在链接建立成功后增加的价值所述是潜在链接建立后的总价值,所述TVE是潜在链接建立前的总价值,所述E是潜在链接建立前的集合,ejh为用户j和用户h间潜在的链接的集合;步骤1.4)定义用户j和用户h间推荐失败的损失Cjh,所述j为第j个用户,h为第h个用户;步骤1.5)定义用户j和h之间的链接对在线社交网络贡献的价值Ujh=Bjh·Vjh‑(1‑Bjh)·Cjh;所述Bjh=1表示用户j和用户h间建立链接,Bjh=0表示用户j和用户h间没有建立链接。所述Vjh是用户j和用户h间建立链接对在线社交网络贡献的价值,所述Cjh是用户j和用户h间推荐失败的损失;步骤2)定义节点相似度所述是相似性函数,rj和rh分别表示与用户j和h连接的用户集合,所述|rj∩rh|表示用户j和h都连接的用户集合的元素个数,所述|rj∪rh|表示表示用户j和h中最少有1个连接的到的用户集合的元素个数;步骤3)定义结构相似度所述是第j个用户和第h个用户建立链接经过的用户数为y的集合中元素个数;步骤4)利用贝叶斯网络潜在因素学习算法计算出价值、成本、结构相似度、节点相似度的分布向量具体步骤如下:步骤4.1)随机初始化θ0,初始化d=0,开始迭代求的过程。所述d为迭代次数,所述所述p0=P(Ri=0),所述P(Ri=0)为Ri=0的概率,所述Ri=0为第i个潜在链接不是对在线社交网络贡献价值最大的K个之一,K为要推荐的链接个数,所述i为第i个潜在链接,所述p0=P(Ri=1)是第i个潜在链接是对在线社交网络贡献的价值最大的K个之一的概率,所述V是价值集合,所述C是成本的集合,所述S是结构相似度集合,所述N是节点相似度,所述L是链接建立的概率的集合;所述θ0中符号定义如下:步骤4.2)定义<mfenced open = "" close = ""><mtable><mtr><mtd><mrow><mi>Q</mi><mrow><mo>(</mo><mrow><mi>&theta;</mi><mo>|</mo><msub><mi>&theta;</mi><mi>d</mi></msub></mrow><mo>)</mo></mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><mi>I</mi><mi>n</mi><mrow><mo>&lsqb;</mo><mrow><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>R</mi><mi>i</mi></msub><mo>|</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow></mrow><mo>&rsqb;</mo></mrow><mo>+</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><mi>I</mi><mi>n</mi><mrow><mo>&lsqb;</mo><mrow><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>V</mi><mi>i</mi></msub><mo>|</mo><msub><mi>R</mi><mi>i</mi></msub><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow></mrow><mo>&rsqb;</mo></mrow><mo>+</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><mi>I</mi><mi>n</mi><mrow><mo>&lsqb;</mo><mrow><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>C</mi><mi>i</mi></msub><mo>|</mo><msub><mi>R</mi><mi>i</mi></msub><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow></mrow><mo>&rsqb;</mo></mrow><mo>+</mo></mrow></mtd></mtr><mtr><mtd><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><mo>&Integral;</mo><mrow><mo>{</mo><mrow><mi>I</mi><mi>n</mi><mrow><mo>&lsqb;</mo><mrow><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>S</mi><mi>i</mi></msub><mo>,</mo><msub><mi>L</mi><mi>i</mi></msub><mo>|</mo><msub><mi>R</mi><mi>i</mi></msub><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow></mrow><mo>&rsqb;</mo></mrow><mo>+</mo><mi>I</mi><mi>n</mi><mrow><mo>&lsqb;</mo><mrow><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>N</mi><mi>i</mi></msub><mo>,</mo><msub><mi>L</mi><mi>i</mi></msub><mo>|</mo><msub><mi>R</mi><mi>i</mi></msub><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow></mrow><mo>&rsqb;</mo></mrow><mo>-</mo><mi>I</mi><mi>n</mi><mrow><mo>&lsqb;</mo><mrow><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>L</mi><mi>i</mi></msub><mo>|</mo><msub><mi>R</mi><mi>i</mi></msub><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow></mrow><mo>&rsqb;</mo></mrow></mrow><mo>}</mo></mrow><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>L</mi><mi>i</mi></msub><mo>|</mo><msub><mi>O</mi><mi>i</mi></msub><mo>,</mo><msub><mi>&theta;</mi><mi>k</mi></msub></mrow><mo>)</mo></mrow><msub><mi>f</mi><msub><mi>L</mi><mi>i</mi></msub></msub></mrow></mtd></mtr></mtable></mfenced>所述M为潜在链接个数,所述表示在集合Li中,所述在Ri=0和Ri=1时P(Ri),P(Vi|Ri),P(Ci|Ri),P(Si,Li|Ri),P(Ni,Li|Ri),P(Li|Ri)的公式为:<mrow><mi>P</mi><mrow><mo>(</mo><msub><mi>R</mi><mi>i</mi></msub><mo>)</mo></mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><msub><mi>p</mi><mn>0</mn></msub></mtd><mtd><mrow><msub><mi>R</mi><mi>i</mi></msub><mo>=</mo><mn>0</mn></mrow></mtd></mtr><mtr><mtd><msub><mi>p</mi><mn>1</mn></msub></mtd><mtd><mrow><msub><mi>R</mi><mi>i</mi></msub><mo>=</mo><mn>1</mn></mrow></mtd></mtr></mtable></mfenced><mo>,</mo><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>V</mi><mi>i</mi></msub><mo>|</mo><msub><mi>R</mi><mi>i</mi></msub></mrow><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msubsup><mi>&lambda;</mi><mi>V</mi><mn>0</mn></msubsup><msup><mi>e</mi><mrow><mo>-</mo><msubsup><mi>&lambda;</mi><mi>V</mi><mn>0</mn></msubsup><mo>&times;</mo><msub><mi>V</mi><mi>i</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><msub><mi>R</mi><mi>i</mi></msub><mo>=</mo><mn>0</mn></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&lambda;</mi><mi>V</mi><mn>1</mn></msubsup><msup><mi>e</mi><mrow><mo>-</mo><msubsup><mi>&lambda;</mi><mi>V</mi><mn>1</mn></msubsup><mo>&times;</mo><msub><mi>V</mi><mi>i</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><msub><mi>R</mi><mi>i</mi></msub><mo>=</mo><mn>1</mn></mrow></mtd></mtr></mtable></mfenced><mo>,</mo><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>C</mi><mi>i</mi></msub><mo>|</mo><msub><mi>R</mi><mi>i</mi></msub></mrow><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msubsup><mi>&lambda;</mi><mi>C</mi><mn>0</mn></msubsup><msup><mi>e</mi><mrow><mo>-</mo><msubsup><mi>&lambda;</mi><mi>C</mi><mn>0</mn></msubsup><mo>&times;</mo><msub><mi>V</mi><mi>i</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><msub><mi>R</mi><mi>i</mi></msub><mo>=</mo><mn>0</mn></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&lambda;</mi><mi>C</mi><mn>1</mn></msubsup><msup><mi>e</mi><mrow><mo>-</mo><msubsup><mi>&lambda;</mi><mi>C</mi><mn>1</mn></msubsup><mo>&times;</mo><msub><mi>V</mi><mi>i</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><msub><mi>R</mi><mi>i</mi></msub><mo>=</mo><mn>1</mn></mrow></mtd></mtr></mtable></mfenced></mrow><mrow><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>S</mi><mi>i</mi></msub><mo>,</mo><msub><mi>L</mi><mi>i</mi></msub><mo>|</mo><msub><mi>R</mi><mi>i</mi></msub></mrow><mo>)</mo></mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msubsup><mi>&lambda;</mi><mi>S</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><msubsup><mi>&lambda;</mi><mi>L</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><msup><mi>e</mi><mrow><mo>-</mo><msubsup><mi>&lambda;</mi><mi>L</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><mo>&CenterDot;</mo><msub><mi>L</mi><mi>i</mi></msub><mo>-</mo><mrow><mo>(</mo><mrow><msubsup><mi>&lambda;</mi><mi>S</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><mo>+</mo><msubsup><mi>&lambda;</mi><mi>L</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><mo>-</mo><msubsup><mi>&lambda;</mi><mi>L</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup></mrow><mo>)</mo></mrow><mo>&CenterDot;</mo><msub><mi>S</mi><mi>i</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><mn>0</mn><mo>&lt;</mo><msub><mi>S</mi><mi>i</mi></msub><mo>&lt;</mo><msub><mi>L</mi><mi>i</mi></msub></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&lambda;</mi><mi>L</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><msubsup><mi>&lambda;</mi><mi>S</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><msup><mi>e</mi><mrow><mo>-</mo><msubsup><mi>&lambda;</mi><mi>S</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><mo>&CenterDot;</mo><msub><mi>S</mi><mi>i</mi></msub><mo>-</mo><mrow><mo>(</mo><mrow><msubsup><mi>&lambda;</mi><mi>S</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><mo>+</mo><msubsup><mi>&lambda;</mi><mi>L</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><mo>-</mo><msubsup><mi>&lambda;</mi><mi>S</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup></mrow><mo>)</mo></mrow><mo>&CenterDot;</mo><msub><mi>L</mi><mi>i</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><mn>0</mn><mo>&lt;</mo><msub><mi>L</mi><mi>i</mi></msub><mo>&lt;</mo><msub><mi>S</mi><mi>i</mi></msub></mrow></mtd></mtr></mtable></mfenced><mo>,</mo></mrow><mrow><mi>P</mi><mrow><mo>(</mo><mrow><msub><mi>N</mi><mi>i</mi></msub><mo>,</mo><msub><mi>L</mi><mi>i</mi></msub><mo>|</mo><msub><mi>R</mi><mi>i</mi></msub></mrow><mo>)</mo></mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msubsup><mi>&lambda;</mi><mi>N</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><msubsup><mi>&lambda;</mi><mi>L</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><msup><mi>e</mi><mrow><mo>-</mo><msubsup><mi>&lambda;</mi><mi>L</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><mo>&CenterDot;</mo><msub><mi>L</mi><mi>i</mi></msub><mo>-</mo><mrow><mo>(</mo><mrow><msubsup><mi>&lambda;</mi><mi>N</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><mo>+</mo><msubsup><mi>&lambda;</mi><mi>L</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><mo>-</mo><msubsup><mi>&lambda;</mi><mi>L</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup></mrow><mo>)</mo></mrow><mo>&CenterDot;</mo><msub><mi>N</mi><mi>i</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><mn>0</mn><mo>&lt;</mo><msub><mi>N</mi><mi>i</mi></msub><mo>&lt;</mo><msub><mi>L</mi><mi>i</mi></msub></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&lambda;</mi><mi>L</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><msubsup><mi>&lambda;</mi><mi>N</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><msup><mi>e</mi><mrow><mo>-</mo><msubsup><mi>&lambda;</mi><mi>N</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup><mo>&CenterDot;</mo><msub><mi>N</mi><mi>i</mi></msub><mo>-</mo><mrow><mo>(</mo><mrow><msubsup><mi>&lambda;</mi><mi>N</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><mo>+</mo><msubsup><mi>&lambda;</mi><mi>L</mi><msub><mi>R</mi><mi>i</mi></msub></msubsup><mo>-</mo><msubsup><mi>&lambda;</mi><mi>N</mi><mrow><mo>&prime;</mo><msub><mi>R</mi><mi>i</mi></msub></mrow></msubsup></mrow><mo>)</mo></mrow><mo>&CenterDot;</mo><msub><mi>L</mi><mi>i</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><mn>0</mn><mo>&lt;</mo><msub><mi>L</mi><mi>i</mi></msub><mo>&lt;</mo><msub><mi>N</mi><mi>i</mi></msub></mrow></mtd></mtr></mtable></mfenced><mo>,</mo></mrow>所述min(Si,Ni)表示Si,Ni中的较小值步骤4.3)根据求出θd+1;步骤4.4)根据最大似然公式式中Oi=<Vi,Ci,Si,Ni,Ri>,令θ为θd+1和θd,分别计算H(O|θd+1)和H(O|θd)的值;步骤4.5)定义H(O|θd+1)和H(O|θd)的差值绝对值μ,如果μ>ε,则d=d+1,返回步骤4.2)继续迭代,否则,所述所述的ε为控制精度的常数;步骤5)根据计算用户i是在线社交网络贡献的价值最大的K个之一的概率所述的H1(Ri)到H4(Ri)表示如下:所述Yi是Si和Ni中的较大的值,yi是Si和Ni中的较小的值;步骤6)计算每个潜在链接是在线社交网络贡献的价值最大的K个之一的概率,采用top‑K算法,获得要推荐的链接的解空间Solution;步骤6.1)对每个链接,根据步骤5)计算出每个潜在链接是在线社交网络贡献的价值最大的K个之一的概率;步骤6.2)采用top‑K算法,得到潜在链接是对在线社交网络贡献价值最大的集合A,A集合内有K个元素,所述top‑K算法是采用数据结构中的最大堆来确定最大的K个元素;步骤6.3)将得到的集合A添加到最终解空间Solution,所述集合A是潜在链接是对在线社交网络贡献的价值最大的集合。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201610459597.5/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top