首页 > 其他分享 >Pytorch基础复习

Pytorch基础复习

时间:2022-11-15 14:34:38浏览次数:62  
标签:复习 nn torch 基础 神经网络 Pytorch import Tensor

项目推进中期,重新到头来学Pytorch。five落泪了。(╬▔皿▔)凸

 笑死,憋不住了,边更边学。

 

整篇博客整体采用总分总形式。首先将介绍内容(加黑部分)之间关系进行概括,后拆解,最后以图总结。

全文参考链接:学习 PyTorch (apachecn.org)

 

分类器 对样本进行分类的方法的统称,包含决策树、逻辑回归、朴素贝叶斯、神经网络等算法。

分类器训练流程如下

 

神经网络   相关具体知识在此不作赘述。以下链接、推荐供大概了解。博客用到的相关知识会再做解释。

大部分神经网络可分类作前馈网络,仅做正向传播,数据仅从输入经处理到输出。但也可以使用反向传播来训练模型,以达到调整模型参数的目的。

神经网络的模型参数含权重、阈值、损失/loss等。

神经网络一般训练过程如下

参考链接:什么是神经网络? - 中国 | IBM

参考书:西瓜书

 

Pytorch   一个python语言的科学计算/深度学习框架,可用于搭建神经网络。

import torch

 

基础知识——Tensor  一个类似numpy的ndarray,且可以在GPU上运行的lib。

在Pytorch框架中,神经网络的输入、输出及参数都用Tensor来描述。

在通过下列引用后,

import torch
import numpy as np

可实现操作包含但不限于

  • (随机)创建Tensor
  • 构建全0矩阵/指定数据的矩阵
  • 重载已有的Tensor
  • 获取Tensor的shape/Data type/存储的device
  • 运算
  • 索引某个值
  • 改变Tensor的shape
  • torch、numpy之间转换

 

加载数据

 

其中可调用子类化后的自己的BasicDataset,实例化,用BasicDataset的方法len()查看数据集大小。

图片来自链接:Pytorch-UNet-master>utils>data_loading.py - 麋鹿咖啡魔法师 - 博客园 (cnblogs.com)

 

 

 

 

 

定义神经网络

torch.nn来构建神经网络。其中nn.Module包含各层,以及返回output的方法forward(input)。

torch.autograd为torch.nn提供支持,以定义模型并对其进行微分。

import torch
import torch.nn as nn
import torch.nn.functional as F

 

定义损失函数 --> 计算损失

 

 

将梯度反向传播给网络参数

 

 

更新权重

标签:复习,nn,torch,基础,神经网络,Pytorch,import,Tensor
From: https://www.cnblogs.com/DariaJin/p/16840861.html

相关文章

  • npm 基础操作
    构建项目npminit 根据提示填写内容,也可以一路回车使用默认值。为了省去上面的操作,我们加上 --yes 标志将自动使用默认值 npminit 填充所有选项:npminit--yesn......
  • MAUI新生1.2-XAML语法基础:标记扩展{}
    标记扩展,使属性值可以引用其他源的值或对象,比如引用资源字典、引用其它控件的属性值、绑定ViewModel类属性值等。标记扩展的语法有大括号{}和尖括号<>两种方式,但x:Array比......
  • AJAX-基础步骤
          发送AJAX get请求:第一步:创建AJAX核心XMLHttpRequest对象varxhr=newXMLHttpRequest 第二步:注册回调函数;onreadystatechange是一个回调函......
  • 深度学习工程基础
    欠拟合与过拟合欠拟合是指模型在训练集、验证集和测试集上均表现不佳的情况过拟合是指模型在训练集上表现很好,到了验证和测试阶段就大不如意了,即模型的泛化能力很差。解......
  • PyTorch常用5个抽样函数
    PyTorch是一个开源的深度学习框架,它提供了一个用于高级特性的Python包。在本文中,我们将介绍PyTorch中的常见抽样函数。抽样是一个统计过程,它从总体中提取一个子集,通过子集......
  • ECharts基础概念
    简要介绍下ECharts中的基础概念:1、echarts实例:一个网页中可以创建多个echarts实例。每个echarts实例中可以创建多个图表和坐标系等。dom节点作为echarts的渲染容器,......
  • Solidity基础 | 03 一篇文章掌握值类型(布尔型和整型)及其运算
    导读区块链这么火,不学一下怎么行?今天这篇文章将带领大家了解区块链的两种基本值类型——布尔类型和整数类型!讲解类型涉及到的运算以及一些注意问题。让我们一起走进本文看一......
  • Solidity基础 | 02 基本合约结构
    导读区块链这么火,不学一下怎么行?今天这篇文章将带领大家了解合约的结构,了解最基本合约,为以后设计功能更加强大的合约打下基础!让我们一起走进本文看一下吧!如果你有什么问题,或......
  • vue源码分析-基础的数据代理检测
    简单回顾一下这个系列的前两节,前两节花了大量的篇幅介绍了Vue的选项合并,选项合并是Vue实例初始化的开始,Vue为开发者提供了丰富的选项配置,而每个选项都严格规定了合并的策......
  • 小程序基础之引用vant组件库
    第一步:终端npminit-y会生成一个pack.json文件。(初始化包管理,记录这个项目用的包。)第二步:npminstall会生成一个package-lock.json文件。(一个版本锁定的功能)上两步有......