pytorch学习1b站刘二大人《pytorch深度学习实践》——线性模型(linearmodel)(代码片段)

小龙呀 小龙呀     2023-01-04     506

关键词:

b站课程链接:线性模型

1.基本思想:
给出了一组一维数据,定义了一个简单的线性拟合函数,通过穷举法来列出一些权重(拟合函数的系数),并计算这些权重对应的拟合损失函数(使用均方误差(MSE))。

Linear Model: y ^ = w ∗ x \\haty=w*x y^=wx (为了简化模型,未加偏置项b)
Training Loss (Error): l o s s = ( y ^ − y ) 2 = ( w ∗ x − y ) 2 loss=(\\haty-y)^2=(w*x-y)^2 loss=(y^y)2=(wxy)2
Mean Square Error: c o s t = 1 N ∑ n = 1 N ( y n ^ − y n ) 2 cost=\\frac1N\\displaystyle\\sum_n=1^N(\\haty_n-y_n)^2 cost=N1n=1N(yn^yn)2

2.课程代码:

import numpy as np
import matplotlib.pyplot as plt

x_data = [1.0, 2.0, 3.0]
y_data = [2.0, 4.0, 6.0]

# 定义拟合函数
def forward(x):
    return x * w

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

# 存放权重(系数)和相应损失
w_list = []
mse_list = []

# 权重使用穷举法
for w in np.arange(0.0, 4.1, 0.1):
    print("w=:.2f".format(w))
    l_sum = 0
    for x_val, y_val in zip(x_data, y_data):
        y_pred_val = forward(x_val)
        loss_val = loss(x_val, y_val)
        l_sum += loss_val
        print('\\t',":.2f :.2f :.2f :.2f".format(x_val, y_val, y_pred_val, loss_val))
    print('MSE=:.2f'.format(l_sum / 3))
    # 存储权重(系数)和相应损失
    w_list.append(w)
    mse_list.append(l_sum / 3)

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

3.运行结果(部分截图):

pytorch学习1b站刘二大人《pytorch深度学习实践》——线性模型(linearmodel)(代码片段)

b站课程链接:线性模型1.基本思想:给出了一组一维数据,定义了一个简单的线性拟合函数,通过穷举法来列出一些权重(拟合函数的系数),并计算这些权重对应的拟合损失函数(使用均方误差&#... 查看详情

pytorch深度学习——逻辑斯蒂回归(分类问题)(b站刘二大人p6学习笔记)(代码片段)

目录1什么是分类问题?2为什么要使用逻辑斯蒂回归?3SigmidFounction(逻辑斯蒂回归函数)3.1模型的改变3.2损失函数的改变(BCELoss) 3.3代码的改变1什么是分类问题?    分类问题,与之前学习的... 查看详情

pytorch学习2b站刘二大人《pytorch深度学习实践》——梯度下降算法(gradientdescent)(代码片段)

b站课程链接:梯度下降算法一、梯度下降算法1.简介梯度下降算法是一种求解函数最优值的迭代算法,给定一个初值,通过负梯度方向进行更新查找。2.程序实现及结果importmatplotlib.pyplotasplt#训练集x_data=[1.0,2.0,3.0]y_... 查看详情

刘二第八讲,加载数据集(代码片段)

具体内容参考Pytorch深度学习——加载数据集(b站刘二大人)P8讲加载数据集_努力学习的朱朱的博客-CSDN博客_diabetes.csv.gz【Pytorch深度学习实践】B站up刘二大人之Dataset&DataLoader-代码理解与实现(7/9)_nemo_0410的博客-CSDN博客i... 查看详情

pytorch反向传播实现——up主:刘二大人《pytorch深度学习实践》(代码片段)

教程:https://www.bilibili.com/video/BV1Y7411d7Ys?p=2&vd_source=715b347a0d6cb8aa3822e5a102f366fe数据集:xdata=[1.0,2.0,3.0]ydata=[2.0,4.0,6.0]x_data=[1.0,2.0,3.0]\\\\y_data=[2.0,4.0,6.0]xdata​=[1.0,2.0,3.0]ydata​=[2.0,4.0,6.0]参数初始值&#... 查看详情

pytorch案例代码

来自刘二大人课程最简单的线性回归最简单的逻辑斯蒂回归(二分类)improttorch.nn.functionalasF 查看详情

pytorch深度学习:用pytorch实现线性回归(代码片段)

课程来源:Bilibili刘二大人《用PyTorch实现线性回归》代码大致思路:铺垫:创建数据集、构建计算模型定义损失函数和优化方式训练:通过forward函数进行前馈loss记录损失值清除上一次的梯度值反向传播并记录梯... 查看详情

《pytorch深度学习实践》介绍

...bsp;     本文为bilibili刘二大人所讲的《PyTorch深度学习实践》学习笔记介绍。       笔记融入了自己对课程和代码的理解,希望对大家有所帮助,由于本人知识尚浅,如果笔记中有任何... 查看详情

Pytorch 张量中的分离、克隆和深拷贝有啥区别?

】Pytorch张量中的分离、克隆和深拷贝有啥区别?【英文标题】:Whatisthedifferencebetweendetach,cloneanddeepcopyinPytorchtensorsindetail?Pytorch张量中的分离、克隆和深拷贝有什么区别?【发布时间】:2020-10-0718:35:04【问题描述】:在使用Pytorch... 查看详情

pytorch以及相关组件的安装(代码片段)

记录一下安装过程~~1.pytorch的安装近几年由于深度学习的普及,pytorch的安装已经十分方便了。进入官网链接点击getstarted第一项是pytorch的版本,选择stable11.1.0;第二项选择自己的操作系统;第三项选择自... 查看详情

pytorchpytorch基础第0章(代码片段)

本文参加新星计划人工智能(Pytorch)赛道:https://bbs.csdn.net/topics/613989052这是目录PyTorch的简介PyTorch构建深度学习模型的步骤搭建pytorch使用环境PyTorch的简介PyTorch是一个开源的机器学习框架,由Facebook的人工智能研究院(F... 查看详情

pytorch中统计模块参数的学习笔记(代码片段)

关于模型的参数统计,请参考博文《PyTorch几种情况下的参数数量统计·爽朗》;这里我们参考了上面的博文,对不同的统计方式进行了测试,其结果是torchinfo的结果是最方便的[test_torch_parameters.ipynb];对于统计... 查看详情

深度学习---从入门到放弃pytorch基础(代码片段)

深度学习—从入门到放弃(一)pytorchTensor类似于numpy的array,pandas的dataframe;在pytorch里的数据结构是tensor,即张量tensor简单操作1.Flattenandreshape###Originalz:tensor([[0,1],[2,3],[4,5],[6,7],[8,9],[10,11]])Flatte 查看详情

基于pytorch实现简单的分类模型训练

基本功能如下:支持分布式训练;支持余弦退火学习率与warmup调整策略;支持断点续训;支持训练日志保存;支持标签平滑策略;支持层冻结;支持torchvision.models模型的训练;支持tensorboard可视化学... 查看详情

pytorch中对bias参数单独设置学习率

关于按参数设置学习率,请参考《PyTorchDocumentation|Per-parameteroptions》关于单独设置学习率,请参考《PyTorchTricks集锦|9.对不同层使用不同学习率》其主要思路是:在优化器中对某些参数指定使用的特定学习率,来替... 查看详情

pytorch中对bias参数单独设置学习率

关于按参数设置学习率,请参考《PyTorchDocumentation|Per-parameteroptions》关于单独设置学习率,请参考《PyTorchTricks集锦|9.对不同层使用不同学习率》其主要思路是:在优化器中对某些参数指定使用的特定学习率,来替... 查看详情

对比学习:《深度学习之pytorch》《pytorch深度学习实战》+代码

PyTorch是一个基于Python的深度学习平台,该平台简单易用上手快,从计算机视觉、自然语言处理再到强化学习,PyTorch的功能强大,支持PyTorch的工具包有用于自然语言处理的AllenNLP,用于概率图模型的Pyro,扩展了PyTorch的功能。通... 查看详情

pytorch案例代码-1

学习于刘二大人课程最简单的线性回归这里MSELoss是求均方误差的,其用来反应估计量与被估计量之间差异程度。定义优化器中传入的第一个参数model.parameters()是为了告诉优化器哪些tensor需要去梯度下降来优化的,这个para... 查看详情