深度学习学习日记4.13 灰度图 自定义dataset类 dataloader

1.图像分割数据的标签(灰度图的情况)

该图像是灰度图,且只有两种像素值

该中标签中图像的像素值有五种

2.在处理灰度图像时,通常会使用 numpy.squeeze() 函数去除可能存在的单通道。虽然灰度图像只有一个通道,但有时候图像数组的形状可能是 (height, width, 1),其中的额外的单通道可能会引起一些问题或不便。

3.自定义的Dataset类中,通常包含三个核心函数:

①__init__() 初始化函数,用于设置数据集的基本属性和参数。通常在这个函数中进行数据集的加载、预处理或其他初始化工作。

②__getitem__() 用于获取数据集中单个样本的函数。这个函数按照索引获取数据集中的样本,并根据需要对样本进行预处理、转换等操作,并返回处理后得样本。这个函数允许通过索引访问数据集中得每个元素,使得数据集可以迭代访问

③__len__()返回数据集得长度
目的 为了将数据处理得更好,并将其准备好以供神经网络进行训练。
通过自定义 Dataset 类,可以实现数据的加载、预处理、转换等操作,以确保数据在输入到神经网络之前处于适当的格式和状态。
自定义 Dataset 类完成了数据处理和准备工作,接着使用 PyTorch 或其他深度学习框架提供的 DataLoader 将数据传递给神经网络模型进行训练。DataLoader 负责对数据进行批处理、随机化和并行化处理,以提高训练效率,并确保模型能够高效地从数据中学习。

4.dataloader

dataset:只有dataset没有默认值,只需要将之前自定义的dataset实例化,再放到dataloader中即可

batch_size:每次抓牌抓几张

shuffle:打乱与否,值为True的话两次打牌时牌的顺序是不一样。默认为False,但一般用True

num_workers:加载数据时采用单个进程还是多个进程,多进程的话速度相对较快,默认为0(主进程加载)。Windows系统下该值>0会有问题(报错提示:BrokenPipeError)

drop_last:100张牌每次取3张,最后会余下1张,这时剩下的这张牌是舍去还是不舍去。值为True代表舍去这张牌、不取出,False代表要取出该张牌
原文链接:https://blog.csdn.net/m0_57787115/article/details/129721708

相关推荐
stereohomology5 分钟前
2026年人工智能技术趋势浅度解析
人工智能
2601_9583205713 分钟前
【小白易懂版】OpenClaw 飞书机器人绑定配置详细教程(含安装包)
人工智能·机器人·飞书·open claw·小龙虾·open claw安装
Chockong15 分钟前
05_yolox_s的后处理截断并导出onnx
深度学习·神经网络
QYQ_112717 分钟前
嵌入式学习——字符设备驱动的注册和调用流程
学习
AI创界者18 分钟前
《2026 视觉革命:深度测评 GPT-Image-2,基于 DMXAPI 实现 4K 超分与批量生图实战》
人工智能
云上码厂20 分钟前
2023年之前物理信息神经网络PINN papers
人工智能·深度学习·神经网络
aini_lovee24 分钟前
多目标粒子群优化(MOPSO)双适应度函数MATLAB实现
人工智能·算法·matlab
Cosolar25 分钟前
提示词工程面试题系列 - Zero-Shot Prompting 和 Few-Shot Prompting 的核心区别是什么?
人工智能·设计模式·架构
灵机一物29 分钟前
灵机一物AI原生电商小程序、PC端(已上线)-【无标Anthropic 研究深度解析:AI 对就业市场的实际冲击与高危职业排行题】
人工智能·ai·程序员·职业发展·anthropic·就业市场
电子科技圈31 分钟前
芯科科技在蓝牙亚洲大会展示汽车与边缘AI前沿蓝牙创新技术, 解锁车用、家居、健康及工商业等应用场景
人工智能·科技·嵌入式硬件·mcu·物联网·网络安全·汽车