线性回归知识点

线性回归

1. 引入

1.1 银行贷款
  • 在银行贷款的时候,银行可以根据我们的工资、年龄和家庭关系等特征进行贷款,那么我们能贷款多少金额呢?
    • 数据:工资和年龄 (以2个特征为例)
    • 目标:预测可以贷款多少钱
    • 工资和年龄会影响贷款的金额比重会是多少

2 线性回归

2.1 通俗解释
  • 在线性回归中,工资和年龄就是我们的特征,即X1 和 X2,Y为预测的金额

  • 找出一条直线尽可能的涵盖多的样本

2.2 数学解释 (theta = Q)
  • 假设Q1是年龄的参数,Q2是工资的参数

  • HQ(x) = Q0 * X0 + Q1 * X1 + Q2 * X2 (其中,X0 = 1Q0 * X0 代表直线的偏置)

  • 整合
    h θ ( x ) = θ 0 x 0 + θ 1 x 1 + θ 2 x 2 = ∑ i = 0 n θ i x i = θ T x h_\theta(x) = \theta_0x_0 + \theta_1x_1 + \theta_2x_2 = \sum_{i=0}^{n}{\theta_ix_i} =\theta^Tx hθ(x)=θ0x0+θ1x1+θ2x2=i=0nθixi=θTx

2.3 误差:
  • 真实值和预测值肯定是要存在误差的
    y i = θ T x i + ε i y^i = \theta^Tx^i + \varepsilon^i yi=θTxi+εi

  • 误差 是独立并且具有相同的分布,并且服从均值为0方差为 Q^2 的高斯分布

高斯分布

2.4 损失函数
  • 由于误差服从高斯分布,则将误差带入到高斯公式化简得:
  • 其中sigma为宽度 > 0

m l o g 1 2 π σ − 1 σ 2 1 2 ∑ i = 1 m ( y i − θ T x i ) 2 mlog\frac{1}{\sqrt{2\pi\sigma}} - \frac{1}{\sigma^2}\frac{1}{2}\sum_{i=1}^{m}{(y^i - \theta^Tx^i)^2} mlog2πσ 1σ2121i=1m(yiθTxi)2

  • 由于预测值要越接近真实值,即L(Q)最大,即损失函数最小
    • 最小二乘法

J ( θ ) = 1 2 ∑ i = 1 m ( y i − θ T x i ) 2 J(\theta) = \frac{1}{2}\sum_{i=1}^{m}{(y^i - \theta^Tx^i)^2} J(θ)=21i=1m(yiθTxi)2

2.5 如何求出theta
  • 损失函数最小,也就是求出极小值下的theta值
  • 其中 n = 1 ~ m 求和也就是矩阵的乘积

J ( θ ) = 1 2 ∑ i = 1 m ( y i − θ T x i ) 2 = 1 2 ( X θ − y ) T ( X θ − y ) J(\theta) = \frac{1}{2}\sum_{i=1}^{m}{(y^i - \theta^Tx^i)^2} = \frac{1}{2}(X\theta - y)^T(X\theta- y) J(θ)=21i=1m(yiθTxi)2=21(y)T(y)

  • theta求偏导
    ∇ θ J ( θ ) = X T X θ − X T y \nabla_\theta J(\theta) = X^TX\theta - X^Ty θJ(θ)=XTXTy

  • 令偏导等于0得,theta的值为
    θ = ( X T X ) − 1 X T y \theta = (X^TX)^{-1}X^Ty θ=(XTX)1XTy

3 评估方法

  • 评估项 R^2 ,认为取值越接近 1 模型拟合的越好
    R 2 : 1 − ∑ i = 1 m ( y i ^ − y i ) 2 ∑ i = 1 m ( y i − y ‾ ) 2 R^2 : 1 - \frac{\sum_{i=1}^{m}{(\hat{y_i }- y_i)^2}}{\sum_{i=1}^{m}{(y_i - \overline{y})^2}} R2:1i=1m(yiy)2i=1m(yi^yi)2

  • (残差平方和) / (类似方差项)

4 梯度下降

4.1 通俗解释
  • 假如你在山顶,如何一步一步的去走到山底,也就是目标函数达到极值点的theta

  • 目标函数:
    J ( θ 0 , θ 1 ) = 1 2 m ∑ i = 1 m ( h θ ( x i ) − y i ) J(\theta_0,\theta_1) = \frac{1}{2m}\sum_{i=1}^{m}{(h_\theta(x^i) - y^i)} J(θ0,θ1)=2m1i=1m(hθ(xi)yi)

  • 下山步骤:

    1. 找到当前最合适的方向
    2. 走那么一小步,走快了该”跌倒 ”了
    3. 按照方向与步伐去更新我们的参数
4.2 梯度下降种类
  • 梯度下降,目标函数:J(theta)
    J ( θ ) = 1 2 m ∑ i = 1 m ( y i − θ T x i ) 2 J(\theta) = \frac{1}{2m}\sum_{i=1}^{m}{(y^i - \theta^Tx^i)^2} J(θ)=2m1i=1m(yiθTxi)2

  • 批量梯度下降

    • 容易得到最优解,但是由于每次考虑所有样本,速度很慢
  • 随机梯度下降

    • 每次找一个样本,迭代速度快,但不一定每次都朝着收敛的方向
  • 小批量梯度下降法

    • 每次更新选择一小部分数据来算

    θ j : = θ j − α 1 10 ∑ k = i i + 9 ( h θ ( x k ) − y k ) x j k \theta_j := \theta_j - \alpha\frac{1}{10}\sum_{k = i}^{i+9}{(h_\theta(x^k) - y^k)}x_j^k θj:=θjα101k=ii+9(hθ(xk)yk)xjk

    • 其中 alpha 一般小一些
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
线性回归是一种监督学习算法,它用于预测连续型目标变量与一个或多个自变量之间的线性关系。在Python中,可以使用scikit-learn库中的LinearRegression类来实现线性回归模型。下面是一些线性回归知识点: 1. 简单线性回归:当只有一个自变量时,称为简单线性回归。它的数学模型可以表示为Y = β₀ + β₁X + ε,其中Y是目标变量,X是自变量,β₀和β₁是模型的参数,ε是误差项。 2. 多元线性回归:当有多个自变量时,称为多元线性回归。它的数学模型可以表示为Y = β₀ + β₁X₁ + β₂X₂ + ... + βₚXₚ + ε,其中Y是目标变量,X₁、X₂、...、Xₚ是自变量,β₀、β₁、β₂、...、βₚ是模型的参数,ε是误差项。 3. 最小二乘法:线性回归模型的参数估计通常使用最小二乘法来进行。最小二乘法的目标是使得模型预测值与实际观测值之间的残差平方和最小化。 4. 均方误差(MSE):均方误差是线性回归模型中常用的性能度量之一。它衡量了模型预测值与实际观测值之间的平均差异的平方。MSE越小,表示模型的拟合效果越好。 5. R²(决定系数):R²是另一个常用的性能度量,它表示模型解释因变量变化的比例。R²的取值范围在0到1之间,越接近1表示模型的解释能力越强。 6. 特征选择:在多元线性回归中,可以使用特征选择方法来选择对目标变量具有最强影响的自变量。 7. 正则化:为了避免过拟合问题,可以使用正则化技术(如岭回归、Lasso回归)对线性回归模型进行约束。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值