博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
协同过滤推荐算法简述
阅读量:6936 次
发布时间:2019-06-27

本文共 965 字,大约阅读时间需要 3 分钟。

hot3.png

协同过滤推荐算法是一种主流的、目前广泛应用在工业界的推荐算法。

一般,协同过滤推荐分为三种类型。

1.基于用户(user-based)的协同过滤

基于用户的协同过滤算法,主要考虑的是用户和用户之间的相似度,只要找出与目标用户相似度高的其他用户,根据相似用户喜欢的物品,预测目标用户对对应物品的评分,就可以找到评分最高的若干个物品推荐给用户。

2.基于项目(item-based)的协同过滤

基于项目的协同过滤算法,类似于基于用户的协同过滤,只是这往往是根据用户的行为判断物品的相似度(并不是根据物品的本身来判断物品相似度)。通过寻找物品和物品之间的相似度,向目标用户推荐与其喜欢的物品相似度高的其他物品。即对相似度高的类似物品进行预测,将评分最高的若干个相似物品推荐给用户。

典型使用了基于项目的协同过滤算法的就是亚马逊的推荐系统。

3.基于用户和基于物品的比较

基于用户的协同过滤需要在线找用户和用户之间的相似度关系,计算复杂度肯定会比基于基于项目的协同过滤高。但是可以帮助用户找到新类别的有惊喜的物品。而基于项目的协同过滤,由于考虑的物品的相似性一段时间不会改变,因此可以很容易的离线计算,准确度一般也可以接受,但是推荐的多样性来说,就很难带给用户惊喜了。一般对于小型的推荐系统来说,基于项目的协同过滤肯定是主流。但是如果是大型的推荐系统来说,则可以考虑基于用户的协同过滤。

4.基于模型(model based)的协同过滤

基于模型的协同过滤算法,不同于上述两种,它往往使用机器学习算法来预测用户对于某个物品的评分,一般来说,推荐系统会由 m 个用户和 n 个物品,用户对其中的部分物品进行评分,推荐系统中,物品数量往往及其巨大,单个用户不会对所有物品产生评分,所以用户-物品矩阵一般是一个稀疏矩阵。此时,只有部分用户和部分数据之间是有评分数据的,其它部分评分是空白,此时我们要用已有的部分稀疏数据来预测那些空白的物品和数据之间的评分关系,找到最高评分的物品推荐给用户。

一般对于这个问题,可以用机器学习的来建模解决,主流的方法可以分为:关联算法,聚类算法,分类算法,回归算法,矩阵分解,神经网络,图模型以及隐语义模型等。

转载于:https://my.oschina.net/xiaominmin/blog/1828007

你可能感兴趣的文章
盘点路由协议之RIP协议及IGRP协议
查看>>
多DHCP服务器的作用域 及备用DHCP服务器(一)
查看>>
CSS布局-顺口溜
查看>>
Lync Server 2013 标准版部署(二)DNS记录&权限
查看>>
mysql常用语法
查看>>
PHP Log时时查看小工具
查看>>
工作最忌想当然
查看>>
docker 命令
查看>>
07-Windows Server 2012 R2 会话远程桌面-标准部署-RD授权
查看>>
query分页共享,可传参
查看>>
组成原理重点题型_复习
查看>>
Less学习内容2
查看>>
各种协议优略势对比
查看>>
Activity与Fragment的生命周期详解
查看>>
target与currentTarget的区别?
查看>>
SQL 时间类型转字符串格式列表
查看>>
oracle 数据导入导出
查看>>
利用jQuery获取jsonp
查看>>
CSS,点击去除虚线边框代码
查看>>
c#导出包含图片的word文档
查看>>