KDD商品推荐
- 1. 推荐系统的整体架构
- 2. 特征和特征工程
- 3. 召回.
- 4. Ranking
- 5.Tensorflow
- 6.从算法角度讲推荐:排序模型,y=model(user,item,context)
- 7.从算法的角度讲推荐召回分支,key-value
- 8.从产品视角优化推荐,头条、快手、淘宝
- 9.推荐系统评估与实践
- 10.推荐系统概述
- 11.最流行的推荐系统:itemCF和userCF
- 12.大数据环境下的itemCF实现
- 13.基于频繁模式的推荐系统,套餐设计
- 14.基于内容的推荐,隐语义模型
- 15. SVD,基于标签的推荐系统
- 16.网络好友
- 17.
- 18.
1. 推荐系统的整体架构
-
什么是item
-
item中的特征
滑窗: -
离散特征和连续特征
Bucket-分桶:将连续型变量转化为离散型变量 -
需要什么特征
5.特征挖掘
埋点数据、目标管理的理解
埋点数据:
目标管理:
- u2i特征
user to item
用户浏览过item的特征
- 召回
召回首先就是砍item的维度:(要求复杂度低,快速)
- Collaborative Filtering
协同过滤
求用户的相似度:
- Matrix Formulation
- svd
-
new svd
-
Matrix Factorization
-
SVD++
独领风骚了一段时间 -
深度模型 ----wide and deep
-
为什么?
-
ESMM
2. 特征和特征工程
3. 召回.
召回阶段会用协同算法
4. Ranking
排序阶段会用CTR算法
5.Tensorflow
- what is tensor
- numpy and tensorflow
- numpy
- tensorflow
print(c.eval())
with 上下文管理器
6 从算法角度讲推荐:排序模型,y=model(user,item,context)
基本target:带来点击—(1,0),就是说这个item会被点击的概率
y=model(user,item,context)
输入:用户信息、品类(货)信息、和上下文环境(比如时间)
做推荐的,一个基本点,货找人
货:
pgc: 规范产品,质量有保障
ugc:个体户产品,质量没保障
user:喜好(用标签表示)
context:地点、ip、时间
监督模型:lr、gbdt、xgb、dnn、fm、ffm、deepfm、deep cross net、wide and deep、
y:label–{0,1} 点击或者未点击
针对短视频我们能抽取那些特征?
1.item(货):统计特征,最重要的特征
2.内容特征:title、标签、视频内容
3.用户特征:统计特征、用户的浏览点击记录 、用户的本身的属性
排序:通过数据 或者模型的优化进行排序
从货出发:
短视频,每天新增1000万
咨询每天新增1亿
如果对这么多item,让模型进行预测,过于耗费计算机资源,同时,延迟latency超过0.1s
影响用户体验,
所以有了召回。
召回的本质是平衡资源和推荐效率
召回不是粗排
精排(个性化排序模型):y=model(user,item,context)
粗排(非个性化排序模型):y=model(item,context)
粗排一般是没办法的情况下为了节约资源,提高效率,采取的下策
learn to rank:
lr、gbdt、xgb、dnn、fm、ffm、deepfm、deep cross net、wide and deep、
召回-》粗排(一般不要)-》精排 直接产出top n (一般 :0<n<20)
召回是对于大量item而言,如果只有100个item,那就不需要召回
7.从算法的角度讲推荐召回分支,key-value
召回的数据结构一般是个字典dict:key-value
cf ,协同过滤(dnn)—一系列的算法产生召回分支
==>i2i 、 u2u、 u2i、city2i、sex2i、category2i [key:value](这些都是召回分支)
设计召回分支,设计召回算法,优化召回算法
有多个召回分支在召回
召回:多类型key的字典
召回方法:多个分支召回后经过人工选定的阈值截断top1000,去重后1000个候选
送给排序模型进行排序
搞推荐的,每天都要思考怎么优化召回分支算法
点击item,这个itme会通过埋点回传服务器,会标记你的user_id,会推荐你点的类似的物品
feed是将用户主动订阅的若干消息源组合在一起形成内容聚合器,帮助用户持续地获取最新的订阅源内容。feed流即持续更新并呈现给用户内容的信息流。
数据从哪里来?
从日志(log)来
log的具体线上链路是什么?
app客户端埋点–》用户产生相应的点击,浏览,点赞,评论–》回传服务器
–》kafka,无延迟的上传到实时计算集群(storm)–》进行label拼接,形成log
–>根据数据进行建模
rerank:规则打散,业务逻辑,类似于强插,比如某明星必须放在第一条
8.从产品视角优化推荐,头条、快手、淘宝
隐式负反馈,什么不被点,就会被。。。
9.推荐系统评估与实践
但是当我们形式化为算法问题,基本都是AUC
学术界标准
工业界
冷启动问题
没有log怎么做
真正的实时学习很难work
推荐阅读资料
工业界资料
业界通用推荐框架
Deep Neural Networks for YouTube Recommmendations, RecSys’16
Deep Collaborative Filtering Model
wide and deep 排序模型的示意图:
推荐系统概述
最流行的推荐系统:itemCF和userCF
基于距离计算相似度:
基于相关系数计算相似度
越接近1,相似度越高
CF:协同过滤
一张表既可以icf 也可以ucf
item CF 一般会比 User CF好一点,因为User CF 需要长时间的观察
User CF一般会用在社交网络中
推荐给u3,除去看过的,选剩下最高分 上面就是24.5分的电影
AUC是衡量二分类模型优劣的一种评价指标,表示预测的正例排在负例前面的概率
Slope One基本被放弃
大数据环境下的itemCF实现
基于频繁模式的推荐系统,套餐设计
基于内容的推荐,隐语义模型
SVD,基于标签的推荐系统
网络好友
ge
Faiss库
2种防止过拟合的方法:
长尾效应指那些原来不受到重视的销量小但种类多的产品或服务由于总量巨大,累积起来的总收益超过主流产品的现象