1. 前言
在现今的推荐技术和算法中,基于协同过滤(Collaborative Filtering)的推荐方法是最被大家广泛认可和采用的。
推荐算法用于给用户做出合适的内容推荐,其场景用途非常广泛,最常见的包括音乐歌单推荐,购物商品推荐,新闻头条推荐等等。推荐算法大致被分为三种:
- 基于内容的推荐算法
- 协同过滤推荐算法
- 基于知识的推荐算法
实际应用中的推荐算法一定是基于多种考虑的,不会只考虑单独的模型或者某一类特征,而是多个模型融合以及多种特征组合。但是,推荐算法其本质可以总结如下:解决用户,环境,资讯的匹配。推荐算法使用的特征也来源于此。(图片引用自曹欢欢关于《今日头条算法原理》的分享内容)
2. 算法原理
协同过滤:核心思想就是借鉴和你相关人群的观点来进行推荐,很好理解。
协同过滤算法又分为:基于用户的协同过滤和基于物品的协同过滤
(1)、基于用户的协同过滤的基本思想相当简单,基于用户对物品的偏好找到相邻邻居用户,然后将邻居用户喜欢的推荐给当前用户。问题的关键在于如何找到偏好相似的邻居,解决办法之一就是以某个商品是否被用户喜欢作为特征来进行聚类分析,就能找到喜好类似的邻居。
(2)、基于物品的协同过滤,是从物品的角度来寻找相似的物品,然后基于用户的喜好物品,给其推荐相似的物品。
衡量相似度:相似度方法有多种,其中包括欧几里得距离,余弦相似度等等。