pytorch速成笔记

本文详细介绍了如何使用Tensorboard可视化数据,运用torchvision处理图像,dataloader高效加载数据,以及构建神经网络的基本步骤,包括卷积、池化、激活函数和优化算法。通过实例演示,展示了如何实现从数据预处理到模型训练的完整流程。
摘要由CSDN通过智能技术生成


讲解都在代码里面…

加载数据集:

import os.path

from torch.utils.data import Dataset

root_dir = 'dataset/train'  # 图片的间接根目录
label_dir = 'ants'  # 图片的直接根目录


# Mydata类需要重写
class Mydata(Dataset):
    def __init__(self,root_dir, label_dir):
        self.root_dir= root_dir
        self.label_dir=label_dir
        self.path=os.path.join(self.root_dir,self.label_dir)#获取图片所在文件夹的路径
        self.img_path=os.listdir(self.path) #用列表储存每一张图片的地址
    def __getitem__(self, idx): #获取照片
        img_name=self.img_path[idx] #读取照片名称信息
        img_item_path=os.path.join(self.root_dir,self.label_dir,img_name)#合成路径,读取图片的具体相对路径和信息
        label=self.label_dir
        return img,label
    def __len__(self):
        return len(self.img_path)#获取列表长度,就是图片的数量
root_dir='dataset/train'
ants_label_dir='ants'
ants_dataset=Mydata(root_dir,ants_label_dir) #创建类
#相同的对象可以相加,构成新的数据集

Tensorboard的使用

1.绘制数据的图像

from torch.utils.tensorboard import  SummaryWriter
writer=SummaryWriter('logs')
#writer.add_image()
for i in range(100): #循环画图,构建图像
  writer.add_scalar('y=x',i,i) # 解析式,y内容,x内容

writer.close()

2.add_image的使用:

import numpy as np
from torch.utils.tensorboard import  SummaryWriter
writer=SummaryWriter('logs')
image_path='图片路径'
img_PIL=Image.open(image_path) #pil形似打开图片,也可以opencv打开
img_array=np.array(img_PIL) #图片的矩阵化
print(type(img_array))
print(img_array.shape) #
writer.add_image('train',img_array,2,dataformats='HWC')
for i in range(100): #循环画图,构建图像
  writer.add_scalar('y=x',i,i) # 解析式,y内容,x内容

writer.close()

Transform使用:

transform的结构:指的是transform.py,就像一个大工具箱:
1.可以把普通的数据转化为 totensor数据类型,可以处理图片信息
transforms的用法:
tensor数据类型:
通过transform.ToTensor去解决俩个问题:
1.transform的使用方法:
2.Tensor数据类型的独特性?:张量形式。
为什么需要tensor的数据类型?

from torchvision import transforms
img=Image.open('图片路径')
writer=SummaryWriter('logs')
tensor1=transforms.ToTensor() #初始化totensor类
tensor_img=tensor1(img) #在类里面图片信息,将会返回tensor类型的图片数据
print(tensor_img) #输出tensor的数据类型,图片的张量表达式
writer.add_image('tensor_img',tensor_img) #添加图片,图片名称,图片内容
writer.close()

常见的transform模板:
输入; PIL Image.open()
输出: tensor ToTensor()

torchvision的使用

import torchvision
from torch.utils.tensorboard import SummaryWriter

dataset_transform=torchvision.transforms.Compose([torchvision.transforms.ToTensor()]) #图片·集体转化为张量形式
train_set=torchvision.datasets.MNIST(root='文件名',train=True,transform=dataset_transform,download=True)
test_set=torchvision.datasets.MNIST(root='',train=False,transform=dataset_transform,do
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值