一种基于项目的协同过滤推荐方法及装置的制造方法_3

文档序号:9579273阅读:来源:国知局
baidu.com的候选推荐项目中所有项目作为项目www.baidu.com的实际推荐项目,此时即将项目www.kingsoft.com作为项目www.baidu.com的实际推荐项目。
[0120]在实际应用中,可以将项目www.baidu.com的实际推荐项目www.kingsoft.com向客户端反馈,客户端可以将项目WWW.kingsoft.com推荐给用户。
[0121]当用户点击收藏夹里的收藏链接www.baidu.com时,在www.baidu.com页面中的动态内容区域显示为用户推荐的www.kingsoft.com的网页链接。
[0122]可选的,当项目www.baidu.com的候选推荐项目的数量没有达到项目www.baidu.com实际推荐项目的需求数量时,还可以在本数据块中将阈值调低,将相似度高于调低后的阈值对应的项目确定为项目WWW.baidu.com的候选推荐项目,进而再对项目www.baidu.com的候选推荐项目的数量是否达到项目www.baidu.com实际推荐项目的需求数量进行判断,参见图3所示,
[0123]S109:将阈值调低,将相似度高于调低后的阈值对应的项目确定为项目i的候选推荐项目。
[0124]示例性的,在本实施例中,假设预设的相似度阈值为0.5。将项目www.kingsoft.com确定为项目www.baidu.com的候选推荐项目。如此时对三个项目进行推荐,但项目www.baidu.com的候选推荐项目中的数量不足三个,则将相似度阈值调低,假设调低至0.32,直到项目■.baidu.com的候选推荐项目的数量达到项目实际推荐项目的需求数量,将项目www.haol23.com、项目 www.1 jinshan.com 和项目 www.kingsoft.com 均石角定为项目 www.baidu.com的候选推荐项目。对项目www.baidu.com的候选推荐项目中的所有项目按照相似度数值从高到底进行排序,结果为顆I kingsoft.com、www.haol23.com、www.1 jinshan.com。将项目 www.kingsoft.com>www.haol23.com>www.1 jinshan.com作为项目 www.baidu.com实际推荐项目。
[0125]在实际应用中,可以将项目www.baidu.com的实际推荐项目www.kingsoft.com、www.haol23.com和www.1 jinshan.com向客户端反馈,客户端可以将项目www.kingsoft.com、www.haol23.com 和 www.1 jinshan.com 推荐给用户。
[0126]当用户点击收藏夹里的收藏链接www.baidu.com时,在www.baidu.com页面中的动态内容区域显不为用户推荐的冊w.kingsoft.com、www.haol23.com、www.1 jinshan.com的网页链接。
[0127]可选的,当项目www.baidu.com的候选推荐项目的数量没有达到项目www.baidu.com实际推荐项目的需求数量时,还可以判断是否还存在未和项目www.baidu.com计算相似度的其它数据块中的项目,当存在未和项目www.baidu.com计算相似度的其它数据块中的项目时,计算项目www.baidu.com和其他数据块中的各项目相似度,进而再进行项目WWW.baidu.com的候选推荐项目的数量是否达到项目www.baidu.com实际推荐项目的需求数量进行判断,参见图4和图5所示,
[0128]S110:判断是否还存在未和项目i计算相似度的其他数据块的项目;
[0129]S111:计算项目i和其他数据块中的各项目的相似度;
[0130]S112:将项目i的候选推荐项目中的所有项目作为项目i实际推荐项目,向客户端反馈项目i的实际推荐的项目,以使所述客户端将所述项目i的实际推荐的项目推荐给所述项目i的用户;
[0131]S113:将阈值调低,将相似度高于调低后的阈值对应的项目确定为项目i的候选推荐项目。
[0132]其中,S111计算项目i和其他数据块中的各项目的相似度的方式可以与图1所示实施例中计算项目WWW.baidu.com和项目www.baidu.com所处数据块中的其他项目的相似度的方式相同,S112将项目i的候选推荐项目中的所有项目作为项目i实际推荐项目,向客户端反馈项目i的实际推荐的项目,以使所述客户端将所述项目i的实际推荐的项目推荐给所述项目i的用户与图2所述实施例的步骤108相同,S113将阈值调低,将相似度高于调低后的阈值对应的项目确定为项目i的候选推荐项目与图3所述实施例的步骤109相同,这里不再赘述。
[0133]应用本实施例,在项目i所处的数据块中选择出的项目i的实际推荐项目可以直接应用于相应前端用户的请求,进行推荐,对于项目i和其他数据块中的项目相似度的计算由于耗时较长,可以在离线的情况下服务器后端运行,作为推荐覆盖面的完善,当项目i和其他数据块中的项目相似度也计算完成后,将项目i的候选推荐项目中的所有项目按照相似度数值从高到底排序,选取前几个项目作为项目i的实际推荐项目,此时推荐的项目能更好的满足用户的需求。
[0134]图6为本发明实施例提供的第一种基于项目的协同过滤推荐装置的结构示意图,与图1所示的流程相对应,包括:数据集获得模块201、数据集拆解模块202、第一相似度计算模块203和候选推荐项目确定模块204,
[0135]其中,数据集获得模块201,用于获得目标数据集;
[0136]可选的,目标数据集可以为不同用户收藏的网址信息;还可以为不同用户点击过的广告信息;还可以为不同用户搜索过的内容;还可以为不同用户购买过的商品。
[0137]数据集拆解模块202,用于将目标数据集拆解成若干适合内存容量的数据块;
[0138]第一相似度计算模块203,用于对每个数据块B中的每个项目i,在本地计算项目i和该数据块B中其它项目的相似度;
[0139]候选推荐项目确定模块204,用于将与所述项目i的相似度高于预设的阈值对应的项目确定为项目i的候选推荐项目。
[0140]应用本发明图6所示的实施例,只使用一台计算机进行基于项目的协同过滤推荐算法的计算,在计算时,将项目的整个数据集拆解成若干适合内存容量的数据块,对每个数据块B中的每个项目i,在本地计算该项目i和该数据块B中其它项目的相似度,将相似度高于预设的阈值对应的项目确定为该项目i的候选推荐项目。相对于现有技术使用一台计算机来进行基于项目的协同过滤推荐算法的计算,提高了基于项目的协同过滤推荐算法的性能;相对于现有技术使用计算机集群来进行基于项目的协同过滤推荐算法的计算,消减了额外的辅助功能对算法性能的影响,同时避免了成本的增加。
[0141]图7为本发明实施例提供的第二种基于项目的协同过滤推荐装置的结构示意图,包括:数据集获得模块201、数据集拆解模块202、第一相似度计算模块203、候选推荐项目确定模块204、第一判断模块205、排序模块206和实际推荐项目选取模块207,
[0142]其中,第一判断模块205,用于判断项目i的候选推荐项目的数量是否达到项目i实际推荐项目的需求数量N;
[0143]排序模块206,用于在第一判断模块判断结果为是的情况下,对项目i的候选推荐项目中的所有项目按照相似度数值从高到低排序;
[0144]实际推荐项目选取模块207,用于从排序队列中选取前N个项目作为项目i实际推荐项目,向客户端反馈项目i的实际推荐的项目,以使所述客户端将所述项目i的实际推荐的项目推荐给所述项目i的用户。
[0145]本发明实施例的实际推荐项目选取模块207,还用于在第一判断模块判断结果为否的情况下,将项目i的候选推荐项目中的所有项目作为项目i实际推荐项目,向客户端反馈项目i的实际推荐的项目,以使所述客户端将所述项目i的实际推荐的项目推荐给所述项目i的用户。
[0146]图8为本发明实施例提供的第三种基于项目的协同过滤推荐装置的结构示意图,包括:数据集获得模块201、数据集拆解模块202、第一相似度计算模块203、候选推荐项目确定模块204、第一判断模块205、排序模块206、实际推荐项目选取模块207和第一阈值调整模块208,
[0147]其中,第一阈值调整模块208,用于在第一判断模块判断结果为否的情况下,将预设的阈值调低,直到在项目i所处的数据块B中,项目i的候选推荐项目的数量达到项目i实际推荐项目的需求数量N。
[0148]图9为本发明实施例提供的第四种基于项目的协同过滤推荐装置的结构示意图,包括:数据集获得模块201、数据集拆解模块202、第一相似度计算模块203、候选推荐项目确定模块204、第一判断模块205、排序模块206、实际推荐项目选取模块207、第二判断模块209和第二相似度计算模块210,
[0149]其中,第二判断模块209,用于在第一判断模块判断结果为否的情况下,判断是否还存在未和项目i计算相似度的其他数据块的项目;
[0150]第二相似度计算模块210,用于在第二判断模块判断结果为是的情况下,计算项目i和其它数据块中的各项目的相似度;
[0151]实际推荐项目选取模块207,还用于在第二判断模块判断结果为否的情况下,将项目i的候选推荐项目中的所有项目作为项目i实际推荐项目,向客户端反馈项目i的实际推荐的项目,以使所述客户端将所述项目i的实际推荐的项目推荐给所述项目i的用户。
[0152]图10为本发明实施例提供的第四种基于项目的协同过滤推荐装置的结构示意图,包括:数据集获得模块201、数据集拆解模块202、第一相似度计算模块203、候选推荐项目确定模块204、第一判断模块205、排序模块206、实际推荐项目选取模块207、第二判断模块209、第二
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1