推荐系统

推荐系统 Overview

6、什么是推荐系统

7、Exploit&Explore问题

8、推荐系统的评价指标有哪些

9、如果让你推导推荐系统的架构,你会如何设计

10、为什么有些方法在工作中会不work

推荐系统

        推荐系统是一种 信息过滤 系统,根据用户的历史行为、社交关系、兴趣点

        算法可以判断用户当前感兴趣的物品或内容。你也可以将它理解为一家只为你而开的商店。店铺里摆放的都是你需要的,或者适合你的商品。

        亚马逊CEO贝索斯说:如果我们有100万用户,我们将给他们100万个亚马逊网站


        Content-based Filtering

                最早人们使用的是基于内容的推荐方法,根据物品的属性为他们打上标签

                再通过这些标签计算他们之间的相似度

        Collaborative Filtering

                协同过滤就是通过数据找到与你相似的用户,通过他们的行为和他们喜欢的内容。为你推荐你可能感兴趣的物品或内容

                日常生活中,我们也会找到兴趣相同的朋友来帮我们推荐电影或者音乐

在推荐系统中,Using data重在“相似度”,Solve problems在于“推荐”

Thinking:data可以是物品本身的,也可以是基于用户行为的

物品本身:Content-based 基于物品本身的内容,而不是用户购买/浏览物品的行为

用户行为:

显性反馈数据:用户明确表示对物品的喜欢行为:评分,喜欢,收藏,购买

隐性反馈数据:不能明确反映用户喜好的行为:浏览,停留时间,点击

User-based,两个人共同喜欢的东西越多,那么两个人就越相似

Item-based,两个物品共同喜欢的人越多,这两个物品就越相似

如何进行“推荐”

UserCF,和你兴趣相投的用户,推荐他们喜欢的商品

ItemCF,给用户推荐那些和他们之前喜欢的物品相似的物品

(ItemCF不利用物品的内容属性计算物品之间的相似度,主要通过分析用户的行为记录计算物品之间的相似度)

Thinking: 如果没有大量的data怎么办?

=>冷启动问题:

用户冷启动:新用户来的时候,如何推荐

物品冷启动:新的物品,如何推荐

系统冷启动:新的网站上线,如何推荐


Exploit&Explore问题

推荐系统_第1张图片

Thinking:在线广告:如何进行广告投放,收益最大化?

对于固定流量来说,Exploit的这部分流量显然会产生收益,而Explore不一定能立刻就有收益。所以,如何分配E&E流量才能最大化收益呢

Thinking 冷启动问题:对于新用户时,如何通过若干次实验,猜出用户的大致兴趣?

Bandit算法解决冷启动:

如果用户对推荐的某个Topic感兴趣,就代表获得了收益。否则就表示遗憾

“选择-观察-更新-选择”的循环,将收益最大化

通过几次试验,刻画出新用户心中对每个Topic的感兴趣概率

多臂老虎机问题MAB(Multi-armed bandit problem)

你可能感兴趣的:(推荐系统)