小编sta*_*son的帖子

Google Colaboratory:关于其GPU的误导性信息(某些用户只能使用5%的RAM)

更新:此问题与Google Colab的"笔记本设置:硬件加速器:GPU"有关.这个问题是在添加"TPU"选项之前编写的.

阅读关于谷歌Colaboratory提供免费特斯拉K80 GPU的多个激动人心的公告,我试图快速运行上课,因为它永远不会完成 - 快速耗尽内存.我开始调查原因.

最重要的是,"免费特斯拉K80"对所有人来说都不是"免费" - 因为有些只是"免费"的一小部分.

我从加拿大西海岸连接到谷歌Colab,我只得到0.5GB的24GB GPU内存.其他用户可以访问11GB的GPU RAM.

显然,0.5GB的GPU RAM不足以满足大多数ML/DL的工作需求.

如果你不确定你得到了什么,这里有一点点调试功能(只适用于笔记本的GPU设置):

# memory footprint support libraries/code
!ln -sf /opt/bin/nvidia-smi /usr/bin/nvidia-smi
!pip install gputil
!pip install psutil
!pip install humanize
import psutil
import humanize
import os
import GPUtil as GPU
GPUs = GPU.getGPUs()
# XXX: only one GPU on Colab and isn’t guaranteed
gpu = GPUs[0]
def printm():
 process = psutil.Process(os.getpid())
 print("Gen RAM Free: " + humanize.naturalsize( psutil.virtual_memory().available ), " | Proc size: " + …
Run Code Online (Sandbox Code Playgroud)

python ram gpu machine-learning google-colaboratory

89
推荐指数
3
解决办法
6万
查看次数

git pull / stash 与 git 过滤器冲突

这个问题是关于将 git 与nbstripout过滤器一起使用,它会在将 jupyter notebook(一个 JSON 文件)存储在 git 下之前从其中删除一些字段。当多个开发人员使用同一个笔记本时,剥离过滤器用于最小化冲突。

所以repo配置开始:

$ cat .git/config
[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = git@github.com:stas00/fastai_v1.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
        remote = origin
        merge = refs/heads/master
[include]
        path = ../.gitconfig

$ cat .gitconfig
[filter "nbstripout"]
        clean = nbstripout
        smudge = cat
        required = true
[diff "ipynb"]
        textconv = nbstripout -t

$ cat .gitattributes
*.ipynb filter=nbstripout

*.ipynb diff=ipynb
Run Code Online (Sandbox Code Playgroud)

在使用此配置期间git diffgit …

git git-filter

7
推荐指数
0
解决办法
883
查看次数

Python 缓存字节码 (pyc) 文件何时更新?

有时我通过指向特定模块运行 unittest make PYTHON_TEST=path_of_module_to_test test并且如果该模块path_of_module_to_test test导入了其他一些已更新的 python 模块,将从该模块导入的完成将从更新的 py 源文件或未更新的 pyc 文件中获取,或者导入导致更新依赖的 pyc 文件?

python pyc

5
推荐指数
1
解决办法
1970
查看次数

Pytorch 调度学习率

我正在尝试重新实现一篇论文,其中建议调整学习率如下:

在0.0001的变化值上,学习率降低了回归值的一个因子,耐心时期 10 。

我应该使用torch.optim.lr_scheduler.ReduceLROnPlateau()?

我不确定应该将什么值传递给每个参数。

  1. 语句中的变化值是否表示参数阈值

  2. 的因素在声明中表示的参数的因素

optimization pytorch learning-rate

3
推荐指数
1
解决办法
4132
查看次数