哪几个部分?
一阶模型融合,线性模型树模型
二阶模型融合,FM
高阶模型融合,Wide and Deep
1 线性模型和树模型
讲了什么?
GBDT + LR融合
为什么融合?
分为挖掘,召回,排序
挖掘:内容分析,用户分析,建好索引
融合是一种提升思想
GBDT + LR
- LR
特征:量化方式两种,实数或者布尔值;字段转特征方法有One-hot,特征分段,特征变换(连续值变换到0-1或者做离散化)
特征工程:构建高阶特征组合
权重:一是损失函数的最小化,还要加上正则化,需要看方差足够小的模型,防止过拟合
权重学习:除了要作出方差小偏差小的模型,在工程上也要一是越多权重为0越好,减少计算复杂度,并且方差会比较小;二是希望能够在线学习这些权重,随机梯度下降收敛慢,谷歌有一套FTRL算法 - GBDT
决策树:RF和GBDT
GBDT:生成一棵树,损失函数为误差平方和,产生残差,后面的树来根据上一个残差拟合新的树,直到满足条件为止,使用的时候把预测结果相加
GBDT用于分类:把损失函数变为对数损失函数;为了防止过拟合损失函数汇总需要加入正则项:总共树的个数,树的深度,叶子节点的权重大小;遇到实数值的特征需要分裂成若干区间,可以参考XGBoost计算分裂点收益,也可以参考决策树所用的信息增益 - 两者结合
GBDT产生N个树,每个树有M个叶节点,M个维度,一个树对应一个one-hot变量,样本来了产生N个one-hot向量,然后N个one-hot向量传入LR
2 FM
特征组合
暴力特征组合二阶笛卡尔乘积问题:
特征维度太多,或者无效,样本非常稀疏,不能找到符合组合特征的样本,也就没有办法为这个组合训练有效的参数
详解
用隐因子的向量点积替代原来两两组合的部分
计算复杂度由O(kn^2) 降到O(kn)
可以一网打进其他模型,如SVD(只留下用户ID和电影ID),SVD++(加入历史评过分的),time-SVD(加上时间信息的SVD)
扩展FFM
3 Wide & Deep
wide更多是一种记忆模型,deep泛化能力比较强
wide包括线性和交叉特征
deep主要是embedding+连续特征
数据去异常,归一化