互联网的常见推荐算法

没有复杂的公式,没有晦涩的技术词汇,从最简易的案例,了解互联网最常见的推荐算法。

一、《从电影推荐开始,聊协同过滤

  • 什么是协同过滤

  • 协同过滤的3步骤

  • 一张excel表格,秒懂协同过滤


工程架构方向的程序员,看到推荐/搜索/广告等和算法相关的技术,心中或多或少有一丝胆怯。但认真研究之后,发现其实没有这么难。  

什么是协同过滤(Collaborative Filtering)?

:通过找到兴趣相投,或者有共同经验的群体,来向用户推荐感兴趣的信息。

 

举例,如何协同过滤,来对用户A进行电影推荐?

:简要步骤如下

  • 找到用户A(user_id_1)的兴趣爱好

  • 找到与用户A(user_id_1)具有相同电影兴趣爱好的用户群体集合Set<user_id>

  • 找到该群体喜欢的电影集合Set<movie_id>

  • 将这些电影Set<Movie_id>推荐给用户A(user_id_1)

 

具体实施步骤如何?

:简要步骤如下

1)画一个大表格,横坐标是所有的movie_id纵坐标所有的user_id交叉处代表这个用户喜爱这部电影


如上表:

  • 横坐标,假设有10w部电影,所以横坐标有10wmovie_id,数据来源自数据库

  • 纵坐标,假设有100w个用户,所以纵坐标有100wuser_id,数据也来自数据库

  • 交叉处,“1”代表用户喜爱这部电影,数据来自日志

画外音:什么是“喜欢”,需要人为定义,例如浏览过,查找过,点赞过,反正日志里有这些数据

2)找到用户A(user_id_1)的兴趣爱好


 如上表,可以看到,用户A喜欢电影{m1, m2, m3}

3)找到与用户A(user_id_1)具有相同电影兴趣爱好的用户群体集合Set<user_id>


如上表,可以看到,喜欢{m1, m2, m3}的用户,除了u1,还有{u2, u3}

4)找到该群体喜欢的电影集合Set<movie_id>


如上表,具备相同喜好的用户群里{u2, u3},还喜好的电影集合是{m4, m5}

画外音:“协同”就体现在这里。

5未来用户A(use_id_1)来访问网站时,要推荐电影{m4, m5}ta


二、《从职位推荐开始,聊内容推荐

  • 什么是基于内容的推荐

  • 基于内容的推荐的3步骤

  • 明明职位要求6000+,为啥会出3000+的推荐结果

什么是基于内容的推荐(Content-based Recommendation)?

:通过用户历史感兴趣的信息,抽象信息内容共性,根据内容共性推荐其他信息。

比如,如何通过基于内容的推荐,来对求职者A进行职位推荐?

:简要步骤如下

  • 找到用户A历史感兴趣的职位集合

  • 找到职位集合的具化内容

  • 抽象具化内容的共性内容

  • 由这些共性内容查找其他职位,并实施推荐

具体实施步骤如何?

:简要步骤如下

1得到求职者A访问过三个职位,假设分别是{zw1, zw2, zw3},这些数据可以从历史日志得到。

2)由职位集合得到职位具化内容

zw1 -> { 程序员北京月薪8000, 3年经验本科}

zw2 -> { 程序员北京月薪6000, NULL, 研究生}

zw3 -> { 程序员北京月薪6000, 5年经验, NULL}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值