2021-03-18

集成学习之基本回归方法
文章内容来源于
datawhale
通常来说,一个完整的机器学习项目应分为如下步骤:
(1)明确自己的任务是回归还是分类。
(2)收集数据集,选择合适的特征。
(3)选择度量模型性能的指标。
(4)选择项目的模型并进行训练优化模型。
(5)评估模型的性能并调参。
Sklearn构建的完整回归项目
(1)收集数据集并选择合适的特征:
用sklearn中的boston房价数据集

from sklearn import datasets 
boston = datasets.load_boston() # 返回一个类似于字典的类 
X = boston.data 
y = boston.target 
features = boston.feature_names 
boston_data = pd.DataFrame(X,columns=features) 
boston_data["Price"] = y 
boston_data.head()

各个特征可以参考数据集
(2)选者合适的度量模型性能的指标
一般回归任务都会选择MSE,MAE,R2决定系数,解释方差得分等。
在这里插入图片描述

详情可见regression metrics
在这里插入图片描述

本次项目选择MSE作为模型的性能度量指标。
(3)选择具体的回归模型训练
a.线性回归模型
在线性回归中,我们假设因变量与特征之间的关系是线性关系,这样的假设使得模型很简单,但是缺点也是显然的,那就是当数据存在非线性关系时,我们使用线性回归模型进行预测会导致预测性能极其低下,因为模型的形式本身是线性的,无法表达数据中的非线性关系。我们一个很自然的想法就是去推广线性回归模型,使得推广后的模型更能表达非线性的关系。
线性回归还可分为多项式回归和广义回归模型。
多项式回归:
为了体现因变量和特征的非线性关系,一个很自然而然的想法就是将标准的线性回归模型:
在这里插入图片描述

换成一个多项式函数:
在这里插入图片描述

对于多项式的阶数d不能取过大,一般不大于3或者4,因为d越大,多项式曲线就会越光滑,在X的边界处有异常的波动。
广义可加模型(GAM):
广义可加模型GAM实际上是线性模型推广至非线性模型的一个框架,在这个框架中,每一个变量都用一个非线性函数来代替,但是模型本身保持整体可加性。GAM模型不仅仅可以用在线性回归的推广,还可以将线性分类模型进行推广。具体的推广形式是:
标准的线性回归模型:
𝑦𝑖 = 𝑤0 + 𝑤1𝑥𝑖1+. . . +𝑤𝑝𝑥𝑖𝑝 + 𝜖𝑖
GAM模型框架:
𝑝 𝑦𝑖 = 𝑤0 + ∑𝑓𝑗(𝑥𝑖𝑗) + 𝜖𝑖 𝑗=1
GAM模型的优点与不足:
优点:简单容易操作,能够很自然地推广线性回归模型至非线性模型,使得模型的预测精度有所上升;由于模型本身是可加的,因此GAM还是能像线性回归模型一样把其他因素控制不变的情况下单独对某个变量进行推断,极大地保留了线性回归的易于推断的性质。
缺点:GAM模型会经常忽略一些有意义的交互作用,比如某两个特征共同影响因变量,不过GAM还是能像线性回归一样加入交互项𝑥(𝑖) × 𝑥(𝑗)的形式进行建模;但是GAM模型本质上还是一个可加模型,如果我们能摆脱可加性模型形式,可能还会提升模型预测精度,详情请看后面的算法。
b.回归树模型
基于树的回归方法主要是依据分层和分割的方式将特征空间划分为一系列简单的区域。对某个给定的待预测的自变量,用他所属区域中训练集的平均数或者众数对其进行预测。由于划分特征空间的分裂规则可以用树的形式进行概括,因此这类方法称为决策树方法。决策树由结点(node)和
有向边(diredcted edge)组成。结点有两种类型:内部结点(internal node)和叶结点(leaf node)。内部结点表示一个特征或属性,叶结点表示一个类别或者某个值。区域𝑅1 , 𝑅2等称为叶节点,将特征空间分开的点为内部节点。
树模型的优缺点:
树模型的解释性强,在解释性方面可能比线性回归还要方便。
树模型更接近人的决策方式。
树模型可以用图来表示,非专业人士也可以轻松解读。
树模型可以直接做定性的特征而不需要像线性回归一样哑元化。
树模型能很好处理缺失值和异常值,对异常值不敏感,但是这个对线性模型来说却是致
命的。
树模型的预测准确性一般无法达到其他回归模型的水平,但是改进的方法很多。
c.支持向量机回归模型(SVR)
暂时写到这有事水一水

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值