在刚入坑机器学习时,书上所使用的算法(回归、决策树等)及实例较为简单,一般CPU(中央处理器)的计算能力均能胜任,从而快速实现。但若使用keras(一种基于深度学习框架的高级应用接口)进行深度学习,利用海量的数据反复训练神经网络中成百上千万个参数时,CPU显得捉襟见肘,需要GPU(图形处理器)来实现加速训练。
为什么GPU在深度学习中比CPU更快呢?这是由于两者的设计不同,CPU由专为串行处理而优化的几个部件组成,拥有少量的算术逻辑单元,主要针对不同任务的管理与协调;而GPU则拥有数以千计个算术逻辑单元组成的并行计算架构,专为庞杂而繁重的计算任务而设计。
简单的理解,当对一组数据反复执行同一种计算任务时,GPU更合适,而对同一组数据执行多种不同的任务时,CPU更合适。
以本渣渣的实际经验来看,使用GTX970(CUDA1600个)训练2万个样本的卷积神经网络将比A10处理器快20-30倍(视batchsize大小而定)。
1.安装CUDA及cuDNN
GPU加速器于2007年由NVIDIA率先推出,CUDA(Compute Unified Device Architecture)是使GPU能够解决复杂计算问题的并行架构,它包含了CUDA指令集以及并行计算引擎。现在,该架构已应用于GeForce、ION、Quadro以及Tesla等多款产品上,相比AMD而言,支持GPU加速的NVIDIA显卡品种繁多。
因此想要用GPU加速的话基本只要确定显卡是不是NVIDIA品牌的就可以了,当然如果型号过于老旧还是不太确定的话可以前往官网(https://developer.nvidia.co