协同过滤算法:在抖音狂给1000个小姐姐点赞的事被老婆发现了!
|
而且,用户相似度的计算,最有效的方式不一定是通过本节中介绍的计算方式,带社交功能的APP可以通过用户的好友关系,一般的APP可以通过获取用户的通讯录实现用户协同过滤。这些方式都来的更加简单和直接。 四、模型协同过滤-矩阵分解(SVD)对于很多没有计算机专业背景的人来说,直接理解SVD算法是很困难的。需要有高等数学,线性代数,还要理解机器学习模型中的目标函数,损失函数,梯度,正则化,最小二乘法等概念。很多文章介绍SVD都很技术,这里不准备采用技术大咖们的方式。我还是继续用图文的方式介绍,这也许是世界上最简单的理解SVD的方式。 首先介绍一下背景。 SVD算法的诞生,跟美国Netflix公司有关。这家公司中文名叫网飞,拍了大家熟悉的网剧《纸牌屋》。
时间来到2006年,Netflix发起一个推荐系统的悬赏竞赛。他们公开了自己网站的用户数据评分数据包,并放出100万美元悬赏优化推荐算法。凡是能在Netflix现有的推荐系统基础上,把均方根误差降低10%的人,都能参与瓜分这100万美元。消息一放出,引来了无数高手参加。这场比赛中,最佳算法就是SVD。 背景介绍完了,接下来直接介绍SVD是怎么计算的。 还是跟前面那样,简单化问题:假设一个平台只有4个用户和4本图书。 (1)数据 用户对物品评分1-5分,且有以下评分记录。
(2)学习算法 根据线性代数我们知道,一个矩阵可以分解为多个矩阵的乘积。SVD英文全称叫做Singular Value Decomposition,这个算法是个矩阵分解的通用名称,在不同领域有不同的形式。在推荐系统领域,可以简单的认为,SVD就是将一个矩阵,在一定的精度损失下,将一个矩阵分解成两个矩阵。 运用这个算法,我们可以将上图的矩阵做以下的近似分解:
(编辑:网站开发网_盐城站长网 ) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |




