Pytorch教程[持续更新...]

PyTorch深度学习快速入门

前言
  • 这是一个Pytorch的学习笔记,同时加入了一点个人理解。
  • 写这个博客的初衷是为了让我更好的在课上摸鱼,复习
  • 视频来自我是土堆 强烈推荐

Dataset类代码实战

这一步我们的主要数据是加载我们的数据集
步骤如下

  • 重写Dataset类中的initgetitem
  • init的目的:找到你的数据集所在的位置
  • getitem的目的:通过init中的路径,得到我们的数据,并返回
from torch.utils.data import Dataset
from PIL import Image
import os

# 使用MyData继承Dataset,然后对init和getitem进行重写
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)
        img = Image.open(img_item_path)
        label = self.label_dir
        return img,label

    def __len__(self):
        return len(self.img_path)

root_dir = "dataset/train" # 这里可以是相对路径,也可以是绝对路径
ants_label_dir = "ants" # 这就是一个标签
bees_label_dir = "bees" # 这是另一个标签
ants_dataset = MyData(root_dir,ants_label_dir)
bees_dataset = MyData(root_dir,bees_label_dir)
train_dataset = ants_dataset + bees_dataset # 把两种标签的数据合并起来

TensorBoard的使用

tensorboard是一种可视化工具

tensorboard的安装,在pycharm的terminal或者anaconda prompt下输入

# 这里使用了清华镜像安装
pip install tensorboard -i https://pypi.tuna.tsinghua.edu.cn/simple

使用流程如下:

from torch.utils.tensorboard import SummaryWriter

writer = SummaryWriter("logs")

# writer.add_image()
for i in range(100):
    writer.add_scalar("y=2x",2 * i + 1,i)
writer.close()

关于重复写入数据的问题

我们可以将自己目录下的文件都给删除,然后重新运行,这样就不会再一张图中重复写入数据

posted @ 2022-09-26 23:19  Sheldon2  阅读(33)  评论(0编辑  收藏  举报