Pytorch基础复习
项目推进中期,重新到头来学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
定义损失函数 --> 计算损失
将梯度反向传播给网络参数
更新权重
Pytorch基础复习的更多相关文章
- 《CSS权威指南》基础复习+查漏补缺
前几天被朋友问到几个CSS问题,讲道理么,接触CSS是从大一开始的,也算有3年半了,总是觉得自己对css算是熟悉的了.然而还是被几个问题弄的"一脸懵逼"... 然后又是刚入职新公司 ...
- Java基础复习笔记系列 九 网络编程
Java基础复习笔记系列之 网络编程 学习资料参考: 1.http://www.icoolxue.com/ 2. 1.网络编程的基础概念. TCP/IP协议:Socket编程:IP地址. 中国和美国之 ...
- Java基础复习笔记系列 八 多线程编程
Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...
- Java基础复习笔记系列 七 IO操作
Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...
- Java基础复习笔记系列 五 常用类
Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String ...
- Java基础复习笔记系列 四 数组
Java基础复习笔记系列之 数组 1.数组初步介绍? Java中的数组是引用类型,不可以直接分配在栈上.不同于C(在Java中,除了基础数据类型外,所有的类型都是引用类型.) Java中的数组在申明时 ...
- C语言基础复习总结
C语言基础复习总结 大一学的C++,不过后来一直没用,大多还给老师了,最近看传智李明杰老师的ios课程的C语言入门部分,用了一周,每晚上看大概两小时左右,效果真是顶一学期的课,也许是因为有开发经验吧, ...
- JS基础 复习: Javascript的书写位置
爱创课堂JS基础 复习: Javascript的书写位置复习 js书写位置:body标签的最底部.实际工作中使用书写在head标签内一对script标签里.alert()弹出框.console.log ...
- MySQL学习笔记_8_SQL语言基础复习
SQL语言基础复习 一.概述 SQL语句注释方式 1)以"#"开头直到行尾的所有内容都是注释 2)以"--"(--后还有一个空格)开头直到行尾的所有内容都是注释 ...
- Java基础复习笔记基本排序算法
Java基础复习笔记基本排序算法 1. 排序 排序是一个历来都是很多算法家热衷的领域,到现在还有很多数学家兼计算机专家还在研究.而排序是计算机程序开发中常用的一种操作.为何需要排序呢.我们在所有的系统 ...
随机推荐
- fabric2.2学习笔记1
fabric2.2学习笔记1 20201303张奕博 2023年1月9日 hyperledger fabric 结构分析 每个Server作用: AdminServer:控制该节点的命运,可以删除该节 ...
- Word03 政府工作年度报告-office真题
1.课程的讲解之前,先来对题目进行分析,首先需要在考生文件夹下,将Wrod素材.docx文件另存为Word.docx,后续操作均基于此文件,否则不得分. 2.这一步非常的简单,打开下载素材文件,在[文 ...
- 手写reduce()
function reduce(arr, callBack ,initVal){ if(!Array.isArray(arr) || !arr.length || typeof callBack != ...
- WDA学习(19):UI Element:Table使用
1.12 UI Element:Table使用 1.Table Filter and Sort 1.1创建Context节点; NODE_SFLIGHT, FILTER_COL:CARRID,CONN ...
- css - object-fit ie兼容
css - object-fit ie兼容 参考资料 github 解决object-fit兼容IE浏览器实现图片自适应 demo <!-- * @createDate: 2022-08-30 ...
- react框架-this指向问题
主要使用红框中的内容 import React, { Component } from 'react' export default class app extends Component { ...
- ESP8266-01S 烧录AT固件
首先就是下载官网的下载软件和AT固件 这是下载好了的 然后就是硬件电路了 我是想把ESP8266用于Ardiuno板子的,然后网上有说买的USBTOTTL的3v3供电不够,所以我就用的Ardiuno板 ...
- 新centos6 静态ip 放行端口 hosts主机名 jdk环境变量
0 jdk 环境变量 vi /etc/profile source /etc/profile 刷新环境变量 在尾部增加如下代码: #JDK全局环境变量配置export JAVA_HOME=/usr/ ...
- luogu 4886
点分治好题 统计距离正常点分治统计即可,我们只需考虑何时达到最优 有两种情况: 第一:代价最大的询问两个端点在不同的两个子树中 因为这种情况下,无论根向那个子树移动都会等价地增加到达另一个端点的代价, ...
- phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613)(Kali)
phpMyAdmin是一套开源的.基于Web的MySQL数据库管理工具.其index.php中存在一处文件包含逻辑,通过二次编码即可绕过检查,造成远程文件包含漏洞. 通过vulhub靶场进行复现 ...