week3_多变量线性回归

1:多维特征

以前讨论的是单变量的特征,现在增加更多的特征,例如房价模型中,增加楼房层数,房间数,房子的年份等等,每一个特征为 ( x 1 , x 2 , . . . , x n ) \left( {x_{1}},{x_{2}},...,{x_{n}} \right) (x1,x2,...,xn),n表示共有多少个特征
x ( i ) {x^{\left( i \right)}} x(i)表示第 i 行
x ( 2 ) = [ 1416   3   2   40 ] {x}^{(2)}\text{=}\begin{bmatrix} 1416\\\ 3\\\ 2\\\ 40 \end{bmatrix} x(2)=1416 3 2 40,第二行的四个特征
假设h为: h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 + . . . + θ n x n h_{\theta}\left( x \right)={\theta_{0}}+{\theta_{1}}{x_{1}}+{\theta_{2}}{x_{2}}+...+{\theta_{n}}{x_{n}} hθ(x)=θ0+θ1x1+θ2x2+...+θnxn
整齐引入 x 0 = 1 x_{0}=1 x0=1
变成 h θ ( x ) = θ 0 x 0 + θ 1 x 1 + θ 2 x 2 + . . . + θ n x n h_{\theta} \left( x \right)={\theta_{0}}{x_{0}}+{\theta_{1}}{x_{1}}+{\theta_{2}}{x_{2}}+...+{\theta_{n}}{x_{n}} hθ(x)=θ0x0+θ1x1+θ2x2+...+θnxn
特征矩阵 X X X的维度是 m ∗ ( n + 1 ) m*(n+1) m(n+1) 可以认为m个房子
因此公式可以简化为: h θ ( x ) = θ T X h_{\theta} \left( x \right)={\theta^{T}}X hθ(x)=θTX,其中上标 T T T代表矩阵转置。

2:多变梯度下降

和单变量线性回归类似,在多变量线性回归中,也有代价函数,也要求代价函数最小。找一系列 θ {\theta_{}} θ
J ( θ 0 , θ 1 . . . θ n ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 J\left( {\theta_{0}},{\theta_{1}}...{\theta_{n}} \right)=\frac{1}{2m}\sum\limits_{i=1}^{m}{{{\left( h_{\theta} \left({x}^{\left( i \right)} \right)-{y}^{\left( i \right)} \right)}^{2}}} J(θ0,θ1...θn)=2m1i=1m(hθ(x(i))y(i))2
其中: h θ ( x ) = θ T X = θ 0 + θ 1 x 1 + θ 2 x 2 + . . . + θ n x n h_{\theta}\left( x \right)=\theta^{T}X={\theta_{0}}+{\theta_{1}}{x_{1}}+{\theta_{2}}{x_{2}}+...+{\theta_{n}}{x_{n}} hθ(x)=θTX=θ0+θ1x1+θ2x2+...+θnxn
和单变量同理,多变量的梯度下降法表示为:
在这里插入图片描述
带入J:
在这里插入图片描述
同时更新所有参数

3:梯度下降法:特征缩放与学习率

特征缩放简单来说是不能让不同的变量数量级差的太大,这会导致梯度下降无法完成。尽量将所有特征的尺度缩放在-1至1之间
最简单的方法是令: x n = x n − μ n s n {{x}_{n}}=\frac{{{x}_{n}}-{{\mu}_{n}}}{{{s}_{n}}} xn=snxnμn,其中 μ n {\mu_{n}} μn是平均值, s n {s_{n}} sn是标准差。
学习率:过小速度太慢,过大越过局部最小。通常考虑 α = 0.01 , 0.03 , 0.1 , 0.3 , 1 , 3 , 10 \alpha=0.01,0.03,0.1,0.3,1,3,10 α=0.010.030.10.31310
4:特征与多项式回归
有的回归并不适合线性回归,有时我们需要曲线来适应我们的数据,比如一个二次方模型: h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 2 h_{\theta}\left( x \right)={\theta_{0}}+{\theta_{1}}{x_{1}}+{\theta_{2}}{x_{2}^2} hθ(x)=θ0+θ1x1+θ2x22,或者三次方模型: h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 2 + θ 3 x 3 3 h_{\theta}\left( x \right)={\theta_{0}}+{\theta_{1}}{x_{1}}+{\theta_{2}}{x_{2}^2}+{\theta_{3}}{x_{3}^3} hθ(x)=θ0+θ1x1+θ2x22+θ3x33
在这里插入图片描述
也可以令 x 2 = x 2 2 , x 3 = x 3 3 {{x}_{2}}=x_{2}^{2},{{x}_{3}}=x_{3}^{3} x2=x22,x3=x33,从而将模型转化为线性回归模型。
如果我们采用多项式回归模型,在运行梯度下降算法前,特征缩放很有必要

4:正规方程

除了梯度下降的另一种求解线性回归问题的方法。

一个代价函数如下:
在这里插入图片描述
找代价函数最小值(找一系列 θ {\theta_{}} θ),微积分学过求导即:
∂ ∂ θ j J ( θ j ) = 0 \frac{\partial}{\partial{\theta_{j}}}J\left( {\theta_{j}} \right)=0 θjJ(θj)=0
正规方程: θ = ( X T X ) − 1 X T y \theta ={{\left( {X^T}X \right)}^{-1}}{X^{T}}y θ=(XTX)1XTy
X为特征矩阵(包含${{x}_{0}}),y是一个个体的结果,解这个方程得到的就是 θ {\theta_{}} θ

例:

5:梯度下降与正规方程比较:

在这里插入图片描述
更多详细查看黄海广机器学习笔记。*

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值