法律状态公告日
法律状态信息
法律状态
2020-06-19
授权
授权
2017-08-08
实质审查的生效 IPC(主分类):G06F17/30 申请日:20170209
实质审查的生效
2017-07-14
公开
公开
技术领域
本发明涉及移动个性化推荐技术领域,尤其涉及一种基于移动情境的大规模在线推荐方法。
背景技术
通过分析移动用户历史行为和移动场景等移动情境信息,推荐系统能够实时地为不同的移动用户提供个性化的信息推荐服务,极大限度地提升了用户体验。
协同过滤(Collaborative Filtering)算法是推荐系统领域最早提出来的算法,该算法已经在学术界和工业界得到深入的研究和广泛的应用。基于用户的协同过滤算法用于为用户推荐和该用户兴趣相似的用户喜欢的物品。但随着用户数量的增加,计算量也急剧增大,对基于移动情境的在线推荐的准确性和实时性提出了很大的挑战。
发明内容
为了克服现有技术存在的缺点与不足,本发明提供一种基于移动情境的大规模在线推荐方法,用以降低移动推荐系统在线计算量,同时保持个性化推荐的高准确性。
为解决上述技术问题,本发明提供如下技术方案:一种基于移动情境的大规模在线推荐方法,包括如下步骤:
S1、收集用户情境信息并进行行为偏好分析,得到用户行为偏好信息;所述用户情境信息包括用户客户端信息、用户特征信息和用户历史行为信息;
S2、根据用户客户端信息、用户特征信息、用户历史行为信息和所述用户行为偏好信息的动态变化特性,将用户客户端信息、用户特征信息、用户历史行为信息以及用户行为偏好信息分为动态特征和非动态特征两类情境信息;
S3、由非动态特征,得到用户的非动态特征向量,并根据所述非动态特征向量进行用户聚类,得到若干个用户类;
S4、获得目标用户的非动态特征向量以及各个聚类中心的非动态特征向量,然后按非动态特征相似性的计算方法计算目标用户与各个聚类中心的相似性,取得相似性最大的聚类中心作为目标用户的聚类中心,并将所属聚类中心对应的聚类中的所有其余用户作为目标用户的粗选近邻用户;
S5、根据动态特征和非动态特征,在目标用户的粗选近邻用户中计算并得到精选近邻用户;
S6、根据精选近邻用户,确定目标用户的前N个推荐物品。
进一步地,所述步骤S1中,所述用户行为偏好信息包括用户的作息行为、用户的移动行为、用户对物品的偏好行为以及以上行为的规律性。
进一步地,所述步骤S2中,所述用户历史行为信息指用户在平台上的行为属性记录集合,所述行为属性记录集合包括用户的人口信息、用户对物品的操作行为、用户的操作时间、用户的设备信息、用户的网络信息及位置属性;
所述行为的规律性是指:在规律性时间窗口内,用户相应行为的发生次数是否达到预先规定的次数;若达到,则认为用户的相应行为具有规律性;否则认为用户的相应行为不具有规律性。
进一步地,所述规律性时间窗口的大小为大于等于7天。
进一步地,所述步骤S2中,所述动态变化特性是指:在一个变化特性时间窗口内,若用户的特征容易发生变化,则认为用户的相应特征是动态的;否则认为用户的特征是非动态的;其中,所述变化特性时间窗口的大小为1天;
所述动态特征包括用户的作息行为、用户的移动行为以及用户对物品的偏好行为;
所述非动态特征包括用户的人口信息、用户的设备信息以及用户的行为规律性。
进一步地,所述步骤S3中根据所述非动态特征向量进行用户聚类,具体为:
S31、随机选择C个用户的非动态特征向量作为C个聚类的聚类中心;
S32、计算各个用户与各个聚类中心的相似性,找到与用户相似性最大的聚类中心,并将该用户分配到相应的聚类中;其中,计算相似性的方法采用皮尔逊相关系数算法或者余弦相似性算法或者杰卡德相似系数法算法中的一种;
S33、利用聚类结果中各个用户的非动态特征向量,更新当前聚类的聚类中心;所述聚类中心的更新方法是指:计算聚类中各个用户的各个非动态特征列的平均值作为该聚类中心的非动态特征向量的一个元素;
S34、重复执行步骤S32和S33,直至聚类结果收敛;所述聚类结果收敛的收敛判断准则是:连续两次聚类的聚类中心变化微小。
进一步地,所述步骤S4中所述非动态特征相似性的计算方法采用皮尔逊相关系数算法或者余弦相似性算法或者杰卡德相似系数法算法中的一种;所述目标用户是指在线环境下实时产生的,将要为其推荐物品的用户。
进一步地,所述步骤S5中在目标用户的粗选近邻用户中计算并得到精选近邻用户,其计算方法为:
S51、计算目标用户与粗选近邻用户的动态特征相似性;所述动态特征相似性的计算方法采用皮尔逊相关系数算法或者余弦相似性算法或者杰卡德相似系数法算法中的一种;
S52、利用动态特征相似性和非动态特征相似性,计算目标用户与粗选近邻用户的综合相似性,具体为:
S521、对动态特征相似性和非动态特征相似性进行标准化计算,得到标准化的动态特征相似性和标准化的非动态特征相似性;
S522、通过聚合函数对标准化的动态特征相似性和标准化的非动态特征相似性进聚合计算,得到综合相似性;
S53、以目标用户综合相似性最大的K个粗选近邻用户作为目标用户的精选近邻用户。
进一步地,所述步骤S521中对动态特征相似性和非动态特征相似性进行标准化计算,其标准化计算方法采用最小-最大值标准化方法或标准差标准化方法中的一种;
所述步骤S522中的聚合函数采用统计聚合函数或者加权聚合函数或者非线性聚合函数中的一种;
其中,所述统计聚合函数为取标准化的动态特征相似性和标准化的非动态特征相似性两个值中的最大值或最小值;所述加权聚合函数为取标准化的动态特征相似性和标准化的非动态特征相似性两个值的加权和,其加权系数的值根据经验选取。
进一步地,所述步骤S6具体为:首先根据目标用户的精选近邻用户的评分,预测目标用户对未评分物品的评分;将目标用户对所有未评分物品的预测评分降序排序,选取前N个物品作为最终的推荐物品;
其中,所述预测目标用户对未评分物品的评分,采用基于用户近邻的协同过滤计算方法;所述前N个物品中的个数N的取值,根据实际的推荐场景确定。
采用上述技术方案后,本发明至少具有如下有益效果:
1、本发明降低了移动推荐系统在线计算量:在线计算只在目标用户的粗选用户集中进行;采用非动态情景信息对历史用户进行聚类,可使聚类结果在较长时间(如几天)保持高准确度;
2、本发明在线推荐采用用户的综合相似性,既考虑了用户的非动态特征,又考虑了用户的动态特征,保证在线环境下的准确性。
附图说明
图1是本发明一种基于移动情境的大规模在线推荐方法的步骤流程图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互结合,下面结合附图和具体实施例对本申请作进一步详细说明。
本发明提供一种基于移动情境的大规模在线推荐方法,如图1所示,其步骤如下:
S1:根据收集到的用户情境信息进行行为偏好分析,得到用户行为偏好信息;
S2:根据用户客户端信息、用户特征信息、用户历史行为信息和所述用户行为偏好信息的动态变化特性,将所述用户客户端信息、所述用户特征信息、所述用户历史行为信息和所述用户行为偏好信息分为动态特征和非动态特征两类情境信息;
S3:根据用户的所述非动态特征,得到用户的非动态特征向量,根据所述非动态特征向量进行用户聚类,得到若干个用户类。
S4:取得所述目标用户与所述聚类中心的非动态特征向量,利用所述非动态特征相似性的计算方法求得目标用户与所述聚类中心的相似性;以与所述目标用户最相似的聚类中心对应的其余用户作为目标用户的粗选近邻。
S5:根据所述动态特征和所述非动态特征,在所述目标用户的粗选近邻用户中计算得到精选近邻用户。
S6:根据所述目标用户的所述精选近邻用户,确定所述目标用户的前N个推荐物品。
所述步骤S1、步骤S2和步骤S3的计算是离线完成;所述步骤S4、步骤S5和步骤S6的计算是在线实时完成。
其中,所述离线完成是指在获得所述目标用户推荐请求前预先完成计算,得到计算结果;所述在线实时完成是指在获得所述目标用户推荐请求时极短时间内完成计算,得到计算结果;优选地,所述极端时间内是指小于1秒钟
其中,所述步骤S1中,所述用户历史行为信息是指用户在平台上的行为属性记录的集合,包括用户的人口信息、用户对物品的操作行为、用户的操作时间、用户的设备信息、用户的网络及位置属性;所述用户行为偏好信息,包括用户的作息行为、用户的移动行为、用户对物品的偏好行为以及以上行为的规律性。
所述行为的规律性是指,在一定的时间窗口内,用户相应行为的发生次数是否达到预先规定的次数;如果达到,则认为用户的相应行为具有规律性;否则认为用户的相应行为不具有规律性;优选地,该时间窗口的大小应不少于7天。
所述步骤S2中,所述动态变化特性是指,在一个较小的时间窗口内,若用户的特征容易发生变化,则认为用户的相应特征是动态的;否则认为用户的特征是非动态的。
优选地,该时间窗口的大小应不多于1天;所述动态特征包括用户的作息行为、用户的移动行为、用户对物品的偏好行为;所述非动态特征包括用户的人口信息、用户的设备信息、用户的行为规律性。
所述步骤S3中,根据用户的非动态特征进行用户聚类的步骤为:
假设聚类中心的个数为|C|,以C1,…,C|C|表示各个聚类的用户集,Y1,…,Y|C|表示相应聚类的聚类中心;
S3-1:初始化各聚类的聚类中心。优选地,随机从用户集中选取|C|个用户,以该用户的非动态特征向量初始化各个聚类中心;
S3-2:计算各个用户与各个聚类中心的相似性,并将该用户划分至其最相似的聚类中;
S3-3:若未达到收敛条件,则以各聚类中的用户的非动态特征向量的平均值更新该聚类的聚类中心,然后重复所述步骤S3-3。
其中,所述步骤S3-2中非动态特征相似性的计算方法可采用采用皮尔逊(Pearson)相关系数、余弦相似性(COS)或杰卡德(Jaccard)相似系数法中的一种,优选地,采用皮尔逊相关系数法计算用户之间的非动态特征相似性:
a)皮尔逊相关系数计算公式:
b)杰卡德相似系数计算公式:
c)余弦相似性计算公式:
其中,所述步骤S3-3中所述聚类收敛条件是指,连续两轮聚类结果中,各聚类的用户集没有发生变化或聚类中心变化很小。
所述步骤S5中,目标用户的精选近邻用户的计算方法为:
S5-1:计算目标用户与粗选近邻用户的动态特征相似性;
S5-2:利用目标用户与粗选近邻用户的动态特征相似性和非动态特征相似性,计算目标用户与粗选近邻用户的综合相似性;
S5-3:以目标用户综合相似性最大的K个粗选近邻作为目标用户的精选近邻;
其中,所述步骤S5-1中动态特征相似性的计算方法采用皮尔逊相关系数、余弦相似性或杰卡德相似系数法中的一种;
所述步骤S5-2中所述综合相似性采用如下方法计算:
假设将综合相似性定义为:
sim(u,v)=f(simA(u,v),simN(u,v))
其中simA(u,v)和simN(u,v)分别为用户u与v的标准化动态特征相似性和标准化非动态特征相似性,f(x,y)为某个聚合函数;特别地,f(x,y)可选择但不限于下述方案:
a)统计聚合函数,如max{x,y},min{x,y}等;
b)加权聚合函数,如λx+(1-λ)y;其中λ根据经验选取,优选地,λ=0.5;
c)其他非线性聚合函数。
进一步的,所述特征相似性的标准化方法可采用最小-最大值标准化(min-maxnormalization)或标准差标准化(zero-mean normalization)方法,优选地,采用最小-最大值标准化方法:
a)最小-最大值标准化计算公式:
b)标准差标准化计算公式:
所述步骤S5-3中所述的精选用户近邻个数K应根据领域知识及聚类内的用户个数合理选定。优选地,设目标用户的粗选用户集大小为|Cu|,则
优选的,所述步骤S6中所述的物品推荐列表计算步骤为:
S6-1:预测目标用户对未评分物品的评分;
S6-2:将目标用户对所有未评分物品的预测评分降序排序,选取前N个物品作为最终的推荐列表。
所述步骤S6-1中所述的评分预测计算方法采用一种基于用户近邻的协同过滤计算方法;优选地,采用如下的计算方法:
设目标用户u的精选用户集为O(u),任意用户v对物品i的行为评分为rvi,用户v对所有物品的行为评分平均值为
其中,所述步骤S6-2中所述的物品推荐列表长度N应根据实际的推荐场景设定。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解的是,在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种等效的变化、修改、替换和变型,本发明的范围由所附权利要求及其等同范围限定。
机译: 用于基于情境感知来提供推荐项目的方法和移动设备
机译: 基于几乎在线大规模协同过滤的推荐系统
机译: 基于几乎在线大规模协同过滤的推荐系统