Python 官方文档:入门教程 => 点击学习
概述 最近博主在跑一个实验,但它在PyTorch 1.8版本下感觉有点慢,刚好又看到Pytorch 2.0版本加速很多,所以准备用Pytorch 2.0版本运行代码。在这个过程中,出现了一些小问题,还
最近博主在跑一个实验,但它在PyTorch 1.8版本下感觉有点慢,刚好又看到Pytorch 2.0版本加速很多,所以准备用Pytorch 2.0版本运行代码。在这个过程中,出现了一些小问题,还有一些warning。为了防止这些错误和warning干扰到实验的结果,我在网上查找了相关办法,并在此记录。
同时它还会提示你如下信息:
train.py: error: unrecognized arguments: --local-rank=0
我之前是在Pytorch 1.8版本下运行的,对应的运行命令是:
python -m torch.distributed.launch --master_port 9843 --nproc_per_node=2 train.py
在Pytorch 2.0版本下应该使用如下命令:
Python -m torch.distributed.launch --master_port 9843 --nproc_per_node=2 --use_env train.py
增加一个--use_env
即可。
声明--use_env
后,pytorch会将当前进程在本机上的rank添加到环境变量LOCAL_RANK
中,而不再添加到args.local_rank
。
这是因为torchvision里面的pretrained参数已经在Pytorch 2.0里面过时了,现在使用的是weights参数。
除了上面的警告,还会出现:
UserWarning: Arguments other than a weight enum or `None` for 'weights' are deprecated since 0.13 and may be removed in the future. The current behavior is equivalent to passing `weights=ResNet50_Weights.IMAGENET1K_V1`. You can also use `weights=ResNet50_Weights.DEFAULT` to get the most up-to-date weights.
我在Pytorch 1.8中使用的语句是:
resnet = models.resnet50(pretrained=True)
解决方法是:
resnet = models.resnet50(weights=torchvision.models.ResNet50_Weights.IMAGENET1K_V1)
使用最新的方法就可以了。
因为在np.int在numpy1.20已经被废弃掉了。具体可以查看: https://numpy.org/devdocs/release/1.20.0-notes.html
我的原语句是:
cls_gt = np.zeros((3, 384, 384), dtype=np.int)
改成:
cls_gt = np.zeros((3, 384, 384), dtype=np.int_)
或者使用np.int32
或者np.int64
np.bool
was a deprecated alias for the builtin bool
. To avoid this error in existing code, use bool
by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy Scalar type, use np.bool_
here.因为在np.bool在numpy1.20已经被废弃掉了。
我的原语句是:
annotation = annotation.astype(np.bool)
改成:
annotation = annotation.astype(np.bool_)
除了警报,还会报错:
RuntimeError: cuFFT only supports dimensions whose sizes are powers of two when computing in half precision
出现这个的原因是我使用了混合精度。
解决办法是将Automatic mixed precision关掉
来源地址:https://blog.csdn.net/qq_41234663/article/details/129896837
--结束END--
本文标题: 使用Pytorch 2.0训练踩坑
本文链接: https://lsjlt.com/news/415492.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0