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. 201521123118《java程序与设计》第4周作业总结

    1.本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点 1.2 使用常规方法总结其他上课内容. 为了不必要写重复的代码,可以运用继承,用关键字extends来定义一个类,被继承的类叫做父类,继 ...

  2. 201521123079《Java程序设计》第2周学习总结

    1. 本周学习总结 学会String类和StringBuilder类的一些用法. 学会使用码云管理代码,会将码云上的代码和本地仓库关联 2. 书面作业 Q1.使用Eclipse关联jdk源代码,并查看 ...

  3. 201521123096《Java程序设计》第十三周学习总结

    1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu ...

  4. Java swing(awt):事件监听机制的实现原理+简单示例

    (1)实现原理 事件监听机制的实现: 参考图:事件模型_ActionEvent 为了节省资源,系统无法对某个事件进行实时的监听.故实现的机制是当发生某个事件后,处理代码将被自动运行,类似钩子一般.(回 ...

  5. Redis总结(六)Redis配置文件全解

    前面已经写了一些关于redis 的介绍,redis 的基本功能和用法,基本上都说了,有问题的可以去看看 http://www.cnblogs.com/zhangweizhong/category/77 ...

  6. [js高手之路]Node.js+jade+mongodb+mongoose实现爬虫分离入库与生成静态文件

    接着这篇文章[js高手之路]Node.js+jade抓取博客所有文章生成静态html文件继续,在这篇文章中实现了采集与静态文件的生成,在实际的采集项目中, 应该是先入库再选择性的生成静态文件.那么我选 ...

  7. 快速搞定用Vue+Webpack搭建前端项目(学习好久了,该写点东西了......)

    现在开始安装环境 一.安装node.js 首先要安装node.js,去nodejs官网下载即可,地址:http://nodejs.cn/中文网. 安装完成后,打开终端(windows键+R)搜索cmd ...

  8. [PHP源码阅读]number_format函数

    上次讲到PHP是如何解析大整数的,一笔带过了number_format的处理,再详细阅读该函数的源码,以下是小分析. 函数原型 string number_format ( float $number ...

  9. 记一次 node.js 的populate用法

    最近在学习node.js做一个简单的博客的网站,用的express框架和mongodb的数据库.之前没有接触过这个数据库,所有在一开始写的时候遇到了一些问题,如何初始化model类型,又如何实现简单的 ...

  10. ES6 Promise 对象

    Promise 的含义 Promise 是异步编程的一种解决方案,比传统的解决方案--回调函数和事件--更合理和更强大.它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Pro ...