机器学习之线性回归模型

当我们拿到样本并经过特征降维后得到 x1、x2 … 低维特征,经过多项式映射得到线性回归的模型假设:
线性回归模型假设
上式 x1、x2 是样本特征,如果 y 是现实中房子的价格,那么 x1、x2 相当于房子的面积、卧室数量等影响房子价格的因素,而 θ0、θ1、θ2 … 是系数,也就是各影响因素的权值

用 h(x) 来表示预测结果,上式用线性代数来表达:
线性回归预测模型
线性模型用于预测,当前主要的问题是如何求出最优的系数 θ ,使得这个模型变得更准确和可靠,最常用的两个方法是最小二乘法和梯度下降算法

最小二乘法:

给定目标函数:
目标函数
式中 h(x) 是预测结果,y 是真实值,用它们之间的误差平方和来评估 θ 最优,目标函数 J(θ) 越小,θ 越好,使得 J(θ) 取最小值的那个 θ 就是最优的,而取最小值的那个 J(θ) 叫做损失函数

损失函数的求法:
求损失函数
如果 XTXθ 可逆,则
损失函数求解
如果 XT•X•θ 不可逆或防止过拟合,则加入 λ 扰动:
损失函数优化求解

梯度下降算法

对于线性回归模型假设
线性回归模型
随机初始化 θ,然后让 θ 沿着梯度方向迭代,更新后的 θ 使得 J(x) 变得更小, θ 就更优
梯度下降

α:学习率、步长

1、用回溯线性搜索寻找最优的学习率是最正的方法;
2、随机给一个初始学习率,接下来不断修正,这是比较简单高效的方法(在实践中常用);
3、给一个固定的学习率,一般情况下用

实践中的梯度下降算法:

一、批量梯度下降算法(需要拿到所有样本):
批量梯度下降
二、随机梯度下降(拿到一个样本下降一回,速度快,非常适合在线学习):
随机梯度下降
三、择中梯度下降(实践中常用,既不是拿到全部样本下降一次,也不是拿到一个样本下降一次,而是若干个样本的平均梯度作为更新方向)称 “mini-batch SGD“

优化与拓展:
线性回归的复杂度惩罚因子

过拟合:如果有9个样本点,那么可以最高用8阶的多项式来拟合,阶数越高拟合度越高,但阶数越高不一定越好,因为会出现震荡现象,当我们再用这个多项式来预测的话会因为震荡出现较大的偏差

防止过拟合:

一、Ridge 回归:将目标函数加入平方和损失
Σθ^2 这样的项叫做正则项
Ridge回归
二、LASSO:正则项是一次幂
LASSO
LASSO 有一定的特征选择能力,选择最主要的低阶特征,降低了高阶的权值,J(θ) 对 θ 求偏导得
LASSO偏导
式中 λ 是 θ 的参数,叫超参数,是没办法通过样本求出来的,一般通过交叉验证得到
给出 λ=0.01、λ=0.02 … 的候选,从训练数据集中分出一部分作为验证数据集,验证每一个 λ 对应的 θ,用 θ 的均方误差 MSE 确定候选中最优的 λ

n折交叉验证:

把训练数据集分成 n 份
前 n-1 份来作为训练数据,把第 n 份作为验证数据集
再把前 n-2 份、第 n 份作为训练数据集,把第 n-1 份作为验证集
再把前 n-3 份、n-2~n-1 份作为数据集,把第 n-2 份作为验证集
再把 …
交叉验证

判定系数(模型好坏的指标):

对于 m 个样本:(x1, y1),(x2, y2),(x3, y3) …
某模型的预测值:^y1 ,^y2 ,^y3 …
残差平方和:(预测值和真实值)
残差平方和
样本的平方和:(真实值和均值)
样本的平方和
定义R^2:(R ^2 越大,模型效果越好) = 1-RSS/TSS
R^2
回归平方和:
回归平方和

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值