【PyTorch笔记 05】使用DataLoader类进行数据加载的策略

文章目录

一、声明

  • 本帖持续更新中

二、情形1:同时加载不等长的两个数据

在某些情况下,训练数据的循环中需要同时加载两个数据集,然而加载两个数据集有可能不等长。这就有可能导致训练时出现逻辑问题。例如,小样本学习中需要加载支撑集和查询集,一个示例程序如下所示:

python 复制代码
# 用DataLoader类管理数据
support_loader   = DataLoader(support_dataset , batch_size=args.batch_size, shuffle=True)
query_loader  = DataLoader(query_dataset, batch_size=args.batch_size, shuffle=True)

# 训练循环
for (support_data, support_label, support_indices), (query_data, query_label, query_indices) in zip(support_loader, query_loader):        
        support_data, query_data = support_data.to(device).float(), query_data.to(device).float()
        query_label = query_label.to(device).long()

上述代码中,DataLoader类管理支撑集和查询集,当遇到不等长的情况时,循环会在短的数据处理结束时终止。

相关推荐
恒拓高科WorkPlus14 小时前
从“可选项”到“必选项”——私有化部署即时通讯如何重塑企业协作新底座
大数据·网络·人工智能
Hello_Damon_Nikola14 小时前
扰流筋从原理到应用
人工智能·单片机·嵌入式硬件
某林21214 小时前
从“仿真能跑”到“真机能走”:一套轮腿机械狗强化学习系统的工程化实践
人工智能·stm32·嵌入式硬件·架构·机器人·机械狗
爱知菜14 小时前
Transformer vs Diffusion:为什么扩散模型更擅长捕捉细节?
人工智能·深度学习·transformer·扩散模型
xp_xht12314 小时前
Day1 概率机器学习 信息论
人工智能·机器学习·信息论
疯狂打码的少年14 小时前
【数据结构】栈的应用:表达式求值(后缀表达式)
java·数据结构·笔记·算法
chuan.bai14 小时前
Java RAG 实战(第 3 篇):从交互式聊天到多轮上下文
java·人工智能·macos·ai
雪隐14 小时前
个人电脑玩AI-16让5060 Ti给你打工——MiniMax H3 提速实录:从"泡杯茶等视频"到"视频等你",一张 5060 Ti 的自我修养
前端·人工智能·后端
深兰科技14 小时前
深兰科技亮相天津医疗器械创新生态大会,DeepAgent智能体赋能医疗医美并签约天津OPC项目
人工智能·科技·r语言·symfony·视觉大模型·深兰科技·deepagent智能体
cxr82814 小时前
从“对象本体”到“关系本体”
人工智能·架构