既然xgboost那么好,线性回归还有存在的价值吗?

  统计/机器学习 回归分析 开放问题    浏览次数:33840        分享
15

这个问题是我接着上次的问题(xgboost可以做回归预测吗?)问的。


在之前那个问题的回答中,xgboost比线性回归好非常非常多,而且xgboost也不需要做什么特征工程。既然xgboost那么好,线性回归还有存在的价值吗?


再次谢谢!


 

wlk1993   2017-11-19 15:45



   9个回答 
27

1)线性回归模型的解释性是决策树、随机森林、xgboost无法比拟的,也无法取代。

2)线性回归可以建立线性模型,而xgboost是不可以的。举个例子,即使是简单的y=x+1的线性关系,xgboost也无法做到。

3)线性模型计算简单,适用于快速部署。


更新一下,回复一下ladychili的“xgboost可以做linear model的…… booster = 'gblinear'了解一下”

我觉得如果booster='gblinear'的话,本质上就不是xgboost,其实还是线性回归,只是用sgd的方式去求解了。

也可以参考一下,xgb中booster='gblinear'是什么意思

SofaSofa数据科学社区DS面试题库 DS面经

蘑菇蘑菇   2017-11-22 10:09

这个说到点子上了!赞 - 阳春面   2017-11-27 21:14
树模型不能计算y=x+1确实显得不太优秀,可以在划分后的结点上再进行线性回归。或者xgb里面的可选模型有linear,这个应该也是可以做的吧 - 年轻人   2018-03-07 14:37
xgboost可以做linear model的…… booster = 'gblinear'了解一下 - ladychili   2020-11-23 09:38
xgboost的booster = 'gblinear'时,本质上就还是线性回归,并不是Boosting - 蘑菇蘑菇   2022-04-03 11:57
19

1.决策树/森林回归是把数据空间非线性地分成N份(N为叶节点数),相当于做N 聚类。然后再每个叶节点上求平均,其实是一种条件期望(conditional mean),$\hat{y}=E(y|c)$,$c$是聚类标签,可以看做是内插(interpolation)。所以预测点周围需要被训练点包围,这样才会有好的效果。

2.线性模型回归是用线/平面去拟合所有训练数据。当引入$x^2$等高维变量后,在原有$x$空间是非线性曲线/曲面。线性模型回归可以作内插(interpolation,预测点曾经见过),也可以做外插(extrapolation,预测点从没见过,比如$y=x+1$)。

3..决策树优点:决策树用垂直线段去拟合曲线,不用显示的写出曲线的表达式。而线性模型会尝试写出曲线的表达式。所以线性模型更难去拟合复杂的曲线。

4..决策树缺点:决策树是基于数据,而线性模型是基于模型。决策树需要大量数据去尽量覆盖所有可能的输入,适合于大数据。所谓的“大”是指训练样本的覆盖面要大。线性模型可以处理训练样本小的情况。

5..决策树和线性模型的组合。在每个叶节点上,单纯的决策树回归是用一个点代表所有值。此时可以再用线性模型,用一条线去拟合子空间的数据。

6.线性模型默认全部数据有相同的分布,而决策树可以处理mixture这样混合了不同分布的数据。所以要对复杂的混合数据聚类,提纯后再对相对单纯的一类数据用线性模型。

------------------------------------------

两者更深层的区别是parametric和nonparametric:用固定/非固定的参数去学习数据。

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2018-06-13 01:44

是的,其实本质区别是非参模型和参数模型 - 蘑菇蘑菇   2022-04-03 12:03
8

No Free Lunch Theorem告诉我们总会有一些情况,线性模型是比xgboost好的。所以不要过分迷信xgboost。


SofaSofa数据科学社区DS面试题库 DS面经

木子周   2017-12-23 14:06

表示同意,感觉现在很多人也迷信deep learning - 机器小白   2017-12-25 00:12
4

感谢楼上各位的回答!我发现的真相就是就算你懂xgboost,面试官还是比较爱问线性回归和逻辑回归。

既然面试官爱问线性模型,估计是线性模型更常用到吧

扎心了


SofaSofa数据科学社区DS面试题库 DS面经

wlk1993   2018-02-23 15:41

3

1. xgboost的计算代价还是挺高的,毕竟模型复杂

2. 模型复杂,在业界中维护的代价肯定也更高了

3. 另外还有xgb对于extrapolation算是继承了tree-model的缺点(不知大什么是extrapolation的可以看机器学习里extrapolation是什么意思?

SofaSofa数据科学社区DS面试题库 DS面经

淡淡的   2018-11-03 14:36

3
在工业界仍然有很多地方会使用lr模型,同时也有很多对lr的扩展,比如广告cvr相关算法,里面包含大量的离散特征,我们知道gbdt相关模型更偏好连续性数值特征,因此lr以及扩展的fm,ffm变得更具有价值.所有每个模型有自己的适用之处.要了解模型的优缺点SofaSofa数据科学社区DS面试题库 DS面经

betten   2018-06-20 22:23

1

当然有价值啊,而且学校里都是教线性回归。既然教了,那就要考,既然要考了,你说有没有价值呗。


SofaSofa数据科学社区DS面试题库 DS面经

花生糖   2017-11-20 09:26

1

如果xgboost和线性回归的表现差不多,或者好不了多少的时候,我都是无脑选择线性回归,一是简单,不容易过拟合,二是解释性强

SofaSofa数据科学社区DS面试题库 DS面经

zl_pku   2018-12-19 10:32

奥卡姆剃刀,简单就是好的 - jjzzxx000   2019-05-06 15:18
0

线性回归是机器学习的基石,也是开创机器学习算法一个流派的基石

SofaSofa数据科学社区DS面试题库 DS面经

博观   2021-03-02 22:27



  相关讨论

xgboost可以做回归预测吗?

训练值都是正的,xgboost regression却预测出负数?

为啥Xgboost比GradientBoost好那么多?

xgboost中的决策树的复杂度是怎么定义的?

到底什么时候用lightgbm什么时候用xgb

GBDT和XGBoost使用的都是回归树,原理上是怎么支持解决分类问题的?

xgboost怎么调参?

xgboost展开到二阶导数有什么好处啊

GBDT和XGBoost在叶子节点权重计算上有什么不同?

xgboost是怎么做到regularization的?

  随便看看

PCA降维之前为什么要先标准化?

为什么样本方差是除以n-1

医学统计里的c-index或者c-statistic是什么意思?

随机平均梯度法(Stochasitc Average Gradient)和随机梯度下降(SGD)有什么区别

为什么过拟合不好?