《动手学深度学习》是一本面向中文读者的能运行、可讨论的深度学习教科书。这个系列是我学习的过程和笔记,对原有的 Jupyter Notebook 形式做了一定的修改,方便直接在命令行中运行和交互。注:本系列采用 PyTorch 编写代码,故 MXNet 相关内容,不会涉及。
更新历史
- 2019.11.05: 完成初稿
环境配置
基本环境(基于 Mac 配置)
- Python 3.6.8
- torch 1.3.0
- torchvision 0.4.1
采用 virtualenv 配置虚拟环境,命令为 virtualenv -p /Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 --no-site-package torch
,这里具体的 python 路径可以根据不同的安装方式来自行决定,如果是用 brew 安装的话,位置会不一样。
注:pip 时添加 -i https://pypi.tuna.tsinghua.edu.cn/simple
可以加速,高版本 virtualenv 不支持 —no-site-package 参数,请注意。另外 M1 Mac 很多库不支持,建议不要在 M1 Mac 上操作
其他可选源:
https://pypi.mirrors.ustc.edu.cn/simple
http://pypi.douban.com/simple/
写些什么
对于课本系列以学习笔记为主,主要会写:
- 核心概念
- 更新部分过时的代码和描述
- 总结一些我个人学习过程中觉得有一些理解门槛的要点,帮助大家理解
- 在 Github 公开源码,包括作业部分
一些写作习惯:
- 对于专有名词,比如 Graph/Session 之类的,通通不翻译,请不要埋怨我中文夹英文
- 文章中贴出的代码很大概率是节选,但是会把完整的源代码放在 github 中,如果需要,自取
- 不钻牛角尖,如果是明确不推荐的写法,我会直接忽略
- 静态博客不带评论,交流可以通过微博、邮件等等途径
- 非常感谢勘误,会在原文中注明,如果有不想列出名字的同学,也请顺带在勘误中告知
- 这个列表会随时根据我的心情增加,如果不喜欢,可以直接关掉页面,不需要告诉我
希望能在自己学习的过程中也帮助大家
文章索引
注:本系列采用 PyTorch 编写代码,故 MXNet 相关内容,不会涉及。
GPU 购买指南
除了租用各个云平台 GPU 机器,我们还可以自己组装一台深度学习工作站(除了训练模型,还可以打游戏嘛)。但是买显卡比较一锤子买卖,所以我们要慎重选择。
对于个人用户来说,基本上只有一种选择(土豪可以无视):NVIDIA GTX 系列。我们主要关注下面三个指标:
- 计算能力。通常我们关心的是32位浮点计算能力。16位浮点训练也开始流行,如果只做预测的话也可以用8位整数。
- 显存大小。当模型越大或者训练时的批量越大时,所需要的显存就越多。
- 显存带宽。只有当显存带宽足够时才能充分发挥计算能力。
那么具体到产品中,简单来说就是买新不买旧,显存一定要大于 4GB,而 CPU 只要中上等级就行,不用追求特别高的。
注:我本人一直没买任何显卡和主机。