Exploit:利用 Explore:探索
    推荐系统中,如果片面优化用户的喜好,推荐系统可能会造成信息茧房问题。也就是推荐的东西都是用户喜欢的东西,千篇一律。这时候不仅仅需要Exploit,还需要Explore新内容。另外呢,EE还可以通过Explore信息不足的物品(如很少曝光),提高对其信息的掌握程度(如ctr等)。随着时间的推移,推荐系统对item的信息掌握越来越多,也就可以更好的做出决策。
    但是在工业界,EE算法其实是一个很矛盾的东西。上吧,确实可以提高新颖度,但是谁知道是正向影响还是负向影响。若不上EE,之前提到的种种好处也就无从谈起。但是,万一这些新东西很严重的损害了用户体验,造成用户流失,公司得哭死。所以,工业界对EE都有着很谨慎的态度。
    EE算法这种思路是很好的,就是在实践中需要仔细斟酌使用方法,现在来看看工业界常用的EE算法:
    首先是EG(Epsilon-Greedy)算法,这种算法思路很简单。以推荐场景为例,设定一个参数P,其中p%的人按照ctr大小顺序进行商品推荐,剩下的(1-p)%用户随机推荐商品。p%用户的策略为Exploit,(1-p)%用户的策略为Explore。这样造成的后果是这(1-p)%用户的体验可能会遭到很严重的损害,以至于流失。而另外p%的用户体验反而因为这(1-p)%的用户而变好了,因为推荐系统牺牲了他们的用户体验来换取商品的信息(ctr等),让系统对商品的推荐更加准确,从而提升了p%用户按照ctr推荐的用户体验。EG算法的随机性太强了,会对用户体验造成很不好的影响,有没有什么办法可以减小这种影响呢?答案肯定是有的。比如筛选出商品的优选池,每次Explore的商品都在优选池中选。有的小伙伴可能会说既然规定优选池了,里面的商品都是经过人工筛选过了的,那么Explore还有意义吗?好,那我们在Explore时,一部分从优选池中选,另外一部分完全随机。如此,(1-p)%的用户即使有部分商品是随机呈现的,但因为有优选池商品的加持,体验损害有限。这些EG中减小用户体验损失的措施可以根据具体的业务场景再进行尝试。
    第二个为UCB(upper confidence bound)算法。UCB算法是引入了置信度这个概念。这个置信度可以宽泛的去理解,大致逻辑是:该商品被选中的次数越多,其置信度就应该越高,越接近真实值。最终UCB是根据均值+置信度的和进行排序的。UCB算法舍弃了随机推荐的概念,其实就是一个确定性(deterministic)算法了,根据置信度产生的随机是伪随机。极端来说,若每个商品的均值就是真实值了,那么每个人看到的都是一样的。这可不就是确定性算法了嘛。
    第三个为汤普森采样(Thompson Sampling )。汤普森采样先给商品的信息(ctr)定义了先验分布,然后利用每次的观察结果去计算后验分布,从每个商品的后验分布中采样生成随机数,取这些随机数中最大的进行推荐展示,依次循环。由于每一轮汤普森采样中,都有根据分布采样随机数的过程,所以汤普森采样是个随机的过程。为了每一轮迭代,方便先验概率与后验概率转化,可以使用共轭先验。即先验概率根据观察结果更新后验概率时,分布形式不变,只有参数发生变化。对于伯努利分布来说,共轭先验是Beta分布。在后续迭代中,根据实验结果更新Beta分布的a、b参数即可。这也就是为什么在ctr预估时贝叶斯平滑采用Beta先验分布的原因。

聊一聊推荐系统中ExploitExplore算法相关推荐

  1. 推荐系统中常用算法 以及优点缺点对比

    推荐系统中常用算法 以及优点缺点对比 2014/09/20 [Martin导读]随着互联网特别是社会化网络的快速发展,我们正处于信息过载的时代.用户面对过量的信息很难找到自己真正感兴趣的内容,而内容提 ...

  2. 推荐系统中的常用算法——序列深度匹配SDM

    1. 概述 推荐系统中的算法通过用户的历史行为数据挖掘用户的偏好,实现对用户偏好的建模,从而达到为用户推荐用户感兴趣的item.用户的兴趣偏好通常是多变的,而且是多样的.然而传统的基于item的协同过 ...

  3. 推荐系统中不得不学的对比学习(Contrastive Learning)方法

    作者 | 对白 出品 | 公众号:对白的算法屋 大家好,我是对白. 今天我们来聊一聊推荐系统中不得不学的Contrastive Learning方法,近年来Contrastive Learning在C ...

  4. 聊聊推荐系统中的偏差

    文 | 成指导 源 | 知乎 背景 推荐系统中大量使用用户行为数据,作为系统学习的标签或者说信号.但用户行为数据天生存在各式各样的偏差(bias),如果直接作为信号的话,学习出的模型参数不能准确表征用 ...

  5. 从0到1详解推荐系统中的嵌入方法,原理、算法到应用都讲明白了

    (图片由AI科技大本营付费下载自视觉中国) 作者丨gongyouliu 编辑丨lily 来源 | 大数据与人工智能(ID:) 前言 作者曾在这篇文章中提到,矩阵分解算法是一类嵌入方法,通过将用户行为矩 ...

  6. SVD在推荐系统中的应用详解以及算法推导

    转载请声明出处http://blog.csdn.net/zhongkejingwang/article/details/43083603 前面文章SVD原理及推导已经把SVD的过程讲的很清楚了,本文介 ...

  7. 自然语言处理技术(NLP)在推荐系统中的应用 原2017.06.29人工智能头条 作者: 张相於,58集团算法架构师,转转搜索推荐部负责人,负责搜索、推荐以及算法相关工作。多年来主要从事推荐系统以及机

    自然语言处理技术(NLP)在推荐系统中的应用 原2017.06.29人工智能头条 作者: 张相於,58集团算法架构师,转转搜索推荐部负责人,负责搜索.推荐以及算法相关工作.多年来主要从事推荐系统以及机 ...

  8. 【干货】推荐系统中的机器学习算法与评估实战

    [导读]推荐系统是机器学习技术在企业中最成功和最广泛的应用之一.本文作者结合MLMU演讲[1]的Slides,对推荐系统的算法.评估和冷启动解决方案做了详细的介绍. 作者 | Pavel Kordík ...

  9. 汤普森算法_Eamp;E算法在汽车之家推荐系统中的应用

    总篇99篇 2020年 第23篇 1.简介 推荐系统(Recommender System)是帮助用户发现内容,克服信息过载的重要工具,它主要通过分析用户的行为,对用户进行兴趣建模,从而预测用户的兴趣 ...

最新文章

  1. php rabbmq教程_RabbitMQ+PHP 教程一(Hello World)
  2. nginx日志通过rsyslog传入到日志服务器指定目录
  3. 06--swift之闭包
  4. jzoj3463-军训【双重嵌套二分,随机数据水法】
  5. 最全android Demo
  6. nginx(五)rewrite
  7. 一文读懂区块链以及一个区块链的实现
  8. linux写文件操作同步,linux 可执行文件与写操作的同步问题(文件读写操作产生的锁机制)...
  9. 2017级C语言大作业 - 元气骑士
  10. java流作为参数,java-8 – 将Java 8流映射函数作为参数传递
  11. 使用Xftp6上传文件显示状态错误
  12. 西部数据移动硬盘设置密码教程
  13. java计算机毕业设计个人交友网站源码+数据库+系统+lw文档+mybatis+运行部署
  14. PPT如何另存为高清图片
  15. Excalidraw:开源趣味画图工具(在线和本地均可)
  16. Python-到底啥是面向对象&面向过程?
  17. 灰色关联以及灰色预测GM(1,n),GM(1,1)模型(Python实现)
  18. [SDOI2009]学校食堂Dining(洛谷2157)
  19. Photoshop CC 2017 One-on-One: Fundamentals Photoshop CC 2017 系列进阶教程之基础训练 Lynda课程中文字幕
  20. 数据库SQLyog之多表查询

热门文章

  1. 电脑WIFI突然消失解决方法
  2. 向氏-姓氏家谱知识图谱构建
  3. 【洛谷】P1598 垂直柱状图
  4. Sicily 1001. Alphacode
  5. 怎样删除*.sys文件
  6. Vue CLI 预设Presets
  7. Excel中建立数据透视表,想用计算字段功能,但是该选项灰色无法点击,怎么办?
  8. 微信小程序——推荐简洁和高可用性的插件WxP UI
  9. 【经典】双子男与天蝎女的爱情故事
  10. 第7章第23节:双图排版:两张图片的错位叠加 [PowerPoint精美幻灯片实战教程]