大家好,又见面了,我是你们的朋友全栈君。
目录
3.调大页面文件的大小 + 更改一下batch_size(彻底解决问题)
相信很多小伙伴在使用pycharm的时候都遇到这个问个报错问题吧, 我是在跑PyTorch相关代码遇到的这个问题, 也搜索了很多解决办法, 这里介绍下我总结的经验.
这是我搜索到的三种解决方法, 依次来介绍下:
这是最简单的方法了, 可以先尝试一下, 反正也很简单, 不过如果你是第一次遇到这个问题, 基本是解决不了问题的.
这个方法也是网上见过最多的方法了吧. 但有一说一, 网上的教程是真的很不友善, 好多答案直接就这一句话, 没有其他任何操作, 好多小伙伴留言根本找不到地方, 也不知道这个变量在哪里.
这里给大家介绍一种方式, 善于利用pycharm的搜索功能, 直接在搜索框中搜索这个变量名, 就可以直接找到相关文件, 不用自己慢慢找了.
如图就是网友说到的dataloader文件了, 直接点击就可以进入文件中.
网上的答案是这样的, 就是说改变下面这个变量num_workers的值为0就可以了
我找到这个文件之后, 再用Ctrl+F搜索搜索其中变量的位置, 但是我并没有找到上图中的代码块, 评论中还有网友说在其他位置的(dataset), 我都尝试了一下, 是真的没找到.
至此我几乎放弃这种方式了, 而且想了一下就算改为0成功了, 以后可能也会对其他代码产生影响吧, 毕竟这个变量肯定是有用的, 否则也不会存在, 也就是说这是一种治标不治本的方式.
更新一下: 又看到一下答案, 修改那个变量的位置可能不是在系统的那个文件中, 而是你自己写的程序中可能也用到了这个变量, 自己检查一下自己的程序, 用到了就更改一下试试.
没有解决问题, 我为什么还要写这样方式呢? 首先确实有网友评论是解决问题了, 说明方法本身是可行的, 其次, 我提供了一种搜索的途径, 这个方式可以使用在任何地方, 以后不会再为了找变量在哪而烦恼.
下面我们回到这个问题的报错上面来, 报错是 页面文件太小,无法完成操作, 这说明我们电脑的页面不够, 所以本质上我们还是应该解决页面的问题, 而不是变量的问题.
基于这个思想, 我又开始找其他答案, 终于发现了最后的一种方式, 如下:
先说下这个问题的存在, 我们看下下面的这张图, 会发现电脑默认情况下是没有给D盘分配虚拟内存的, 所以将Python装在D盘的朋友, 在跑程序时, 没有分配虚拟内存, 自然就遇到了上面的问题, 所以根本操作只要给D盘分配虚拟内存即可.(如果Python安装在C盘, 就更改C盘的虚拟内存的值, 调大点)
具体操作如下, 直接搜索 高级系统设置:
按照如图所示操作, 最后根据自己D盘可用空间的大小来设置一下虚拟内存的大小, 最后点击确认, 再重新运行程序, 问题就解决了. 这里说下, 可能存在另外一种情况, 就是你D盘的虚拟空间早就设置好了, 那可能真就是你跑的程序样本太大了, 可以尝试更改一下batch_size就是你训练量的值, 将它设置小点, 看看能不能解决, 实在不行的就去尝试第二种方法吧, 这就是我找到的几乎所有解决方法了.
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/152597.html原文链接:https://javaforall.cn