本部分思维导图:
推荐系统从搜索引擎借鉴很多技术和思想,比如内容推荐有不少技术就来自搜索引擎, 基于用户和基于物品的协同过滤将推荐系统技术从内容延伸到协同关系,超越内容本身,后来Netflix举行一个比赛,以矩阵分解为代表的评分预测算法出现,推荐系统是AI的分支之一,AI落地都需要具备几个元素:数据、算法、场景、计算力
1、概念:
推荐系统:
1)、能做什么:可以把那些最终会在用户和物品之间产生的链接提前找出来
2)、需要什么:需要根据已经存在的连接,从已有的连接去预测未来的连接
3)、它怎么做:预测用户评分和偏好---》定义抽象实现方式分类是:机器推荐和人工推荐,也就是常说的个性化推荐和编辑推荐
总结:推荐系统就是用已有的连接去预测未来用户和物品之间会出现的连接
注:
世界的发展趋势是万物倾向于建立越来越多的联系,人是一起意义所在,根据已有的连接预测和人有关的连接
例如:一个电商平台,用户刚买过什么,常买什么,这些都是用户和商品之间的连接,用这些连接去预测还会买什么,还会浏览什么
2、怎么评判公司是否需要构建推荐系统?
1)、产品的目的:如果产品是建立越多连接越好,那么它最终需要一个推荐系统
2)、产品现有的连接:如果产品中物品很少,可以用人工就可以应付过来,则不适合搭建推荐系统
3、推荐系统的问题模式
推荐系统是为用户和物品建立连接,建立的方式是提前找出那些隐藏的链接呈现给用户,这也属于一个预测问题:
针对推荐系统的预测问题模式,主要分为两大类:1)、评分预测(显式反馈) 2)、行为预测(隐式反馈)
1) 评分预测:
例如用户消费完一个物品会给出一个评分,或者有的网站是用星星的棵数表示。提前预测一个用户对每一个物品会打多少分,找出那些可能会打高分,但是还没消费的物品,然后推荐给用户。
评分预测存在的问题:
1)数据不易收集 2)数据质量不能保证 3)评分的分布不稳定
2)行为预测
只要用户浏览相关信息,就会有各种行为数据产生,从登录、浏览到购买收藏,都是用户行为,这些行为都是在用户不知不觉下的情况下产生,数据量比较多。
推荐系统目前预测行为方式主要有两种:直接预测行为本身发生的概率、预测物品的相对排序。直接预测行为本身称为:CTR预估(Click Through Rate).把每一个推荐给用户的物品按照是否点击二分类,构建分类模型,预估其中一种分类的概率,就是ctr预估。
行为预测,就简单的来说是利用隐式反馈数据预测隐式反馈发生的概率。
行为预测有几个特点:
1) 数据比显示反馈更加稠密 2)隐式反馈更代表用户的真实想法 3)隐式反馈常常和模型的目标函数关联更密切
4、推荐系统常见问题
1)冷启动问题
新用户或者不活跃用户,以及新物品或展示次数比较少的物品,这些用户和物品,由于缺乏相关数据,这就是冷启动问题的关注对象
2)探索和利用问题(exploration & exploitation )
如果知道用户喜好,一般会有三种方式应对:1、全部推荐用户目前肯定感兴趣的物品 2、无视用户兴趣,按照其它逻辑推荐 3、大部分推荐感兴趣的,小部分去试探新的兴趣。显然第3种更科学一些
3) 安全问题:
推荐系统被攻击的影响主要有几个方面:1、给出不准确的推荐结果 2、收集很多脏数据 3、损失产品的利益
总结:从模型的角度,推荐系统的模型可以分成预测评分和预测行为,另一个角度可以看看推荐系统中存在一些潜在的问题,包括冷启动、搜索和利用问题、安全问题。
5、推荐系统关键元素的重要性
开发推荐系统产品,几个元素需要注意:
1)UI和UE:人机交互设计和用户体验设计
2)数据
3)领域知识
4)算法
6、建立思维模式
1)目标思维:
对于结构有预期,可以提前推演出来。
可以把推荐系统看做一个函数,输入有很多:UI、UE、数据、领域知识、算法等等;输出是我们关注的指标:留存率、新闻的阅读时间、电商的GMV、视频的VV等等
2)不确定性思维:
不需要用因果逻辑地提前推理出来,而是用概率的眼光去看结果。
推荐系统的产品负责人一定要有不确定性思维,原因如下:
1)绝大多数推荐算法都是概率算法,无法保证得到确切的结果,只是概率上得到好的效果
2)推荐系统追求的是目标的增长,而不是一城一池的得失
3)如果花时间为一个事件增加补丁,那么付出的成本和得到的收益将大打折扣
4)出现意外的推荐也是有益的,可以探索用户的新兴趣