机器学习第二周(特征和多项式回归)

文章探讨了特征选择在模型构建中的重要性,以房价预测为例,解释了如何从原始特征创建新的特征,如房子的尺寸,以改进线性回归模型。还介绍了多项式回归的概念,用于处理非线性关系,通过二次和三次模型展示了如何适应不同数据趋势。特征缩放在高次多项式模型中也得到强调,并提出了选择合适模型需结合对函数图像的理解和数据趋势的知识。
摘要由CSDN通过智能技术生成

选择特征(一千个特征,一千种模型)

特征选择的例子
以房价问题为例,假设数据集中有两个特征,分别是房子的宽度和长度,我们就可以建立一个这样的线性回归模型,其对应的假设函数 h θ ( x ) = θ 0 + θ 1 × f r o n t a g e + θ 2 × d e p t h h_θ(x)=\theta_0+θ_1×frontage+θ_2×depth hθ(x)=θ0+θ1×frontage+θ2×depth f r o n t a g e frontage frontage 对应 x 1 x_1 x1 d e p t h depth depth 对应 x 2 x_2 x2,但我们不一定非要使用这两个特征来进行预测,我们可以自己创造新的特征。

比如,对于上述的问题,我们觉得真正影响房价的是房子的大小,所以我们可以定义一个新特征 s i z e = f r o n t a g e × d e p t h size=frontage×depth size=frontage×depth,我们得到的假设函数就会是 h θ ( x ) = θ 0 + θ 1 × s i z e h_θ(x)=\theta_0+θ_1×size hθ(x)=θ0+θ1×size,所以,这实际上取决于我们从什么样的角度去看待问题,有时相比于使用原特征,从另一种角度出发定义一个新特征,可能会让我们得到更好的模型

也就是我们说的“一千个特征,一千种模型”,这里指的对于不同的特征,我们往往会得到不同的模型,所以说,有时对特征进行合适的选择,也能够帮助我们得到更好的模型。

多项式回归

在之前的房价预测问题,我们都是使用一条直线来拟合数据,但是并不是所有的数据之间都是满足线性的关系,实际情况中,它们往往是更复杂的、非线性的关系,所以我们需要介绍一下如何拟合这类的数据
多项式回归
假设我们有如上图所示的一个住房价格的数据集,可能会有多个不同的模型都能跟这个数据集相拟合,选择之一就是这样的二次模型 h θ ( x ) = θ 0 + θ 1 x + θ 2 x 2 h_θ(x)=\theta_0+θ_1x+\theta_2x^2 hθ(x)=θ0+θ1x+θ2x2,因为直线可能不能很好的拟合这些数据,因此,我们可能会考虑使用这样一个二次模型去拟合数据,我们会考虑到房价可能是一个二次函数,所以我们可能会得到下图所示的曲线
二次模型
但是我们会发现二次模型也许并不是一个很好的选择,因为随着房子大小的增加,曲线逐渐演化为一个上凸函数,即房价在随之减小,显然,这不是我们预期的结果。因此,我们可能会选择一个不同的多项式模型,比如一个三次函数 h θ ( x ) = θ 0 + θ 1 x + θ 2 x 2 + θ 3 x 3 h_θ(x)=\theta_0+θ_1x+\theta_2x^2+\theta_3x^3 hθ(x)=θ0+θ1x+θ2x2+θ3x3,那么,我们可能会得到下图所示的曲线
三次模型
我们会觉得这条曲线比上一条曲线拟合的更好,因为它没有随着房子大小的增加反而呈现出下降的趋势。

那么,我们如何将模型与数据进行拟合呢?即如何得到多项式线性回归的模型呢?

之前,我们已经介绍了多元线性回归,通过使用多元线性回归的方法,我们可以对原来的算法做一个简单的修改,从而得到多项式线性回归的模型,如下图所示

多项式回归
按照我们以前的假设的形式,
我们得到的假设函数是 h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 + θ 3 x 3 h_θ(x)=\theta_0+θ_1x_1+\theta_2x_2+\theta_3x_3 hθ(x)=θ0+θ1x1+θ2x2+θ3x3
对比多项式模型的形式 h θ ( x ) = θ 0 + θ 1 x + θ 2 x 2 + θ 3 x 3 h_θ(x)=\theta_0+θ_1x+\theta_2x^2+\theta_3x^3 hθ(x)=θ0+θ1x+θ2x2+θ3x3,所以,可以很容易的发现二者之间的联系,只要通过变量代换的方法就可以得到多项式回归的模型了,即令 x 1 = s i z e , x 2 = s i z e 2 , x 3 = s i z e 3 x_1=size,x_2=size^2,x_3=size^3 x1=size,x2=size2,x3=size3需要注意的是,如果我们使用这种次方的多项式模型,那么,进行特征缩放就显得尤为重要了,因为可能原始的范围很小,但是随着次方,特征量的范围会产生指数型增长

二次模型
上图是我们之前讨论的二次模型,我们发现二次模型随着房子大小的增加反而呈现出下降的趋势,所以我们使用了三次模型来代替它,但实际上除了三次模型,我们还有其他的选择,这里我们举出一个更合理的选择的例子,比如, h θ ( x ) = θ 0 + θ 1 s i z e + θ 2 ( s i z e ) h_θ(x)=\theta_0+θ_1size+\theta_2\sqrt {(size)} hθ(x)=θ0+θ1size+θ2(size) ,可以看到我们使用了平方根函数,很显然,如何选择合适的模型,一定程度上取决于你对这些函数图像的了解以及对数据变化趋势的了解。

至此,我们介绍了特征的选择,但是我们会想特征是无数多的,我们如何选择呢?后面我们会介绍能够帮助我们自动选择特征的算法,现在,我们只需要知道,我们是可以自由选择使用什么特征的,并且通过设计不同的特征,我们能够使用更加复杂的函数来拟合数据,而不是只是使用一条直线来拟合数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PL_涵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值