LR
-
可以视作单层单节点的“DNN”, 是一 种宽而不深的结构, 能够处理高纬度稀疏问题 ,。
-
模型优点是简单、高效、可控性好,模型可解释: 所有的特征直接作用在最后的输出结果上
-
但是效果的好坏直接取决于特征工程的程度,需要非常精细的连续型、离散型、时间型等特征处理及特征组合。通常通过正则化等方式控制过拟合。Ref: https://tech.meituan.com/2018/06/07/searchads-dnn.html
-
-
为什么lr不能处理连续特征(为什么要把连续特征转化为离散特征后送进lr?)
因为这样可以增加lr的鲁棒性,比如如果把年龄送进lr,那么23和24岁本来相差不大,但是却变成了完全不同的变量,也就是所23岁和24岁的区别程度和23岁和50岁的区别程度是一样的,显然不符合。或者加入一个300岁的偏差特征也可能会影响模型,但对年龄分箱之后就可以避免上述问题,增加模型鲁棒性。
GBDT+LR:
- gbdt+lr相当于对原始特征通过gbdt进行了特征组合
- gbdt对连续特征划分能力强,可以帮助lr处理连续特征,避免了人工对连续特征分箱操作。
FM
优点
1. 它可以自动完成特征交叉,可以减少一部分的交叉特征选择工作,而且参数也不算多,调起来不会太痛苦。
2. 因为不需要输入那么多的交叉特征,所以产生的模型相对LR的模型会小很多。
3. 在线计算时减小了交叉特征的拼装,在线计算的速度基本和LR持平(虽然两个向量的点积的计算看上去会导致计算量翻了几倍)。
缺点
1. 无法学习三个及以上的特征间的关系,所以交叉特征选择的工作仍然无法避免。
2. 虽然从原理上好像FM学习能力更强,但在实践中超过LR的效果也要凭实力(运气?)
3. 从功利的角度看,FM是非常不值得尝试的,它的工作量没比神经网络小多少,在这个不说深度学习都好像不懂机器的环境下,用FM算法,所能得到的资源,支持和收获,远比不上神经网络,所以建议做完LR后,就直接换神经网络吧,别搞FM了。