推荐算法之E&E
一、定义
E&E就是探索(explore)和利用(exploit)。
Exploit:基于已知最好策略,开发利用已知具有较高回报的item(贪婪、短期回报),对于推荐来讲就是用户已经发现的兴趣,继续加以利用推荐。
优点:充分利用高回报item。
缺点:容易陷入局部最优,可能错过潜在最高回报的item。
Explore:挖掘未知的潜在可能高回报的的item(非贪婪、长期回报),对于推荐来讲,就是探索用户新的未知的兴趣点,防止推荐越来越窄。
优点:可以发现更高回报的item。
缺点:充分利用已有高回报的item机会减少(如果高回报item之前已经找到,再探索肯定就会浪费高回报的机会)
目标:要找到Exploit & Explore的trade-off,以达到累计回报最大化。
如果Exploit占比太高,那么推荐就会越来越窄,最终收益反倒下降;如果Explore占比过高的话,可能大多是用户不太感兴趣的,浪费的机会比较多,综合收益下降更快。
二、MAB(Multi-armed bandit)多臂赌博机问题
一个赌徒,要去摇赌博机,走进赌场一看,一排赌博机,外表一模一样,但是每个赌博机吐钱的概率可不一样,他不知道每个。他不知道每个赌博机吐钱的概率分布是什么,那么想最大化收益该怎么办?这就是MAB问题,又叫多臂赌博机问题。有很多相似问题都属于MAB问题:
1)假设一个用户对不同类别的内容兴趣程度也不同,当推荐系统初次见到这个用户,如何快速地知道用户对每类内容的感兴趣程度呢?这也是推荐系统常常要面对的冷启动问题。
2)假设系统中有若干个广告库存物料,该给用户展示哪个广告,才能获得最高的点击收益呢?是不是每次都挑选收益最高的哪个呢?
这些问题都是关于选择的问题,只要是选择的问题,都可以简化成一个MAB问题。
Bandit算法就是用来解决此类问题的。
三、Bandit算法
Bandit不是一个算法,而是指一类算法。Bandit算法家族如何衡量选择的好坏呢? 它们使用累计遗憾(collect regret)来衡量策略的优劣。
wB(i)是第i次试验时被选中item的回报, w_opt是所有item中的最佳选择item的回报。累计遗憾为T次的选择的遗憾累计,每次选择的遗憾为最优选择回报与本次选择回报之差。
为了简单起见,我们假设每台机器的收益为伯努利收益,即收益要么是0,要么是1。对应到推荐系统中,赌博机即对应我们的物品(item),每次摇臂即认为是该物品的一次展示,我们可以用是否点击来表示收益,点击(win)的收益就是1,没有点击(lose)的收益就是0
比较常用的且效果比较好的Bandit算法主要有Thompson(汤普森)采样算法、UCB(Upper Confidence Bound)算法,后面会单独开讲。
推荐算法之E&E的更多相关文章
- Mahout推荐算法API详解
转载自:http://blog.fens.me/mahout-recommendation-api/ Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, ...
- 【笔记3】用pandas实现矩阵数据格式的推荐算法 (基于用户的协同)
原书作者使用字典dict实现推荐算法,并且惊叹于18行代码实现了向量的余弦夹角公式. 我用pandas实现相同的公式只要3行. 特别说明:本篇笔记是针对矩阵数据,下篇笔记是针对条目数据. ''' 基于 ...
- FP-tree推荐算法
推荐算法大致分为: 基于物品和用户本身 基于关联规则 基于模型的推荐 基于物品和用户本身 基于物品和用户本身的,这种推荐引擎将每个用户和每个物品都当作独立的实体,预测每个用户对于每个物品的喜好程度,这 ...
- apriori推荐算法
大数据时代开始流行推荐算法,所以作者写了一篇教程来介绍apriori推荐算法. 推荐算法大致分为: 基于物品和用户本身 基于关联规则 基于模型的推荐 基于物品和用户本身 基于物品和用户本身的,这种推荐 ...
- 推荐算法——距离算法
本文内容 用户评分表 曼哈顿(Manhattan)距离 欧式(Euclidean)距离 余弦相似度(cos simliarity) 推荐算法以及数据挖掘算法,计算"距离"是必须的~ ...
- 将 Book-Crossing Dataset 书籍推荐算法中 CVS 格式测试数据集导入到MySQL数据库
本文内容 最近看<写给程序员的数据挖掘指南>,研究推荐算法,书中的测试数据集是 Book-Crossing Dataset 提供的亚马逊用户对书籍评分的真实数据.推荐大家看本书,写得不错, ...
- 美团网基于机器学习方法的POI品类推荐算法
美团网基于机器学习方法的POI品类推荐算法 前言 在美团商家数据中心(MDC),有超过100w的已校准审核的POI数据(我们一般将商家标示为POI,POI基础信息包括:门店名称.品类.电话.地址.坐标 ...
- Mahout推荐算法基础
转载自(http://www.geek521.com/?p=1423) Mahout推荐算法分为以下几大类 GenericUserBasedRecommender 算法: 1.基于用户的相似度 2.相 ...
- 转】Mahout推荐算法API详解
原博文出自于: http://blog.fens.me/mahout-recommendation-api/ 感谢! Posted: Oct 21, 2013 Tags: itemCFknnMahou ...
- 天池大数据周冠军分享|附移动推荐算法赛答辩会Top5选手PPT
上周是淘宝穿衣搭配算法大赛开始评测后的第一周,周冠军是来自浙江大学的"FUC AUTH"队.他们在夺得本周冠军之后,还将自己的获胜经验分享给了大家,究竟有什么秘诀呢? 阿里巴巴天池 ...
随机推荐
- linux查看磁盘类型(是否SSD盘)
介绍两种方法: 第一种: cat /sys/block/sda/queue/rotational 注意: 命令中的sba是你的磁盘名称,可以通过df命令查看磁盘,然后修改成你要的 结果: 返回0:SS ...
- Java八大排序之基数排序
基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分 ...
- 测试cnblog
this prelkdfkdjfkljasdlkfjlkjlkjsdf this this code this this pre codeljkjkjkdjkdjkdjkjdkjdkdlajlkdjf ...
- Idea如何快速生成Junit测试类
测试是保证代码必不可少的环节,自己构建测试方法太慢,并且命名也不规范,idea中提供了,一键构建测试结构的功能... 2.步骤 1.在需要做测试的类的当前窗口,直接按快捷键:按ctrl+shift+t ...
- pip 安装包 使用国内镜像源
1.pipy国内镜像目前有: 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn ...
- NOIP 2008 火柴棒等式
洛谷 P1149 火柴棒等式 洛谷传送门 JDOJ 1540: [NOIP2008]火柴棒等式 T2 JDOJ传送门 Description 给你n根火柴棍,你可以拼出多少个形如"A+B=C ...
- Java多态中成员的调用的特殊情况
1.当子类和父类中有相同的成员属性的时候 public class Demo { public static void main(String[] args) { Father son=new Son ...
- django请求限制
django.views.decorators.http 包里的装饰器可以基于请求的方法来限制对视图的访问. 限制视图只能服务规定的http方法.用法: from django.views.decor ...
- ORA-25153错误及解决办法
出现下图错误 原因就是没有临时表空间,所以要建立临时表空间,下面的语句,记得把地址换成你自己想放的地方. alter tablespace temp add tempfile 'C:/temp.dbf ...
- js中的new操作符解析
new 操作符做了以下事情: 1.创建一个对象,将对象赋值给this function Person(name, age) { console.log(this) //Person {} } let ...