pytorch-book icon indicating copy to clipboard operation
pytorch-book copied to clipboard

第六章 ValueError: invalid literal for int() with base 10

Open WeiYangBin opened this issue 5 years ago • 13 comments

错误代码如下

user config:
env classifier
vis_port 8097
model SqueezeNet
train_data_root ./data/train
test_data_root ./data/test1
load_model_path None
batch_size 32
use_gpu True
num_workers 4
print_freq 20
debug_file /tmp/debug
result_file result.csv
max_epoch 10
lr 0.001
lr_decay 0.5
weight_decay 0.0
WARNING:root:Setting up a new session...
WARNING:visdom:Without the incoming socket you cannot receive events from the server or register event handlers to your Visdom client.
Traceback (most recent call last):
  File "main.py", line 165, in <module>
    fire.Fire()
  File "/usr/local/lib/python3.6/dist-packages/fire/core.py", line 127, in Fire
    component_trace = _Fire(component, args, context, name)
  File "/usr/local/lib/python3.6/dist-packages/fire/core.py", line 366, in _Fire
    component, remaining_args)
  File "/usr/local/lib/python3.6/dist-packages/fire/core.py", line 542, in _CallCallable
    result = fn(*varargs, **kwargs)
  File "main.py", line 58, in train
    train_data = DogCat(opt.train_data_root,train=True)
  File "/content/drive/pytorch-book-master/chapter6-实战指南/data/dataset.py", line 23, in __init__
    imgs = sorted(imgs, key=lambda x: int(x.split('.')[-2]))
  File "/content/drive/pytorch-book-master/chapter6-实战指南/data/dataset.py", line 23, in <lambda>
    imgs = sorted(imgs, key=lambda x: int(x.split('.')[-2]))
ValueError: invalid literal for int() with base 10: '5708 (446004bc)'

imgs是<class 'list'>,我尝试了用

list(map(int, x.split(‘. ’)))

可是也是不行,不知道大家是否也遇到过这个错误,然后是怎么解决的

但是当我将imgs print出来,将pirnt的结果拿出来在ipython上运行又是可以的

In [18]: imgs =  ['data/train/dog.10577.jpg', 'data/train/cat.9898.jpg', 'data/t
    ...: rain/dog.5538.jpg']

In [19]: imgs = sorted(imgs, key=lambda x: int(x.split('.')[-2]))

In [20]: imgs
Out[20]:
['data/train/dog.5538.jpg',
 'data/train/cat.9898.jpg',
 'data/train/dog.10577.jpg']

WeiYangBin avatar May 25 '19 08:05 WeiYangBin

貌似你dataset.py路径配置错了。

lmxhappy avatar May 25 '19 15:05 lmxhappy

貌似你dataset.py路径配置错了。

应该没有吧,我是把train/test data都放在了data目录下

WeiYangBin avatar May 27 '19 05:05 WeiYangBin

老哥,这个你解决了没

sdzbft avatar May 29 '19 13:05 sdzbft

老哥,这个你解决了没

没有,你也遇到同样的问题吗

WeiYangBin avatar May 30 '19 01:05 WeiYangBin

老哥,这个你解决了没

没有,你也遇到同样的问题吗

是呀,不知道咋捣鼓

sdzbft avatar May 30 '19 07:05 sdzbft

老哥,这个你解决了没

没有,你也遇到同样的问题吗

是呀,不知道咋捣鼓

好的,如果你解决了,也和我说下呀

WeiYangBin avatar Jun 03 '19 03:06 WeiYangBin

老哥,这个你解决了没

没有,你也遇到同样的问题吗

是呀,不知道咋捣鼓

好的,如果你解决了,也和我说下呀

找到问题的原因了,是数据集出了问题 存在40条如下无法转换成int的数据

2109 (7de39678)
11750 (52a11000)
3217 (bc2c95f4)
10328 (d9d924a1)
5100 (e65056bb)
4578 (aad5cb5c)
11036 (e49b44da)
1366 (165e604b)
6409 (87a42c98)
3571 (adfe0752)
6353 (bce0df67)
6435 (dd62988a)
9706 (01da460b)
56 (a4525f28)
8418 (a2d3334e)
816 (723b0b68)
4222 (3551a4a4)
2653 (81c76a3d)
1372 (80dc2ddd)
10314 (511be3de)
4904 (7ab6d1a5)
10832 (2c041799)
456 (32bfd567)
8858 (72666364)
330 (b0a8d607)
6875 (3fdf8db6)
10198 (4b793b3c)
11292 (0f980b71)
8680 (e2fea7fc)
11286 (cb420d81)
6534 (f46f9166)
10215 (26097605)
9607 (e04cca9c)
12402 (3297aaa3)
6252 (8ac592d0)
917 (3c7cf98f)
2034 (3f5a82b9)
8519 (cbcc9e68)
12364 (e9ca3b79)
9161 (64e5d4d2)

WeiYangBin avatar Jun 05 '19 16:06 WeiYangBin

老哥,这个你解决了没

因为数据集自身的问题,将原有的代码进行如下替换就没有那个错误了

if self.test:
    #  imgs = sorted(imgs, key=lambda x: int(x.split('.')[-2].split('/')[-1]))
    imgs = [x.split('.')[-2].split('/')[-1] for x in imgs]
    tmp = []
    for i in imgs:
        try:
            tmp.append(int(i))
        except:
             None
     imgs = sorted(tmp)
else:
    #  imgs = sorted(imgs, key=lambda x: int(x.split('.')[-2]))
    imgs = [x.split('.')[-2] for x in imgs]
    tmp = []
    for i in imgs:
        try:
            tmp.append(int(i))
        except:
            None
    imgs = sorted(tmp)

WeiYangBin avatar Jun 05 '19 16:06 WeiYangBin

请问你们谁有第十章数据集吗?可以百度云分享一下吗?感激不尽!

shazhongcheng avatar Sep 09 '19 01:09 shazhongcheng

请问你们谁有第十章数据集吗?可以百度云分享一下吗?感激不尽!

作者不是在readme上面有给kaggle的链接吗

WeiYangBin avatar Sep 12 '19 03:09 WeiYangBin

请问你们谁有第十章数据集吗?可以百度云分享一下吗?感激不尽!

作者不是在readme上面有给kaggle的链接吗

老哥,你确定吗? 只有 AI Challenger图像描述 和 MEGA,前者无法下载,后者限流 我不想为了一个本来免费公开的数据花几十美刀。 如果大哥你有的话,百度云可以分享一下吗?感激不尽!跪求分享!

shazhongcheng avatar Sep 12 '19 03:09 shazhongcheng

请问你们谁有第十章数据集吗?可以百度云分享一下吗?感激不尽!

作者不是在readme上面有给kaggle的链接吗

老哥,你确定吗? 只有 AI Challenger图像描述 和 MEGA,前者无法下载,后者限流 我不想为了一个本来免费公开的数据花几十美刀。 如果大哥你有的话,百度云可以分享一下吗?感激不尽!跪求分享!

我的数据集放在了Google drive上,然后我试着给你下载下来,但是我下载下来也被限流了,特别慢,然后在给你效率反而更差

WeiYangBin avatar Sep 12 '19 09:09 WeiYangBin

请问你们谁有第十章数据集吗?可以百度云分享一下吗?感激不尽!

作者不是在readme上面有给kaggle的链接吗

AI挑战者图像描述和MEGA,前者无法下载,少数限流我不想为了一个本来免费公开的数据花几十美刀。 如果大哥你有的话,百度云可以分享一下吗?感激不尽!跪求分享!

我的数据集放在了Google驱动器上,然后我试着给你下载下来,但是我下载下来也被限流了,特别慢,然后在给你效率反而更差

o……so sad,不管怎么说,还是感谢你的热情帮助啦

shazhongcheng avatar Nov 10 '19 03:11 shazhongcheng