【深度学习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

相关推荐
敬往事一杯酒哈3 小时前
海康 AGV 导航读码器学习
学习
qq_284274055 小时前
机械原理笔记:平面机构自由度计算(复合铰链、局部自由度、虚约束)与四杆机构入门(含考点)
笔记·学习·平面·自动化·制造
全栈练习生5 小时前
AI Agent 沙箱
python·ai
qq_284274056 小时前
数控铣床与加工中心笔记:铣刀与刀柄系统、G54试切对刀、镜像加工指令、孔加工工艺(钻扩铰镗)与固定循环G73/G83/G81/G76/G87/G84
笔记·学习·自动化·制造
SEO_juper6 小时前
用 Python 写一个 GEO 可见性检查脚本:你的网站现在能被 AI 引用吗
开发语言·人工智能·爬虫·python·seo·外贸独立站
数智工坊6 小时前
视觉SLAM第12讲|地图构建:单目稠密重建、RGB-D点云与八叉树地图全解析
人工智能·深度学习·矩阵·机器人
GPU实战笔记6 小时前
云端 GPU 训练的账户余额提醒:它能说明什么,不能说明什么?
深度学习·算法·成本管理·gpu云计算·云端训练
Titan20247 小时前
MySQL访问个人学习笔记
笔记·学习·mysql
用户8356290780517 小时前
使用 Python 对 Excel 工作表进行排序
后端·python
for_ever_love__8 小时前
MySQL 全文索引实战:FULLTEXT、ngram 中文分词与 MATCH AGAINST 到底该怎么用
java·python·mysql·全文检索·分词·索引·ngram