一种信息推荐方法及系统技术方案

技术编号:29489789 阅读:23 留言:0更新日期:2021-07-30 19:01
本发明专利技术公开一种信息推荐方法及系统,基于协同过滤,判断信息过滤系统是否存在过滤气泡的效应,针对过滤气泡效应提出相似度惩罚算法。在为一个目标用户生成推荐列表时,相似度惩罚算法采用迭代方式。每一次的迭代中,算法只确认一个得分最高的产品作为推荐,而其他所有候选产品的得分将受到其与已被推荐产品之间相似度的惩罚。这种迭代延续至目标数量的推荐列表生成为止。实验表明,相似度惩罚算法可以显著改善过滤气泡效应,并同时提升推荐的准确性。

【技术实现步骤摘要】
一种信息推荐方法及系统
本专利技术涉及一种信息推荐方法及系统,属于信息推荐

技术介绍
在当前的信息时代中,用户可以随时轻易地从线上系统获取各类信息。然而,用户很难在如此巨大信息量的环境中定位到最为相关且感兴趣的信息内容。作为一个行之有效的解决方案,推荐系统在过去的十几年中被广泛研究并已取得显著的进展。推荐系统可以有效地辅助用户在繁杂庞大的线上信息系统中定位自己所感兴趣的信息。推荐系统是根据用户的历史行为数据,预测用户未来将会感兴趣的信息对象。按照内在逻辑的不同,大致有两种主流的方法完成这种预测,即基于内容的推荐系统,以及协同过滤。无论是基于何种逻辑的推荐系统,其预测的准确性在多数场景中都是首要目标。然而,除了准确性的要求以外,一个好的推荐系统仍需要满足很多其他的功能需求以达到更好的服务质量。很多推荐方法在追求准确性的过程中,过分地拟合用户的历史兴趣信息,导致群体或个体层面推荐的同质化问题。而脱离准确性又会很大程度上丧失推荐的意义。线上推荐系统中常用的信息过滤技术,这些信息过滤系统将异质化、多样的信息隐藏起来,而只筛选出其认为用户所偏好的同质信息,也就因此形成了一个个的“过滤气泡”。过滤气泡的效应与个体层面多样性的问题类似,其可能导致用户体验的下降,对其信息获取乃至决策带来影响。
技术实现思路
专利技术目的:针对现有技术中存在的问题与不足,本专利技术提供一种信息推荐方法及系统。使推荐系统能够给出符合用户兴趣的多样化推荐信息,避免过滤气泡现象。本专利技术引入一种相似度惩罚算法,以嵌入传统协同过滤方法中,从而打破个性化推荐系统的过滤气泡效应,提供多样化的推荐信息。技术方案:一种信息推荐方法,采集用户与产品的历史交互信息,抽取出用户的集合U={u1,u2,…,uN},以及产品的集合O={o1,o2,…,oM};将用户与产品的历史交互记录利用一个邻接矩阵来表示,记作A={auo}N×M。将共同选择过某两个产品i和j的用户的数量,作为这两个产品信息的相似度。在目标用户未选择的所有产品中找到L个其最有可能感兴趣的产品信息作为推荐列表。针对一个目标用户的包含ku个产品的历史选择记录Hu,计算其所包含的所有产品信息两两之间的平均相似度,作为用户u的个体兴趣多样性divu,对于一个针对目标用户u的长度为L的推荐列表Ru,计算多样性。通过对比一个用户u的历史兴趣多样性divu,与协同过滤算法对其提供的推荐列表的多样性,确定是否存在过滤气泡的效应。将用户u的历史兴趣多样性divu与推荐列表的多样性之间的差值对过滤气泡的效应进行量化,差值的取值范围是[-1,1],其中负值表示推荐列表比用户兴趣更为同质化,也就是算法具有过滤气泡的效应,而正值则表示推荐列表比用户兴趣更为多样。对于协同过滤算法带来的过滤气泡效应,提出一种相似度惩罚算法。相似度惩罚算法使用共同邻居的方式度量产品之间的相似度;根据每个目标用户的选择记录计算每个产品的得分wuo,相似度惩罚算法则是在此得分的基础上,采取迭代的方式产生推荐列表;在每一次的迭代中,相似度惩罚算法只从所有产品中选取得分wuo最高的一个产品,将其加入推荐列表,而随后对其余所有产品的得分进行更新。进一步地,引入一个惩罚系数α后,迭代步中的产品得分更新公式变为:(9)惩罚系数α的取值范围为[0,1]。一种信息推荐系统,包括信息采集模块、协同过滤模块、多样性度量模块、和相似度惩罚模块。信息采集模块采集用户与产品的历史交互信息,抽取出用户信息的集合U={u1,u2,…,uN},以及产品信息的集合O={o1,o2,…,oM};将用户与产品的历史交互(例如购买、观看、访问等)记录信息利用一个邻接矩阵来表示,记作A={auo}N×M,其中,如果一个用户u与产品o之间有过交互记录信息则有auo=1,否则auo=0。协同过滤模块,将共同选择过某两个产品i和j的用户的数量,作为这两个产品信息的相似度,在目标用户未选择的所有产品中找到L个其最有可能感兴趣的产品信息作为推荐。多样性度量模块对用户历史兴趣信息以及推荐列表的多样性进行度量。针对一个目标用户的包含ku个产品的历史选择记录Hu,计算其所包含的所有产品信息两两之间的平均相似度,作为用户u的个体兴趣多样性;通过对比一个用户u的历史兴趣多样性divu,与协同过滤算法对其提供的推荐列表的多样性,判断算法是否存在过滤气泡的效应。通过两者之间的差值对过滤气泡的效应进行量化,差值的取值范围是[-1,1],其中负值表示推荐列表比用户兴趣更为同质化,也就是算法具有过滤气泡的效应,而正值则表示推荐列表比用户兴趣更为多样。相似度惩罚模块使用共同邻居的方式度量产品之间的相似度,并根据每个目标用户的选择记录计算每个产品的得分wuo,在此得分的基础上,采取迭代的方式产生推荐列表。在每一次的迭代中,相似度惩罚算法只从所有产品中选取得分wuo最高的一个产品,将其加入推荐列表,而随后对其余所有产品的得分进行更新。假设在一次迭代步中所确认的推荐产品为r,则任一产品i的得分更新为:(8)其中,nu为目标用户u历史记录中所选择的产品数量。还可以引入一个惩罚系数,对推荐的准确性和多样性进行平衡、调优。引入惩罚系数α后,迭代步中的产品得分更新公式变为:(9)如此,在某一迭代步中确认了一个推荐产品信息后,其他所有产品的得分wuo并非受到其与已推荐产品的相似度的全额惩罚,而是将该相似度乘以一个系数α进行惩罚。一种计算机设备,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行上述计算机程序时实现如上所述的信息推荐方法。一种计算机可读存储介质,该计算机可读存储介质存储有执行如上所述的信息推荐方法的计算机程序。附图说明图1为实施例中相似度惩罚算法应用流程图;图2为实施例中推荐算法气泡效应度量结果图,其中(a)为MovieLens数据中用户兴趣与推荐列表多样性分布,(b)为Netflix数据中用户兴趣与推荐列表多样性分布;图3为实施例中相似度惩罚算法的过滤气泡效应结果图,其中(a)为MovieLens数据中SP算法推荐列表多样性分布,(b)为Netflix数据中SP算法推荐列表多样性分布;图4为实施例中相似度惩罚算法的准确率与召回率表现图,其中(a)为相似度惩罚算法准确率,(b)为相似度惩罚算法召回率;图5为实施例中相似度惩罚算法的复杂度表现图;图6为实施例中相似度惩罚算法惩罚系数调节结果,其中(a)为MovieLens中相似度惩罚算法的准确率,(b)为MovieLens中相似度惩罚算法的气泡效应,(c)为Netflix中相似度惩罚算法的准确率,(d)为Netflix中相似度惩罚算法的气泡效应。具体实施方式下面结合具体实施例,本文档来自技高网...

【技术保护点】
1.一种信息推荐方法,其特征在于:采集用户与产品的历史交互信息,抽取出用户的集合

【技术特征摘要】
1.一种信息推荐方法,其特征在于:采集用户与产品的历史交互信息,抽取出用户的集合U={u1,u2,…,uN},以及产品的集合O={o1,o2,…,oM};将用户与产品的历史交互记录利用一个邻接矩阵来表示,记作A={auo}N×M;
将共同选择过某两个产品i和j的用户的数量,作为这两个产品信息的相似度;
在目标用户未选择的所有产品中找到L个其最有可能感兴趣的产品信息作为推荐列表;
针对一个目标用户的包含ku个产品的历史选择记录Hu,计算ku个产品中两两产品之间的平均相似度,作为用户u的个体兴趣多样性divu;
通过对比一个用户u的历史兴趣多样性divu,与协同过滤算法对其提供的推荐列表的多
样性,确定是否存在过滤气泡的效应;对于协同过滤算法带来的过滤气泡效应,提出
一种相似度惩罚算法。


2.根据权利要求1所述的信息推荐方法,其特征在于:针对一个目标用户的包含ku个产品的历史选择记录Hu,计算其所包含的所有产品两两之间的平均相似度,作为用户u的个体兴趣多样性,即

(3)
其中,max(s)表示所有两两产品对中相似度的最大值;一个用户的个体兴趣多样性divu的取值范围为[0,1]。


3.根据权利要求1所述的信息推荐方法,其特征在于:对于一个针对目标用户u的长度为L的推荐列表Ru,其多样性也可以采取相同的方式计算:

(4)。


4.根据权利要求1所述的信息推荐方法,其特征在于:通过对比一个用户u的历史兴趣
多样性divu,与协同过滤算法对其提供的推荐列表的多样性,确定是否存在过滤气泡
的效应;通过两者之间的差值对过滤气泡的效应进行量化,记作:

(5)

∆div

u
的取值范围是[-1,1],其中负值表示推荐列表比用户兴趣更为同质化,也就是算法具有过滤气泡的效应,而正值则表示推荐列表比用户兴趣更为多样。


5.根据权利要求1所述的信息推荐方法,其特征在于:对于协同过滤算法带来的过滤气泡效应,提出一种相似度惩罚算法;
根据每个目标用户的选择记录计算每个产品的相似度得分wuo,相似度惩罚算法则是在
此相似度得分wuo基础上,采取迭代的方式产生推荐列表;在每一次的迭代中,相似度惩罚算
法只从所有产品中选取得分wuo最高的一个产品,将其加入推荐列表,而随后对其余所有产
品的得分进行更新;设在一次迭代步中所确认的推荐产品为r,则任一产品的得分更新为:

(8)
其中,ku为目标用户u历史记录中所选择的产品数量。


6.根据权利要求1所述的信息推荐方法,其特征在于:对于协同过滤算法带来的过滤气泡效应,提出一种相似度惩罚算法;
根据每个目标用户的选择记录计算每个产品的相似度得分wuo,相似度惩罚算法则是在
此相似度得分wuo基础上...

【专利技术属性】
技术研发人员:侯磊潘雪
申请(专利权)人:南京信息工程大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1