【深度学习01】快速上手 PyTorch:环境 + IDE+Dataset

文章目录

配置环境可看
【最详细的 Windows 下 PyTorch 入门深度学习环境安装与配置 CPU GPU 版 | 土堆教程】
视频链接
【PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】】p3-p6

Python学习中的两大法宝函数

理解Package结构及法宝函数的作用

一个package就像一个工具箱

今天我们来介绍pytorch这个package

例如这个工具箱有1、2、3,4 四个分隔区

探索这个工具箱的结构我们要用到两个道具:

dir() :提供打开操作,让你看到里面有什么东西
help():说明书

我们现在用这两个道具来探索这个工具箱的结构

按下回车键,就会弹出许多分隔区

用dir操作

用help操作

Pycharm和Jupyter使用及对比




若没有找到解释器

还是没有的话

找到之前安装conda的地方


如何确定是否是pytorch的环境呢?


创建项目

python文件

如何运行这个程序呢?

我们要为这个设置相应的python解释器

添加脚本位置


或者是直接在这个文件处右键点击run就行了

python控制台

jupyter的创建项目及使用

在开始菜单找到Anaconda Prompt

依次输入 按下回车自动打开

常用的快捷键:Shift+回车

可以运行并创建下一块内容

三种方式对比


三者各有优缺点

Pytorch加载数据初认识

Dataset与Dataloader

Dataset类代码实战

蚂蚁蜜蜂训练数据集

这时候可以用我们之前提到的两个工具来看都有什么功能


读取图片

typescript 复制代码
from torch.utils.data import Dataset
from PIL import Image

class MyData(Dataset):

	def __init(self): //初始化

	def __getitem__(self,idx):

把下好的数据集放在这个文件下面并重命名为dataset

小的调试,我们这里选择控制台

找到图片对应的路径

回车之后可以看到右边显示了图片的很多属性


我想遍历整个文件的图片 怎么办?

把这个路径通过os的方法整理成列表

可以看到右边属性,第一个数组对应的就是第一个图片的路径

例如想访问第一张图片的地址

基本操作就是这些,大家可以摸索一下

typescript 复制代码
from torch.utils.data import Dataset
from PIL import  Image
import os

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

注意:这是一种常见的形式,即文件名就是图片对应的label,另外一种形式是文件夹分为img和label,label里面装着对应图片的txt文档,里面有文字label,如ants

相关推荐
java1234_小锋3 小时前
Transformer 大语言模型(LLM)基石 - Transformer架构介绍
深度学习·语言模型·llm·transformer
yLDeveloper3 小时前
一只菜鸟学深度学习的日记:填充 & 步幅 & 下采样
深度学习·dive into deep learning
不会代码的小猴3 小时前
C++的第九天笔记
开发语言·c++·笔记
测试19984 小时前
功能测试、自动化测试、性能测试的区别
自动化测试·python·功能测试·测试工具·职场和发展·性能测试·安全性测试
为爱停留4 小时前
Spring AI实现RAG(检索增强生成)详解与实践
人工智能·深度学习·spring
Data_agent4 小时前
1688获得1688店铺所有商品API,python请求示例
java·开发语言·python
噜~噜~噜~4 小时前
显式与隐式欧拉法(Explicit Euler and Implicit Euler)的个人理解
深度学习·显式欧拉法·隐式欧拉法·动力学系统
一晌小贪欢4 小时前
【Python办公】-图片批量添加文字水印(附代码)
开发语言·python·图片水印·python水印·python添加水印·图片添加水印
专注于大数据技术栈4 小时前
java学习--枚举(Enum)
java·学习