1 推荐业务
排序模型
- 召回->粗排->精排
精排 y = model(user, item, context)
粗排 y = model(item, context) - 特征:
item特征:统计特征,内容特征如title,标签,视频内容
用户特征:统计特征,用户历史记录,用户本身的属性 - 特性
短视频,每天新增1000万,资讯每天新增1亿
latency不超过0.1秒
召回分支
- 召回方法
多个召回merge成一个候选集 - 数据
app客户端埋点 -> 用户产生点击,浏览,点赞,评论 -> 回传服务器 -> kafka,上传实时计算集群 -> label拼接,形成log,然后我们根据数据进行建模 - rerank
规则打散,业务逻辑
产品视角
飘红点击率高10%
竖版(快手)比横版(头条)点击率高10%
一般基本有5个tab,但是微信只有4个tab
rerank根据产品和运营需求,比如强插美女视频,比如横版为竖版
推荐系统评估与实践
- 准确性
- AUC
- 冷启动:偏好:新用户冷启动倾向于热门,老用户更加需要长尾
1.收集用户特征 使用X2I召回
用户注册信息:性别,年龄,地域
设备信息:定位,手机型号,app列表
社交信息,推广素材,安装来源
2.制造粗粒度选项,引导用户填写兴趣
3.迁移学习,使用其他站点的行为数据
2 特征方法
item特征
item的类别和统计类特征
量纲和平滑
离散和连续特征和相互转化
用户特征
用户画像库和标签
U2I特征(某个userid买了多少itemid),交叉特征(主要是id交叉)
数据的存储和使用
使用支持Map-Reduce的数据库进行存储比如hive,使用Mapper和Reducer
如果id都在一起的话,使用均匀哈希分桶和数据倾斜
- 离线
在线(快)和离线(大)
在线使用hbase存储数据
在线和离线数据同步 hive数据同步到hbase - 特征服务平台
管理特征,特征共用,特征的生命周期,离线特征和实时特征
Embedding
one-hot representation 01
distributed representation 聚类
- Embedding多角度看,是映射
FM 分解,对embedding二阶特征组合
Word2vec 中间层
Deeplearning 中间层
特征工程
简单模型+复杂特征
复杂模型+简单特征
- 线性模型的特征工程
二阶特征和高阶交叉
单变量的非线性变换
特征预处理和归一化或者标准化(梯度) - 缺失值
直接填充
中位数均值填充 - 特征选择
方差过滤法
相关系数法 协方差,卡方检验,互信息
树模型的特征重要性 - 特征降维
PCA
SVD
LDA - 特征连续化
embedding,空间变换 - 特征离散化
手动分桶,自动分桶(GBDT+LR) - ML Pipeline
sklearn pipeline: fit和transform - 样本不均衡怎么处理
上下采样
基于距离SMOTE-NC
信息类 boosting思想
网友评论