python机器学习 一元线性回归 梯度下降法的实现 【Python机器学习系列(四)】_一元线性回归python梯度下降法

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

python机器学习 一元线性回归 梯度下降法的实现 【Python机器学习系列(四)】

文章目录

梯度下降法的机器学习的重要思想之一,梯度下降法的目标,是使得代价函数最小。下边对梯度下降算法的实现展开详细介绍。


①首先读取数据集

导包并读取数据,数据自行任意准备,只要有两列,可以分为自变量x和因变量y即可即可。

import numpy as np
import matplotlib.pyplot as plt

data = np.loadtxt("data.csv", delimiter=",")

x_data = data[:, 0]
y_data = data[:, 1]


②初始化相关参数

# 初始化 学习率 即每次梯度下降时的步长 这里设置为0.0001
learning_rate = 0.0001

# 初始化 截距b 与 斜率k
b = 0
k = 0

# 初始化最大迭代的次数 以50次为例
n_iterables = 50


③定义计算代价函数–>MSE

使用均方误差 MSE (Mean Square Error)来作为性能度量标准
假设共有m个样本数据,则均方误差:

M

S

E

=

1

m

i

=

1

m

[

(

k

x

i

b

)

y

i

]

2

MSE=\frac{1}{m}\sum_{i=1}{m}[(kx_i+b)-y_i]2

MSE=m1​∑i=1m​[(kxi​+b)−yi​]2

将该公式定义为代价函数,此外为例后续求导方便,则使结果在原mse的基础上,再乘以1/2。

def compute\_mse(b,  k,  x_data, y_data):
    total_error = 0
    for i in range(len(x_data)):
        total_error += (y_data[i] - (k \* x_data[i] + b)) \*\* 2

    # 为方便求导:乘以1/2
    mse_ = total_error / len(x_data) / 2
    return mse_


④梯度下降

分别对上述的MSE表达式(乘以1/2后)中的k,b求偏导,

1

2

M

S

E

b

=

i

=

1

m

(

k

x

i

b

y

i

)

m

\frac{∂ \frac{1}{2}MSE}{∂b}=\sum_{i=1}^m\frac{(kx_i+b-y_i)}{m}

∂b∂21​MSE​=∑i=1m​m(kxi​+b−yi​)​

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

片转存中…(img-iinbrMkf-1715683628872)]
[外链图片转存中…(img-ioZk26pV-1715683628873)]
[外链图片转存中…(img-VBlJecJT-1715683628873)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值