本发明涉及智能推荐,尤其涉及一种物品推荐方法及系统。
背景技术:
1、大数据时代背景下,网络产生的数据爆炸式增长,用户想获取符合个性化需求的数据信息变得十分困难。推荐系统的目的是根据用户的个性化兴趣从大量的数据中找到用户所关心的数据,并提供推荐。
2、als(alternating least squares,交替最小二乘法)算法是基于模型的推荐算法,其基本思想是对庞大且稀疏的矩阵进行降维,分解成两个矩阵乘积的形式,再通过最小二乘法对原始矩阵的缺省值进行补全,从而达到预测的目的。
3、als算法仅考虑用户对物品的评分,从而导致推荐的准确率较低。
技术实现思路
1、本发明提供一种物品推荐方法及系统,用以解决现有技术中als算法推荐的准确率较低的缺陷,实现提高推荐的准确率。
2、本发明提供一种物品推荐方法,包括:
3、根据每个用户对每个物品的实际评分,构建所述用户对所述物品的第一评分矩阵,所述第一评分矩阵的行与所述用户一一对应,所述第一评分矩阵的列与所述物品一一对应;
4、根据每个用户对每个物品的评分时间与当前时间之间的时间间隔,以及具有每个预设物品特征的物品的评分频率,确定每个用户对每个物品的评分权重;
5、使用每个用户对每个物品的评分权重对所述第一评分矩阵进行优化,得到第二评分矩阵;
6、根据所述第二评分矩阵,从所述物品中选择向每个用户推荐的物品。
7、根据本发明提供的一种物品推荐方法,所述根据每个用户对每个物品的评分时间与当前时间之间的时间间隔,以及具有每个预设物品特征的物品的评分频率,确定每个用户对每个物品的评分权重,包括:
8、根据每个用户对每个物品的评分时间与当前时间之间的时间间隔,确定每个用户对每个物品的第一评分权重;
9、统计具有每个预设物品特征的所有物品的评分次数,并确定所有预设物品特征对应的评分总次数;
10、将具有每个预设物品特征的所有物品的评分次数与所述评分总次数之间的比值作为所述评分频率,根据每个物品包含的预设物品特征对应的评分频率确定每个用户对每个物品的第二评分权重;
11、根据所述第一评分权重和所述第二评分权重,确定每个用户对每个物品的评分权重。
12、根据本发明提供的一种物品推荐方法,所述根据每个物品包含的预设物品特征对应的评分频率确定每个用户对每个物品的第二评分权重,包括:
13、在所述物品包含多个预设物品特征的情况下,根据每个物品包含的各预设物品特征对应的评分频率确定每个用户对每个物品关于各预设物品特征的第二评分权重;
14、所述根据所述第一评分权重和所述第二评分权重,确定每个用户对每个物品的评分权重,包括:
15、根据所述第一评分权重和每个用户对每个物品关于各预设物品特征的第二评分权重,确定每个用户对每个物品关于各预设物品特征的第三评分权重;
16、根据每个用户对每个物品的所有第三评分权重的平均值,确定每个用户对每个物品的评分权重。
17、根据本发明提供的一种物品推荐方法,所述根据每个用户对每个物品的所有第三评分权重的平均值,确定每个用户对每个物品的评分权重,包括:
18、根据每个用户对每个物品的所有第三评分权重的平均值,使用遗忘函数确定每个用户对每个物品的评分权重。
19、根据本发明提供的一种物品推荐方法,所述根据所述第二评分矩阵,从所述物品中选择向每个用户推荐的物品,包括:
20、将所述第二评分矩阵分解成用户矩阵和物品矩阵,使得所述用户矩阵和所述物品矩阵满足预设条件;
21、将所述用户矩阵和所述物品矩阵相乘,得到每个用户对每个物品的预测评分;
22、从所述物品中选择每个用户的预测评分最高的预设个数的物品作为向每个用户推荐的物品;
23、其中,所述用户矩阵的行与所述用户一一对应,所述用户矩阵的列与所述预设物品特征一一对应;
24、所述用户矩阵中的每个元素表示每个用户对每个预设物品特征的评分;
25、所述物品矩阵的行与所述预设物品特征一一对应,所述物品矩阵的列与所述物品一一对应;
26、所述物品矩阵中的每个元素表示每个物品的每个预设物品特征的评分。
27、其中,所述预设条件为所述用户对所述物品的预测评分和所述用户对所述物品的实际评分之间的损失值最小
28、根据本发明提供的一种物品推荐方法,所述根据每个用户对每个物品的实际评分,构建所述用户对所述物品的第一评分矩阵,包括:
29、将每个用户对每个物品的实际评分写入kafka消息队列;
30、使用spark streaming消费所述kafka消息队列中每个用户对每个物品的实际评分,构建所述用户对所述物品的第一评分矩阵。
31、本发明还提供一种物品推荐系统,包括:
32、构建模块,用于根据每个用户对每个物品的实际评分,构建所述用户对所述物品的第一评分矩阵,所述第一评分矩阵的行与所述用户一一对应,所述第一评分矩阵的列与所述物品一一对应;
33、计算模块,用于根据每个用户对每个物品的评分时间与当前时间之间的时间间隔,以及具有每个预设物品特征的物品的评分频率,确定每个用户对每个物品的评分权重;
34、优化模块,用于使用每个用户对每个物品的评分权重对所述第一评分矩阵进行优化,得到第二评分矩阵;
35、推荐模块,用于根据所述第二评分矩阵,从所述物品中选择向每个用户推荐的物品。
36、本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述物品推荐方法。
37、本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述物品推荐方法。
38、本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述物品推荐方法。
39、本发明提供的物品推荐方法,通过在像用户推荐物品时,引入时间因素作为优化第一评分矩阵的权重,引入评分频率因素优化第一评分矩阵的权重,增加了物品推荐时的衡量维度,提高了用户偏好对物品推荐准确性的影响,进而提高了物品推荐的准确性。
1.一种物品推荐方法,其特征在于,包括:
2.根据权利要求1所述的物品推荐方法,其特征在于,所述根据每个用户对每个物品的评分时间与当前时间之间的时间间隔,以及具有每个预设物品特征的物品的评分频率,确定每个用户对每个物品的评分权重,包括:
3.根据权利要求2所述的物品推荐方法,其特征在于,所述根据每个物品包含的预设物品特征对应的评分频率确定每个用户对每个物品的第二评分权重,包括:
4.根据权利要求3所述的物品推荐方法,其特征在于,所述根据每个用户对每个物品的所有第三评分权重的平均值,确定每个用户对每个物品的评分权重,包括:
5.根据权利要求1-4任一所述的物品推荐方法,其特征在于,所述根据所述第二评分矩阵,从所述物品中选择向每个用户推荐的物品,包括:
6.根据权利要求1-4任一所述的物品推荐方法,其特征在于,所述根据每个用户对每个物品的实际评分,构建所述用户对所述物品的第一评分矩阵,包括:
7.一种物品推荐系统,其特征在于,包括:
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述物品推荐方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述物品推荐方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述物品推荐方法。