《PyTorch深度学习实践》第二讲 线性模型 课后练习

《PyTorch深度学习实践》第二讲 线性模型 课后练习

问题描述

代码实现

python 复制代码
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

# 假设函数为 y = 2x + 1
x_data = [1.0, 2.0, 3.0]
y_data = [3.0, 5.0, 7.0]

# 定义模型
def forward(x):
    return x * w + b

# 定义损失函数
def loss(x, y):
    y_pred = forward(x)
    return (y_pred - y) * (y_pred - y)

# mes 平方误差
mes_list = []
# w, b权重
W = np.arange(0.0, 3.1, 0.1)
B = np.arange(0.0, 3.1, 0.1)
# 画3D曲面图时,传入的参数必须是数据值或二维矩阵
# 利用meshgrid函数讲w,b两列数据转化为二维矩阵
[w, b] = np.meshgrid(W, B)

l_sum = 0
for x_val, y_val in zip(x_data, y_data):
    y_pred_val = forward(x_val) # 预测值
    print(y_pred_val)
    loss_val = loss(x_val, y_val) # 计算损失
    l_sum += loss_val

# 绘3D图展示
fig = plt.figure()
ax =fig.add_axes(Axes3D(fig))
ax.plot_surface(w, b, l_sum/3)
plt.show()

实现效果

相关推荐
小杨4047 分钟前
python入门系列二十(peewee)
人工智能·python·pycharm
IT古董9 分钟前
【漫话机器学习系列】225.张量(Tensors)
人工智能
深圳市快瞳科技有限公司10 分钟前
当OCR遇上“幻觉”:如何让AI更靠谱地“看懂”文字?
人工智能·ai·ocr
每天都要写算法(努力版)11 分钟前
【神经网络与深度学习】训练集与验证集的功能解析与差异探究
人工智能·深度学习·神经网络
vocal30 分钟前
谷歌第七版Prompt Engineering—第一部分
人工智能
MonkeyKing_sunyuhua31 分钟前
5.6 Microsoft Semantic Kernel:专注于将LLM集成到现有应用中的框架
人工智能·microsoft·agent
arbboter39 分钟前
【AI插件开发】Notepad++ AI插件开发1.0发布和使用说明
人工智能·大模型·notepad++·ai助手·ai插件·aicoder·notepad++插件开发
BB_CC_DD39 分钟前
四. 以Annoy算法建树的方式聚类清洗图像数据集,一次建树,无限次聚类搜索,提升聚类搜索效率。(附完整代码)
深度学习·算法·聚类
IT_Octopus1 小时前
AI工程pytorch小白TorchServe部署模型服务
人工智能·pytorch·python