当前位置: 首页 > 工具软件 > batch-loader > 使用案例 >

【Python报错】train epoch数据读取for i, batch in enumerate(train_loader)失败?卡住?

上官景铄
2023-12-01

已实现:根据路径加载图像和目标,即 train_loder内的数据样式对应 [image , target]

现目标:将数据输入到模型中进一步处理

做法:传统样式,不过多叙述。

for i, batch in tqdm(enumerate(train_loader), desc=f
"Epoch: {epoch + 1}/{epochs}. Loop: Train",
total=len(train_loader)) 
if is_rank_zero(args) else enumerate(train_loader):

 问题:报错,各种报错,因为是复盘整理,改错一个出现另一个,就全贴在这啦!

  • for i, batch in enumerate(train_loader)
  • exception: no description for  for i, batch in enumerate(train_loader):
  • python NotImplementedError no description
  • Caught IndexError in DataLoader worker process 0
  • raise NotImplementedError NotImplementedError

思考:关于借鉴数据处理的过程,因此有些参数实际没有理解全面。 

  1. dataloader里面num_worker的问题,设置为0、1?取决于是否多线程加载,加载的进程数,0代表不使用多进程。设置问题,有的会出现数据读取卡住情况。
  2. dataloader的参数设置,自定sample,那么shuffle=False,两者互斥
  3. 优先检查train_loader样式,是否符合输入,Debug~
  4. 反复失败,新建文件重新编程,离谱成功。(太痛了!建议优先尝试)

  5. 缩进问题,规范化,命名问题,基础错误就不明说了。(该)

推荐学习:

 类似资料: