推荐系统三十六式
刑无刀
“贝壳找房”资深算法专家,8年推荐系统工程师
立即订阅
11436 人已学习
课程目录
已完结 39 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 用知识去对抗技术不平等
免费
第1章 概念篇 (3讲)
【概念篇】你真的需要个性化推荐系统吗?
【概念篇】个性化推荐系统那些绕不开的经典问题
【概念篇】这些你必须应该具备的思维模式
第2章 原理篇 (20讲)
【内容推荐】画鬼容易画人难:用户画像的“能”和“不能”
【内容推荐】从文本到用户画像有多远
【内容推荐】超越标签的内容推荐系统
【近邻推荐】人以群分,你是什么人就看到什么世界
【近邻推荐】解密“看了又看”和“买了又买”
【近邻推荐】协同过滤中的相似度计算方法有哪些
【矩阵分解】那些在Netflix Prize中大放异彩的推荐算法
【矩阵分解】Facebook是怎么为十亿人互相推荐好友的
【矩阵分解】如果关注排序效果,那么这个模型可以帮到你
【模型融合】经典模型融合办法:线性模型和树模型的组合拳
【模型融合】一网打尽协同过滤、矩阵分解和线性模型
【模型融合】深度和宽度兼具的融合模型 Wide and Deep
【MAB问题】简单却有效的Bandit算法
【MAB问题】结合上下文信息的Bandit算法
【MAB问题】如何将Bandit算法与协同过滤结合使用
【深度学习】深度学习在推荐系统中的应用有哪些?
【深度学习】用RNN构建个性化音乐播单
【其他应用算法】构建一个科学的排行榜体系
【其他应用算法】实用的加权采样算法
【其他应用算法】推荐候选池的去重策略
第3章 工程篇 (10讲)
【常见架构】典型的信息流架构是什么样的
【常见架构】Netflix个性化推荐架构
【常见架构】总览推荐架构和搜索、广告的关系
【关键模块】巧妇难为无米之炊:数据采集关键要素
【关键模块】让你的推荐系统反应更快:实时推荐
【关键模块】让数据驱动落地,你需要一个实验平台
【关键模块】 推荐系统服务化、存储选型及API设计
【效果保证】推荐系统的测试方法及常用指标介绍
【效果保证】道高一尺魔高一丈:推荐系统的攻防
【开源工具】和推荐系统有关的开源工具及框架介绍
第4章 产品篇 (3讲)
【产品篇】推荐系统在互联网产品商业链条中的地位
【产品篇】说说信息流的前世今生
【团队篇】组建推荐团队及工程师的学习路径
尾声与参考阅读 (2讲)
推荐系统的参考阅读
【尾声】遇“荐”之后,江湖再见
推荐系统三十六式
登录|注册

【其他应用算法】实用的加权采样算法

刑无刀 2018-04-23
今天来讲一个非常轻松的话题,这个话题看似和推荐系统没什么关系,但肯定有用,只是在别的推荐系统相关话题里都没人会提。

一些场景

还记得前面讲到的用户画像吗?想象一个场景:你经过辛辛苦苦抓数据,清洗数据,收集用户行为,目的就是给用户计算兴趣标签。
这时候你可能会遇到一个两难的问题:如果给用户计算出兴趣标签的权重了,那应该保留多少标签呢?
保留太多的话,每次召回候选集时,计算复杂度可不低,只保留少部分吧,那真是手心手背都是肉,生怕丢弃的标签才是用户的真爱。
怎么办?这时候,你需要的一个简单的加权采样算法,每次召回时并不使用全部用户标签,而是按照权重采样一部分标签来使用,这样做的好处当然很明显:
大大减少召回时的计算复杂度;
可以保留更多的用户标签;
每次召回计算时还能有所变化;
虽然有变化,但是依然受标签的权重相对大小约束。
加权采样的应用不只这一个地方,比如在热门排行榜展示时,也可以用加权采样,而不仅仅按照排行榜分数顺序展示,采用加权采样的展示方法,会让排行榜每次刷新都略有变化,人民群众也会更加喜闻乐见。
下面介绍几种常用的加权采样算法及其原理,供你日常随手拿来使用。

加权采样

加权采样有两种情况,一种是能够已知全部样本的个数。这需要遍历整个样本,比如说用户标签采样输出,那么每次采样时仍然需要遍历所有的标签,来依次决定每一个标签输出的概率。
另一种是不知道总量样本是多大,或者总量很大,以至于你不愿意全部遍历之后再输出采样结果,这样的数据就是数据流,对应的就是流采样。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《推荐系统三十六式》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(9)

  • slvher
    加权采样算法 Weighted Random Sampling Without Replacement,可简写为WRS

    本文给出的算法出自 Pavlos S. Efraimidis 论文:
    https://utopia.duth.gr/~pefraimi/research/data/2007EncOfAlg.pdf

    也可通过蓄水池采样算法的wikipedia条目了解:
    https://en.wikipedia.org/wiki/Reservoir_sampling
    2018-10-02
    3
  • felixdae
    第一个例子中k其实是1对吧,如果k是2或者3模拟出来的结果还会保持与权重一样的比例关系吗?
    2018-07-11
    1
  • 林彦
    负权重的例子我其实还是不太理解的。原始的WRS算法就是要求权重是非负数。我能想到的是按权重的绝对值算采样分数,然后负的得出一个最差排名,正的得出一个最好排名。
    2018-04-25
    1
  • 行行行
    s=r^1/w的原理是什么呢老师,或者有什么参考资料,或者这个算法叫什么名字。谢谢老师
    2018-04-23
    1
  • 光彩照人
    指数分布这个,是不是应该取出随机数最小的k个进行采样呢,因为越小,说明时间间隔越短,说明权重越大呢。
    2019-07-23
  • miaomiaomiao
    请问,在推荐算法召回阶段,蓄水池采样权重是什么?是本身推荐物品与该用户的匹配概率吗?
    模型融合阶段的权重又是什么?这个时候各个召回模块的推荐的物品的评价标准并不一致
    2019-06-12
  • shangqiu86
    指数分布采样的时候,随机数选取应该在(1 - 5)之间,当大于5之后,lambd = 0.1得到的值将远远大于lambd = 0.4和0.5 ,这样若随机数选取在(1-10)之间得到的数据并不满足权重的关系,我的实验结果是这样的,老师您说对吗?
    2019-05-06
  • felixdae
    把权重除以权重之和得到标签上的离散分布,不是就可以直接用来采样了么,采样频率也跟权重成正比
    2018-06-04
  • cjalchange
    无刀老师,请问指数分布采样公式中的x是取的啥值呀
    2018-05-24
收起评论
9
返回
顶部