【PyTorch深度学习】 第一讲:线性回归

本文探讨了线性模型 y = w*x 中权重w的选择过程,通过计算预测值与真实值的误差平方(loss = (y_pred - y)^2)来寻找最佳权重。通过代码实例展示了如何使用梯度下降法训练模型并可视化损失与权重的关系。

1、数学含义

y = w * x
loss = (y_pred - y)^2

2.含义解释

通过简单的线性函数来对未知数x及y建立映射
在每次取不同的w时计算预测y_pred和真实值y的差值,以观看那个w最佳

3.代码实现

import numpy as np
from matplotlib import pyplot as plt
import math

# 数据
x_data = [1.0,2.0,3.0]
y_data = [2.0,4.0,6.0]

#线性传播,计算y = w * x
def forword(x):
    return x * w

#计算损失loss = (y_pred - y)^2
def loss(x,y):
    y_pred = forword(x)
    return math.pow(y_pred - y,2)


#初始化w_list和mse_list
w_list = []
mse_list = []


#训练模型
for w in np.arange(-4.0,8.0,0.1):
    list_sum = 0
    for x,y in zip(x_data,y_data):
       loss_val =  loss(x,y)
       list_sum =list_sum + loss_val
       mse_val = list_sum/x.__sizeof__()
    w_list.append(w)
    mse_list.append(mse_val)

#数据可视化
plt.plot(w_list,mse_list)
plt.ylabel('loss')
plt.xlabel('w')
plt.show()

4.结果展示

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值