Python迭代DataLoader时出现TypeError: Caught TypeError in DataLoader worker process 0.错误。
2023-06-13 09:11:19 时间
大家好,又见面了,我是你们的朋友全栈君。
Python迭代DataLoader时出现TypeError: Caught TypeError in DataLoader worker process 0.错误。
- TypeError: Caught TypeError in DataLoader worker process 0.
- TypeError: ‘NoneType’ object is not subscriptable
TypeError: Caught TypeError in DataLoader worker process 0.
TypeError: ‘NoneType’ object is not subscriptable
迭代 DataLoader
时出现以下错误,暂时不知道怎么解决,向大家求救,是一个比较稀罕的错误,也分享给大家一个奇葩的问题一起讨论。
Traceback (most recent call last):
File "/home/zero/blood_detect/PyTorch-YOLOv3/mTrain.py", line 96, in <module>
for batch_i, info in enumerate(dataloader):
File "/home/zero/anaconda3/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 819, in __next__
return self._process_data(data)
File "/home/zero/anaconda3/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 846, in _process_data
data.reraise()
File "/home/zero/anaconda3/lib/python3.7/site-packages/torch/_utils.py", line 385, in reraise
raise self.exc_type(msg)
TypeError: Caught TypeError in DataLoader worker process 0.
Original Traceback (most recent call last):
File "/home/zero/anaconda3/lib/python3.7/site-packages/torch/utils/data/_utils/worker.py", line 178, in _worker_loop
data = fetcher.fetch(index)
File "/home/zero/anaconda3/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/home/zero/anaconda3/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py", line 44, in <listcomp>
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/home/zero/blood_detect/PyTorch-YOLOv3/utils/datasets.py", line 130, in __getitem__
img, targets = horisontal_flip(img, targets)
File "/home/zero/blood_detect/PyTorch-YOLOv3/utils/augmentations.py", line 8, in horisontal_flip
targets[:, 2] = 1 - targets[:, 2]
TypeError: 'NoneType' object is not subscriptable
用pycharm查询过变量内容,dataloader里边的内容是没有问题的,就是迭代的时候有问题。
dataloader代码是这些
dataset = ListDataset(train_path, augment=True, multiscale=opt.multiscale_training, normalized_labels=False)
dataloader = torch.utils.data.DataLoader(
dataset,
batch_size=opt.batch_size,
shuffle=True,
num_workers=opt.n_cpu,
pin_memory=True,
collate_fn=dataset.collate_fn,
)
静待有缘人。
2019.11.30更新
TypeError: Caught TypeError in DataLoader worker process 0.解决。
解决方案:
将num_workers
设置为0。
Error
现在为
Traceback (most recent call last):
File "/home/zero/blood_detect/PyTorch-YOLOv3/mTrain.py", line 96, in <module>
for batch_i, info in enumerate(dataloader):
File "/home/zero/anaconda3/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 346, in __next__
data = self._dataset_fetcher.fetch(index) # may raise StopIteration
File "/home/zero/anaconda3/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/home/zero/anaconda3/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py", line 44, in <listcomp>
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/home/zero/blood_detect/PyTorch-YOLOv3/utils/datasets.py", line 130, in __getitem__
img, targets = horisontal_flip(img, targets)
File "/home/zero/blood_detect/PyTorch-YOLOv3/utils/augmentations.py", line 8, in horisontal_flip
targets[:, 2] = 1 - targets[:, 2]
TypeError: 'NoneType' object is not subscriptable
好像意思是info
没有下标不可迭代。
2019.12.1 更新
TypeError: ‘NoneType’ object is not subscriptable. 解决。
解决方案
数据导入时少给了数据的标签,导致数据没有标签,也就没有下标。
给了标签后,上面那个Error
也可以设置多个num_workers
了。
更新
有个博主写的一个相关解决方案,感觉更详细一点,在这里贴上。 相关博客链接
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/137625.html原文链接:https://javaforall.cn
相关文章
- Python怎么输入小数和整数_python输入非负整数
- Python 使用 Tornado Web 框架写HTTP接口实例代码(异步+线程池)
- Python安装
- python字符串转化列表_Python列表到字符串的转换[通俗易懂]
- python编程前景_Python前景如何,学完后可以从事方向?
- java与python-如何对比Python和Java,只需三分钟告诉你!
- 迭代器Python_python进阶路线
- python生成器详解_Python 生成器
- python中if判断的错误2021.11.19
- 【说站】python使用insert添加列表元素
- 【说站】python元组和列表的不同点
- 【说站】Python Dijkstra算法是什么
- 【说站】python zip_longest和zip的比较
- python的特点和优势_Java与Python异同
- Python保存json_python保存json文件
- Python绘制旭日图_python绘制散点图
- 3招解决python程序输出重定向时的延迟问题
- python json.loads 中文_Python 的完美 json loads
- 1行Python代码,把PPT转成图片,python-office功能更新~
- Python自动化办公--Pandas玩转Excel【一】
- 《Python Cookbook》读书笔记(二)
- 【错误记录】PyCharm 运行 Python 程序报错 ( SyntaxError: Non-ASCII character ‘xe5‘ in file x.py on line 1, but )
- python实战爬取招聘网站职位数据
- python自定义错误类型
- python-Python与MongoDB数据库-MongoDB数据库的基本知识
- python基数排序算法详解编程语言
- Bokeh v0.12.6dev3 发布,一个 Python 交互式可视化库详解编程语言
- python使用Python轻松操作Redis(redis-)
- 打开电脑上的QQ的python代码
- Python错误和异常小结
- python实现猜数字游戏(无重复数字)示例分享
- python两种遍历字典(dict)的方法比较