机器学习--线性回归02

学习目标:

机器学习----线性回归

学习内容:

1、 线性回归 2、梯度下降法

学习记录:

  • 梯度下降法绘制线性回归

# 梯度下降实现线性回归
#y=w0+w1x
import numpy as np
import matplotlib.pyplot as mp

train_x = np.array([0.5, 0.6, 0.8, 1.1, 1.4])
train_y = np.array([5.0, 5.5, 6.0, 6.8, 7.0])
w0, w1 = 1, 1#初始值
times = 1000#迭代次数
lrate=0.01#步长
for i in range(1, times + 1):
    # 求损失函数关于w0,w1的偏导数
    d0=(w0+w1*train_x-train_y).sum()#w0偏导
    d1=(train_x*(w0+w1*train_x-train_y)).sum()#w1偏导
    #根据梯度下降公式,更新w0和w1
    w0=w0-lrate*d0
    w1=w1-lrate*d1
print(w0)
print(w1)
#绘制回归线
linex=np.linspace(train_x.min(),train_x.max(),100)
liney=w1*linex+w0
#画图
mp.figure('linear regression',facecolor='lightgray')
mp.title('linear regression',fontsize=18)
mp.grid(linestyle=':')
mp.scatter(train_x,train_y,s=80,marker='o',
           color='dodgerblue',label='Samples')
mp.plot(linex,liney,color='orangered',
        linewidth=2,label='regression line')
mp.legend()
mp.show()

  • 调整参数times和lrate来看梯度下降的过程

# 梯度下降实现线性回归
# y=w0+w1x
import numpy as np
import matplotlib.pyplot as mp

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值