Part1.乐视网视频推荐系统

推荐系统:和传统的推荐系统架构无异(基础建模+规则)

数据模块特点:用户反馈服务数据-》kv 缓存-》log存储

行为日志-》解析/聚合-》session log-》cf/用户模型

系统推荐流程:

召回:聚类算法;tensorflow(topN);分类,top个性化标签(微软lda);cf/als;人工干预

排序:时效+相似度+gbdt/ LR

过滤

策略调整:分类多样性

调优—提升较明显的组合:

1.分类+标签倒排排序

2.itemcf+als召回+分类多样性

3.itemcf召回优化排序+此召回的用户反馈调权占比40%

4.item召回打分引入曝光

短视频冷启动:排序未点击的会马上落下

Part2.RoadMap of YouTube isrecommendation System(Ke Wang)PPT

Youtube推荐系统的发展历程:

1.get tags:user共现图/pagerank思想 && 引用视频相关视频中top tags

2.基于user兴趣推荐多级相关视频

3.视频排序:质量,多样性,多频道源

4.相关视频推荐优化:避免cf缺点(cf缺点:新鲜性 and 长尾)

1)retrieval with weighted topic(短期内观看视频中大众类型标签推荐计算)

2)防止(1),learning topic transitions

用户行为去拟合topic的权重大小

5.优化应用:deep learning

召回建模中的策略

deep learning输入embedding:历史搜索+观看+用户特征,最后输出概率;

显性反馈没有隐含反馈重要;

用户最近100条兴趣 better than  最近100天用户的兴趣;

feed流中:放弃序列输入 防止过拟合用户模块

新用户的兴趣挖掘:时序行为挖掘 better 随机行为

ranking 建模:(用户观看时长为指标)

dnn架构和召回类似。

dnn输入:视频,视频均值,用户语言,视频语言,距离上次观看时间开方,原值,平方;先前的印象原值,开方,平方;等embedding

输出:加权lr(正样本评估加权)

Part3 58同城智能推荐系统的演进和实践 詹坤林

评价指标:推荐点击占比,推荐转化比,点击率,转化率,覆盖率(评价长尾)

特点:用户标签和帖子标签很完善

用户标签挖掘:

标签会有分类:购房偏好,租房偏好,购车偏好,通用属性(时间,质量分,关键词,图片),动态属性(pv、uv、阅读时长)等

召回:

兴趣召回(基于兴趣标签检索),热门召回(统计ctr,平滑处理),地域召回,关联规则,协同过滤(实时itemCF),SVD(效果一般),DNN

召回融合:

1)分级先后顺序融合

2)调制融合(比例融合)

排序模型:

单一模型LR/XGBoost/FM

融合模型:XGBoost+LR/FM

深度模型:FNN(提升2%) / Wide deep/CNN

多目标优化(多权):

点击率,转化率,停留时长预估(回归,分类)

学习平台:

深度学习在kubernets中融合tensorflow,caffe,Distribute tensor flow

机器学习:Yarn融合MLib,DMc

深度学习和机器学习平台通过hdfs打通

规则迭代(AB test):

去重策略/打散列表/产品逻辑/页面展示迭代

A/Btest(有web操作页面,可供全公司配置实验)

请求分流/数据监控

A/B多层实验架构

系统优点:

耦合性低,扩展性佳;协同开发,快速迭代;

关键技术

58自研RPC框架SCF

系统立体监控:

业务总体监控/关键模块监控(请求量,失败量,平均延时,最大值,最小值)+告警阈值

数据监控:

推荐埋点设计:每一次曝光seqNo,进入点击click标志链式关联;沟通时长决定是否打上埋点commucate

埋点开发测试流程:

埋点文档沉淀+EtL抽取文档

效果数据统计:

hive上用Kylin(多维数据)做可视化,邮件报警和监控

推荐效果:

推荐占比20%~30%,流量2亿,响应30ms

Part4 58个性化推荐push系统

推送的作用:

服务用户,提高日活和留存,活动运营和推广

推送点击率预估&效果数据监控

原策略bug:条数限制,先来先推,精准度差,干扰性大

推送控制系统:

机制化推送+运营推送—》通用推送平台—〉消息总线—》推送平台

推送点击率预估:样本(推送点击1;推送未点击0);特征工程(用户行为特征,推送上下文环境特征:周几,推送信息特征:软文);模型算法:xgboost(分布式版)

模型离线评价:批次召回率 整体召回率

推荐系统架构-(附ppt&代码)的更多相关文章

  1. XGBoost参数调优完全指南(附Python代码)

    XGBoost参数调优完全指南(附Python代码):http://www.2cto.com/kf/201607/528771.html https://www.zhihu.com/question/ ...

  2. 【年终分享】彩票数据预测算法(一):离散型马尔可夫链模型实现【附C#代码】

    原文:[年终分享]彩票数据预测算法(一):离散型马尔可夫链模型实现[附C#代码] 前言:彩票是一个坑,千万不要往里面跳.任何预测彩票的方法都不可能100%,都只能说比你盲目去买要多那么一些机会而已. ...

  3. Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例【附详细代码】

    http://blog.csdn.net/xiefu5hh/article/details/51707529 Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例[附 ...

  4. Netflix公布个性化和推荐系统架构

    Netflix的推荐和个性化功能向来精准,前不久,他们公布了自己在这方面的系统架构. 3月27日,Netflix的工程师Xavier Amatrain和Justin Basilico在官方博客发布文章 ...

  5. Python 爬虫的工具列表 附Github代码下载链接

    Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...

  6. 漫谈四种神经网络序列解码模型【附示例代码】 glimpse attention

    漫谈四种神经网络序列解码模型[附示例代码] http://jacoxu.com/encoder_decoder/ [视觉注意力的循环神经网络模型]http://blog.csdn.net/leo_xu ...

  7. Android 监听双卡信号强度(附完整代码)

    Android 监听双卡信号强度 监听单卡信号强度 监听单卡的信号强度非常简单直接用TelephonyManager.listen()去监听sim卡的信号强度. TelephonyManager = ...

  8. Java生鲜电商平台-生鲜售后系统的退款架构设计与代码分享

    Java生鲜电商平台-生鲜售后系统的退款架构设计与代码分享 说明:任何一个电商行业都涉及到退货与退款的问题,但是生鲜电商行业还设有一个显著的特点,那就是换货.在人性面前,各种各样的退货,退款,换货的售 ...

  9. [转帖]期待下一个十年|CIS 2019温馨回顾(附PPT下载)

    期待下一个十年|CIS 2019温馨回顾(附PPT下载) https://www.freebuf.com/fevents/222236.html shidongqi2019-12-06共26587人围 ...

随机推荐

  1. 201521123062 《Java程序设计》第14周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 建立数据库,将自己的姓名.学号作为一条记录插入.(截图,需出现自 ...

  2. PHP连接数据_insert_id介绍

    对于自增长的主键列不好取值的情况,php提供了一个变量来取值,insert_id $db = new MySQLi("localhost","root",&qu ...

  3. PHP字符串常用操作

    常用操作有: PHP中有两个内建的函数:count() 和sizeof(),可以实现得到数组的长度 count($sttr);数组长度 字符串长度:strlen(string $a); 判断是否相同, ...

  4. java web SSO单点登录

    第一篇: Web应用系统的演化总是从简单到复杂,从单功能到多功能模块再到多子系统方向发展. .当前的大中型Web互联网应用基本都是多系统组成的应用群,由多个web系统协同为用户提供服务. 多系统应用群 ...

  5. [js高手之路]Node.js模板引擎教程-jade速学与实战4-模板引用,继承,插件使用

    一.block 模块复用 把需要复用的模块用block定义 block后面跟上模块的名字,引用一次block 内容就会被复用一次 编译之后的结果: 二,继承模板(extends) 在实际开发中,网站的 ...

  6. python实例编写(5)--异常处理,截图,用例设计

    一.python的异常处理 异常抛出处理机制: 1.若在运行时发生异常,解释器会查找相应的处理语句(handler) 2.若在当前函数无法找到,就将异常传给上层的调用函数,看是否能处理 3.如果在最外 ...

  7. Mysql中的like模糊查询

    MySql的like语句中的通配符:百分号.下划线和escape %代表任意多个字符 _代表一个字符 escape,转义字符后面的%或_,使其不作为通配符,而是普通字符匹配   数据库数据如下: 1. ...

  8. springmvc05-Spring+Springmvc+Hibernate实现简单的用户管理系统

    1, 导入\spring-framework-3.2.4.RELEASE\libs\disk下所有包; hibernate-distribution-3.6.7.Final\lib\required下 ...

  9. 支持语音识别、自然语言理解的微信小程序(“遥知之”智能小秘)完整源码分享

    记录自己搭建https的silk录音文件语音识别服务的调用过程,所有代码可在文中找链接打包下载 >>>>>>>>>>>>> ...

  10. vmware三种网络格式

    网络地址转换(NAT) 这种访问模式指的是虚拟机不占用主机所在局域网的ip,通过使用主机的NAT功能访问局域网和互联网,意味着虚拟机可以访问局域网中的其他电脑,但是其他电脑不知道虚拟机的存在. 使用这 ...