博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1分钟了解协同过滤,pm都懂了
阅读量:5253 次
发布时间:2019-06-14

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

版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/z50L2O08e2u4afToR9A/article/details/79565720

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

 

今天的1分钟系列,给大家介绍下推荐系统中的“协同过滤”,绝无不论什么公式,保证大伙弄懂。

 

什么是协同过滤(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交叉处代表这个用户喜爱这部电影

640?</p><p>wx_fmt=jpeg&wxfrom=5&wx_lazy=1

如上表:

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

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

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

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

 

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

640?</p><p>wx_fmt=jpeg

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

 

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

640?</p><p>wx_fmt=jpeg

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

 

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

640?wx_fmt=jpeg

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

画外音:“协同”就体如今这里。

 

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

 

协同过滤大致原理如上。希望大家有收获。

推荐文章:

《》

《》

《》

转载于:https://www.cnblogs.com/ldxsuanfa/p/9913385.html

你可能感兴趣的文章
在工程中要加入新的错误弹出方法
查看>>
PS 滤镜— — sparkle 效果
查看>>
网站产品设计
查看>>
代理ARP
查看>>
go 学习笔记(4) ---项目结构
查看>>
java中静态代码块的用法 static用法详解
查看>>
Java线程面试题
查看>>
Paper Reading: Relation Networks for Object Detection
查看>>
day22 01 初识面向对象----简单的人狗大战小游戏
查看>>
mybatis源代码分析:深入了解mybatis延迟加载机制
查看>>
Flask三剑客
查看>>
Hibernate-缓存
查看>>
【BZOJ4516】生成魔咒(后缀自动机)
查看>>
提高PHP性能的10条建议
查看>>
svn“Previous operation has not finished; run 'cleanup' if it was interrupted“报错的解决方法...
查看>>
熟用TableView
查看>>
Java大数——a^b + b^a
查看>>
poj 3164 最小树形图(朱刘算法)
查看>>
服务器内存泄露 , 重启后恢复问题解决方案
查看>>
android一些细节问题
查看>>