发明名称 网络消息通信中群发推荐的方法
摘要 本发明公开一种网络消息通信中群发推荐的方法,解决现有技术中采用全局批量数据处理方法而导致的推荐效率低,运行时间长,存储空间开销大的问题。其方法步骤为:(1)构建群组集合;(2)获得每个群组的交互消息数;(3)提取有效群组集合;(4)获取每个有效群组的GR值;(5)计算推荐得分值;(6)获取总推荐得分值;(7)获得推荐人。本发明从局部网络消息通信中抽取局部关系网络,不需要进行全局批量数据处理,运行时间快,使本发明能够应用于更大规模消息通信网络中;并且通过对局部网络消息通信数据处理,抽取出局部关系网络,考虑与用户有直接消息交互的联系人群组集合,使本发明在群发推荐时能够获得较高的准确率。
申请公布号 CN102664744A 申请公布日期 2012.09.12
申请号 CN201210073291.8 申请日期 2012.03.19
申请人 西安电子科技大学 发明人 黄健斌;李伟;赵贝贝;孙鹤立;吴志殿;慕鹏;雷倩
分类号 H04L12/18(2006.01)I;H04L12/58(2006.01)I 主分类号 H04L12/18(2006.01)I
代理机构 陕西电子工业专利中心 61205 代理人 田文英;王品华
主权项 一种网络消息通信中群发推荐的方法,包括以下步骤:(1)构建群组集合1a)任取一未访问消息m;1b)从m中抽取出临时群组a;1c)从群组集合中随机选取一个未被访问的群组b;1d)判断a,b之间的集合关系:如果群组b是临时群组a的真子集,则更新群组集合;如果群组b和临时群组a相同,则更新群组b;如果群组b不是临时群组a的子集,则执行步骤1e);1e)判断群组集合中是否存在未访问群组:如果群组集合中存在未访问的群组,则重复步骤1c)和1d),直到群组集合中所有群组都被访问;如果群组集合中的群组均被访问,执行步骤1f);1f)判断历史消息记录中是否存在未访问消息:如果用户的历史消息记录中存在未被访问的消息,则执行步骤1a)、步骤1b)、步骤1c)、步骤1d)、步骤1e),直到所有的消息都被访问;如果用户的历史消息记录中所有消息都已经被访问,则群组集合构建完成;(2)获得每个群组的交互消息数(3)提取有效群组集合访问群组集合中的每个群组,当被访问群组的交互消息数小于最小交互消息数阈值时,将其从群组集合中直接删除;否则,保留;当遍历完群组集合后,就提取出了有效群组集合;(4)获取每个有效群组的GR值4a)按照下列步骤获取有效群组集合中任意一个有效群组g的GR值:第一步,确定权重系数ω;第二步,建立映射函数p(i);第三步,利用下式获得有效群组g的GR值: <mrow> <mi>GR</mi> <mo>&LeftArrow;</mo> <mi>&omega;</mi> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <mi>Iout</mi> </mrow> </munder> <msup> <mrow> <mo>(</mo> <mn>1</mn> <mo>/</mo> <mn>2</mn> <mo>)</mo> </mrow> <mrow> <mi>p</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> </msup> <mo>+</mo> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <mi>Iin</mi> </mrow> </munder> <msup> <mrow> <mo>(</mo> <mn>1</mn> <mo>/</mo> <mn>2</mn> <mo>)</mo> </mrow> <mrow> <mi>p</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> </msup> </mrow>其中,GR是衡量一个有效群组和用户之间联系强弱程度的数值;←表示将其左侧计算获得的结果赋值给右侧;ω是权重系数;i表示一条消息通信记录;Iin,Iout分别表示用户接收的消息集合和用户发送的消息集合;p(i)是映射函数;4b)访问有效群组集合中的每个有效群组,由步骤4a)计算当前有效群组的GR值,当遍历完有效群组集合后,就获得了每个有效群组的GR值;(5).计算推荐得分值5a).从有效群组集合中任意选取一个未访问的有效群组g;5b).从有效群组g中任意选取一个未访问的联系人c;5c).判断c是否在S中:如果联系人c已经在用户已输入的联系人集合S中,则联系人c在有效群组g中的推荐得分值Fg(c)为0,执行步骤5e);如果联系人c不在已输入的联系人集合S中,则执行步骤5d);5d).判断g与S的交集是否为空:如果有效群组g与用户已输入联系人集合S的交集为空,则联系人c在有效群组g中的推荐得分值Fg(c)=0,执行步骤5e);否则联系人c在有效群组g中的推荐得分值Fg(c)等于有效群组g的GR值,执行步骤5e);5e).判断g中是否存在未访问联系人:如果有效群组g中存在未访问的联系人,则执行步骤5b)、步骤5c)、步骤5d),直到有效群组g中所有的联系人都被访问;如果有效群组g中所有的联系人均被访问,执行步骤5f);5f)判断有效群组集合中是否存在未访问有效群组:如果有效群组集合中存在未访问有效群组,则执行步骤5a)、步骤5b)、步骤5c)、步骤5d)、步骤5e),直到有效群组集合中所有有效群组都被访问;当有效群组集合中所有有效群组均被访问时,完成计算每个联系人的推荐得分值;(6)获取总推荐得分值(7)获得推荐人对所有联系人按其总推荐得分值大小进行降序排序,将得分最高的前N位联系人作为推荐对象输出给用户。
地址 710071 陕西省西安市太白南路2号