【材料整理】 --Pytorch基础知识1

【材料整理】 --Pytorch基础知识1_第1张图片

文章目录

文章目录

  • 写在前面
  • Pytorch加载数据初认识
  • Tensorboard
  • Transform
  • dataloader的使用

写在前面

本系列内容主要是对小土堆的《Pytorch》课程的笔记整理。
b站地址:https://www.bilibili.com/video/BV1hE411t7RN?spm_id_from=333.337.search-card.all.click

Pytorch加载数据初认识

1、pytorch加载数据主要涉及两个类,dataset、dataloder

假如有一堆数据

Dataset : 就是将需要的数据获取出来,并且进行相应的编号。提供一种方式去获取数据及其label
– 如何获取每一个数据及其label
– 告诉我们总共有多少个数据
Dataloader : 对需要的数据进行一个打包。为后面的网络提供不同的数据形式。

2、torch.utils(torch这个大工具箱里面的常用工具)

3、class MyData(Dataset): // 创建一个MyData类,继承Dataset这个类

def _ _ init_ _(self, root_dir, label_dir):

// 初始化类,根据这个类去创建一个特例实例的时候,就要调用这个函数。为整个class提供一个全局变量,为后面的函数提供一些量。这个方法可以留在后面写。

为什么要用self?一个函数的变量是不能传递给其他函数,self指定了一个类当中的全局变量。

def _ _ getitem _ _(self, idx):

4、root_dir = “dataset/train” 、Label_dir = “ants”
Path = os.path.join(root_dir, label_dir) 将两个路径拼接,主要是函数可以自动转化在linux与windows下面的不同格式

Tensorboard

1、模型训练过程中,loss是如何变化的,可以根据loss的变化来判断训练是否是按我们预想的变化

2、tensorboard – logdir=logs --port 6007

3、opencv读取的数据类型就是numpy型
import cv2
cv_img = cv2.imread(img_path)

Transform

1、图像变换,transform
transform是一个.py文件,里面有很多类,往类里面输入一张图片,就可以得到相应的结果。

常用类:
ToTensor : 将不同类型图片转换成Tensor类型

思路:
【材料整理】 --Pytorch基础知识1_第2张图片
通过tramsforms.ToTensor 去看两个问题
一、transform该如何使用(python)

创建具体的工具
tool = transforms.ToTensor( )
tensor_img = tool(img)

二、为什么我们需要Tensor数据类型
SummaryWriter(“logs”)

2、常见的Transforms
【材料整理】 --Pytorch基础知识1_第3张图片
3、from torchvision import transforms

4、_ _call _ _语法
【材料整理】 --Pytorch基础知识1_第4张图片
即,调用的时候,可以不需用 .函数名 操作

3、总结使用教程:
1、关注输入和输出类型,多关注官方文档;

2、关注方法需要什么参数;

3、不知道返回值的时候,可以使用1、print;

dataloader的使用

常用相关参数:
dataset: 告诉程序数据集在哪些地方,包括第一张数据、第二张数据是什么,数据集包含多少张数据;

batch_size:一次取多少个数据进行训练,比如一摞牌,batch_size=2就是指每次取两张牌;

shuffle: 打乱数据集的顺序

num_works:采用单进程或多进程进行加载数据,在windows下>0 容易出错;

drop_last:比如有一百张牌,每次取3张,最后会剩下一张,那这一张是要舍弃还是不舍弃,true就是舍弃,false就是不舍弃;

你可能感兴趣的:(#,材料整理,python,人工智能,神经网络,深度学习,pytorch)