推荐系统三十六式
刑无刀
“贝壳找房”资深算法专家,8年推荐系统工程师
立即订阅
11385 人已学习
课程目录
已完结 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-05-25
如果你是老板,或者是公司里的推荐系统包工头,那么你一定会关心:要凑齐多少人才能开始搬砖?
一个推荐系统复杂度没有上限,但是有最低标准,所以下面在估算推荐系统团队规模时,按照下限来估计,照这个方式建立的团队就叫做“有下限的团队”。

团队组建

我们先定义团队的角色,这里既然是组建“有下限团队”,当然按照能省则省的原则。
算法工程师,承担的是数据科学家和机器学习工程师的双重职责,主要职责是清洗数据,训练离线推荐模型,开发算法接口,评估指标。
软件开发工程师,承担算法之外的开发任务,例如数据库的搭建维护,API 接口的开发,日志的收集,在线系统的高可用等,当然“有下限的团队”可以适当简陋些,不用考虑高性能。
其他非技术角色,如果是“有下限团队”的话,这一项也可以省略,如果涉及了跨部门合作,或者你不幸被老板提出各种“推得不准”的伪 Bug,那么你就需要一个这样的角色去充当工程师港湾,来阻挡外界的风雨。
接下来,估计一下每个角色的数量。这里主要是估计工程师的数量。
关于算法工程师,最低配需要 2 位,一位三年左右经验的算法工程师负责数据分析,数据清洗,推荐模型训练,评估和上线,外带一位三年以下经验的初级工程师,从中辅助分担琐碎工作。
为什么说有经验的算法工程师一位就够了,假如你使用矩阵分解作为推荐系统第一版核心算法,那么推荐使用 Quora 开源的 QMF 工具。它能在一台 32 核、244G、640G 固态硬盘的服务器上用 20 分钟完成 10 亿非零元素,千万用户和物品的矩阵分解。工具简单易用,一个有经验的工程师足够让其运转起来。
那么核心问题就是,一台机器是不是撑得起你老板的野心?我认为,撑得起,具体的估算如下。
根据我前文中对注意力的定义:内容消耗的加速度乘以内容的消耗难度。当注意力为正数时,是上马推荐系统的好时机。
因为这说明平台方已经有了注意力的原始积累,只需要加上推荐系统将它保存下来并加以扩大即可。那么组建的这个“有下限团队”最低要求就是能留住当前的注意力。
注意力为正时,每天的用户消耗内容数量应该是指数级别,比如 (a >= 2)。其中 t 是时间,a 大于 2 时才会有正的注意力。因为它的二阶导数为:。当然,这个数学推导不重要,只是举个例子。
每天的内容消耗量,其实就是用户产生的行为数据条数,至少是正比关系,这里从简考虑,认为二者等同。假如 a=2,t 的单位是天。那么在 t 天后,累计产生的日志数量是:
现在看看,如果你公司使用的服务器和 Quora 评测 QMF 时所用服务器一样的配置,用单机运行 QMF,极限是撑多久?我简单列个方程。
方程右边就是 QMF 评测时处理的 60 亿非零元素。解这个一元三次方程,得到唯一的实数解是 1441.75 天,也就是 3.9 年。
所以告诉你的老板,你一个人可以撑四年,只管定期加工资就可以了,不用加人。
那么为什么明明一位算法工程师就可以,还要外带一位,这主要是考虑,团队人才应该有梯度和备份。
关于软件开发工程师,至少需要四位,是的,你猜到了,我要证明的是需要两位,还有两位是为了人才梯度和冗余备份。分工是这样的。
推荐服务输出,一位三年及以上经验的后端开发工程师,外带一位三年以下的初级工程师。负责调用推荐 RPC 服务,开发必要的过滤逻辑,填充详细字段等;
反馈数据收集和管理,一位三年以上经验的运维工程师,外带一位三年以下的初级工程师,负责回收用户反馈数据,统一存储日志数据。
以上就是一个最低配推荐系统团队的配置。当然,如果能复用现有团队的部门工程师,则灵活处理。上面的估算也只是一个示例。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《推荐系统三十六式》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(9)

  • shangqiu86
    老师,期待你的书,出来了吗?想买来再学习深入一遍,感觉对推荐系统有了更深的认识

    作者回复: 已经在排班中了。

    2019-05-09
    2
  • loirsun
    看到您推荐小团队可以上手qmf,于是尝试qmf,有些困惑,这个包只提供了train model的binary文件,模型预测相关的部分没有给出,是不是需要二次开发?6,7年前从算法方向转工程了,最新的东西都不了解,您方便的话再讲两句qmf可好,或简单回复一下。非常感谢

    作者回复: 得到隐因子向量之后,可以用faiss等稠密向量相似计算库来搜索近邻,类似的库还有annoy,kgraph,nmslib。

    2019-02-21
    1
  • orc
    怎么理解工程和算法的关系,做推荐工程的同学是否需要了解算法
    2019-08-09
  • soar
    rerank与rank没有讲解
    2019-03-21
  • 晴天小雨
    老师,累计产生的日志数量公式是怎么来的,请老师答疑,谢谢!

    作者回复: 高中数学。数列求和。

    2019-01-31
  • 李跃爱学习
    内容消耗的加速度乘以内容的消耗难度。当注意力为正数时,是上马推荐系统的好时机怎么理解?难道一个日活跃平稳的产品就不需要上推荐系统了?
    2018-12-25
  • 老师,其他非技术角色指的是哪些哈,举些例子
    2018-06-11
  • chmit
    邢老师,看到推荐相关相关岗位,多是既要求良好的机器学习算法能力又要求java大数据相关技能您怎么看?这是给双倍工资的嘛。
    2018-05-31
  • sslrec
    一直有个问题没了解透,向老师请教一下。大多数推荐系统都是预先生产推荐列表等待用户侧来请求,有没有采用交互式的方式实时生成推荐列表的情况呢?有没有这方面的案例

    ps:很多不是做推荐业务的同事都会以为我们是交互式的
    2018-05-25
收起评论
9
返回
顶部