深度学习=大数据+超强计算力,这两个缺一不可。神经网络从上世纪80-90年代开始急速发展,但是由于数据量和计算力不够,导致在实际中应用不多,以至于神经网络从2000到2010年沉寂了近10年。从09年开始神经网络开始应用于语音识别、计算机视觉等领域,神经网络又开始流行了。神经网络还是那个神经网络,复苏的主要驱动力就是数据量和计算力。
为什么用GPU进行深度学习?
高端游戏玩家为获得更高的图形效果(3D、光照、防锯齿等等)需要选择高端显卡。如果你写过3D游戏,你应该知道图形操作需要大量的向量和矩阵运算,而这正是GPU最擅长的。
GPU是并行架构,擅长执行大矩阵乘法,而深度学习正好需要大量的矩阵运算。
CPU是设计用来进行更通用的运算,执行矩阵运算远远不及GPU。
适合深度学习的机器配置
这也是网友常问的问题,先引用两段知乎的回答:
最近搞了个入门的深度学习工作站,终于可以在家刷信仰。好像和上面推荐的初创企业配置有点像。
CPU: i7 6850K 2011v3 6Cores 12Threads
GPU: Pascal GTX 1080 公版 2560 CUDA Cores 8G
内存: Kingston Fury DDR4 2400 8G * 8 = 64G
主板: MSI X99A SLI Plus (某网当时有优惠活动,另外可以直接插上我的M.2 SSD)
CPU散热: Coolermaster 冰神 240M CPU 水冷
存储: M.2 SSD 256G + SAMSUNG 840 PRO SSD 256G + SEAGATE SV35 3TB
电源: EVGA 1000 GQ 80 PLUS 机箱: Coolermaster MasterCaseMaker5
大概不到2w搞定。以上配置之后可以考虑再加一块1080,再多GPU的话,40PCIE Lanes也不够用了。GPU也没上水冷,目前看起来满载温度在70度以内,还比较稳定。另外电源别省钱,毕竟长时跑,电源稳定挺重要。再加一句: 对于是否使用Cloud HPC,于私而言,这不是成本问题,作为一个工匠,要有自己的家私,这是信仰问题。
机器学习神器(15000+刀):NVIDIA® DIGITS™ DevBox(https://developer.nvidia.com/devbox)
你们快拉倒吧!与其花那么多钱DIY工作站,不如用AWS 的Spot Instance!
便宜:一个小时才$0.1(涨了),随用随启,不用就关。
方便:开启实例就可以用, 有现成的 cuda+Theano+lasagne+ipython+anaconda的系统镜像
省事:不需要自己组装PC,不用占地方,不用花电费,不用维护硬件。
结论:少来拿学习之名,行攒机之实了,少年。
(我想了几个晚上想破头要升一下显卡,玩游戏爽一点,就被你无情地戳破了。)
如果你要攒机,可以遵循以下建议
CPU核心数不用太多;确保CPU支持40PCIE Lanes
GPU:DNN不需要显卡支持Double precision(少废话,劳资有的是money);4GPU是目前的性能上限(主板限制+切换消耗)
RAM:内存至少是显存的两倍
主板支持PCIe 3.0,PCI-E Gen3 x16(连4GPU)
SSD硬盘(贵)
普通机械硬盘(便宜):保存训练数据
电源:如果有4 GPU,耗电1500+w,加上CPU等等其它组建,确保电源够使
散热:水冷,没噪音
Ubuntu安装深度学习平台Torch7以及zbs_torch IDE:http://www.linuxdiyf.com/linux/22939.html
深度学习caffe+Linux环境搭建:http://www.linuxdiyf.com/linux/21717.html
深度学习框架Digits 3.0安装运行:http://www.linuxdiyf.com/linux/16599.html
google开源深度学习框架tensorflow环境搭配:http://www.linuxdiyf.com/linux/16153.html