Pytorch猫狗大战遇见的问题总结

Pytorch猫狗大战遇见的问题总结

  • 1. 关于命令行界面
  • 2. 关于visdom的运行
  • 3. NameError: name 'unicode' is not defined
  • 4. name 'opt' is not defined
  • 5. 'dict' object has no attribute 'iteritems'
  • 6. invalid index of a 0-dim tensor. Use tensor.item() to convert a 0-dim tensor to a Python number
  • 7. FileNotFoundError: [Errno 2] No such file or directory: 'checkpoints/model.pth'
  • 8. RuntimeError: CUDA out of memory. Tried to allocate 16.00 MiB (GPU 0; 2.00 GiB total capacity; 1.01 GiB already allocated; 15.89 MiB free; 219.03 MiB cached)
  • 9. OSError: [Errno 22] Invalid argument: 'checkpoints/resnet34_0805_10:28:05.pth'
  • 10. FileNotFoundError: [Errno 2] No such file or directory: 'checkpoints/model.pth'
  • 11. ValueError: invalid literal for int() with base 10: 'test1\\1'

本博客的项目代码为《深度学习框架PyTorch:入门与实战》中的代码,参考的PyTorch的入门教程实战这篇博客,运行代码下来出现了一些问题,所以在这里记录一下。因为我是后知后觉想到要记录的,所以文章里的截图都是修改后的代码截图。
对于这个代码,看完后,运行后还是稀里糊涂的,就训练时每次25%就停止接着下一轮训练,就很迷,虽然最后预测test也成功了,但是没有准确率的计算也不知道模型精度怎么样,所以后面还需要再多学习改进吧,如果有知道的告诉可怜的我吧!‍♀️

1. 关于命令行界面

这个代码中有fire库的原因,所以就可以直接在命令行窗口运行代码。
所以直接在文件夹位置,按住shift键,同时右键,就可以找到“在此处打开cmd窗口”,就是在当前文件夹位置打开命令行窗口,就不用再start出打开cmd再cd文件夹的位置了。
然而我的按住shift键,同时右键,找到的是“在此处打开Powershell窗口”,反正都可以。
Pytorch猫狗大战遇见的问题总结_第1张图片

2. 关于visdom的运行

在命令行窗口中输入python -m visdom.server时,一直显示downloading
【解决方案】

  1. 进入目录F:\Anaconda3\Lib\site-packages\visdom找到文件server.py
  2. 打开文件,并注释掉图片中的那一行

Pytorch猫狗大战遇见的问题总结_第2张图片

  1. 重新下载static文件夹并替换掉原来文件夹里的static
    链接:https://pan.baidu.com/s/1CPaoj29vs3uEl8a7JsHnOQ
    提取码:lvdf
  2. 打开命令行窗口,输入“python -m visdom.server”
  3. 将下图中的网址输入浏览器,就可以进入第二张图的界面
    在这里插入图片描述
    Pytorch猫狗大战遇见的问题总结_第3张图片
    另外,对于代码中训练过程中的验证的准确率可视化并没有任何反应,我也无力于找到其中的原因了,有知道原因的告诉我吧~

3. NameError: name ‘unicode’ is not defined

Pytorch猫狗大战遇见的问题总结_第4张图片
【解决方案】:在utils文件夹里的visualize.py文件中的unicode(name)改为str(name)

4. name ‘opt’ is not defined

Pytorch猫狗大战遇见的问题总结_第5张图片

【解决方案】:在main.py里将 # coding:utf8 改成# coding:utf-8

5. ‘dict’ object has no attribute ‘iteritems’

Pytorch猫狗大战遇见的问题总结_第6张图片

【解决方案】:在config.py文件中的parse函数中,将iteritems()改成items()

6. invalid index of a 0-dim tensor. Use tensor.item() to convert a 0-dim tensor to a Python number

Pytorch猫狗大战遇见的问题总结_第7张图片

【解决方案】:将loss.data[0] 改成loss.item()

7. FileNotFoundError: [Errno 2] No such file or directory: ‘checkpoints/model.pth’

Pytorch猫狗大战遇见的问题总结_第8张图片
【解决方案】:在config.py文件中将load_model_path = 'checkpoints/model.pth’注释掉并加上load_model_path = None

8. RuntimeError: CUDA out of memory. Tried to allocate 16.00 MiB (GPU 0; 2.00 GiB total capacity; 1.01 GiB already allocated; 15.89 MiB free; 219.03 MiB cached)

Pytorch猫狗大战遇见的问题总结_第9张图片
【解决方案】:在config.py文件中,将batch_size改小(根据自己电脑的情况修改)

9. OSError: [Errno 22] Invalid argument: ‘checkpoints/resnet34_0805_10:28:05.pth’

Pytorch猫狗大战遇见的问题总结_第10张图片
【解决方案】:在models文件夹中的BasicModule文件中的save函数中,将’%m%d_%H:%M:%S.pth’的冒号去掉!

下面是在test时出现的错误-------------------------------------------------------------------------------------------

10. FileNotFoundError: [Errno 2] No such file or directory: ‘checkpoints/model.pth’

【解决方案】:找到自己checkpoints文件夹,找到最新的一个.pth文件
Pytorch猫狗大战遇见的问题总结_第11张图片
复制文件名,转到config文件夹中,做如下图的修改
Pytorch猫狗大战遇见的问题总结_第12张图片

11. ValueError: invalid literal for int() with base 10: ‘test1\1’

【解决方案】:由于Linux的’/‘相当于win10里的’\’,所以做如下修改即可
Pytorch猫狗大战遇见的问题总结_第13张图片
Pytorch猫狗大战遇见的问题总结_第14张图片

你可能感兴趣的:(python的应用,深度学习,python,神经网络,机器学习,pytorch)