线性回归知识点

目录

线性回归的目标函数

梯度下降求解目标函数


线性回归的目标函数

  • 在将训练样本的 x 逐个带入后,得出的预测值 y’ = a + bx 与真实年薪 y 整体的差异最小。
  • 一个样本的 y 和 y’ 的差异用 (y′−y)2来表示。整体差距呢叫做 Cost Function

在(a,b) 中,x(i)和 y(i)是常量参数(也就是 m 个样本各自的 x 和 y 值),而 a 和 b 成了自变量,J(a,b) 是因变量。能够让因变量 J(a, b) 取值最小的自变量 a 和 b,就是最优的 a 和 b。

梯度下降求解目标函数

使用梯度下降法求a,b,让a和b不断沿自身斜率和给定步长超参数α运动,当a和b的运动小于某个阀值时(即是此时的目标函数导数接近0,此处即为最值点)退出运算。这时的a和b可以是上式取得最小值

因为X^{_{2}} ' = \frac{1}{2}X,且(a+b)' = a' + b',所以

将样本x,y逐个带入上式,即

sumA = 0  
sumB = 0
for i = 1 to m:

    sumA=sumA+(a+bx(i)−y(i))
    sumB=sumB+x(i)(a+bx(i)−y(i)) 

Der_a  =  \frac{\partial J\left ( a,b \right )}{\partial a}  = \frac{sumA}{m}

Der_b  =  \frac{\partial J\left ( a,b \right )}{\partial b}  = \frac{sumB}{m}

设超参数步长为α,迭代阈值为β


def Gradient_descent():
    a = 0
    b = 0
    while:

        if α*Der_a < β or α*Der_b < β :   #梯度下降小于阈值  
            break
        else:
            a = a-α*Der_a   #梯度下降
            b = b-α*Der_b
    return a,b

此时的a,b即是使目标函数Cost Function最小的值。此时的拟合函数为:

Y = aX + b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

海人001

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

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

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

打赏作者

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

抵扣说明:

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

余额充值