显卡和深度学习有什么联系
深度学习指的是基于深度神经网络的理论或者应用研究,通常研究场景在自然语言处理、图像、视屏等多媒体领域。
这就牵扯到了两个问题:
深度学习研究牵扯大量的矩阵运算。因为训练深度神经网络和使用深度神经网络预测、分类数据都是需要进行大量矩阵运算的,同时会伴有大量非矩阵、但是可以并行的计算;
当前自然语言、多媒体数据体量巨大,处理、计算这些大数据需要对深度学习模型进行大量的训练、预测。所以真正实际应用时需要的计算量是1中的大量计算乘上数据的数量(仅作不严谨的理解)。
普通的CPU很难胜任如此计算量巨大的任务,于是人们开始寻找合适的设备。在这个过程中逐渐开始使用GPU、DSP、FPGA以及ASIC(包括TPU、寒武纪芯片等等)设备加速计算。这些设备的设计初衷就是着重于计算,而不是像CPU那样计算和控制通吃,因而更加专业,效率更高。其中显卡由于游戏领域的市场带动,其产品计算能力和价格之比比其他设备划算很多,可以以游戏玩家的预算快速搭建起计算能力很强的科研平台,因此成为了几年前深度学习复兴早起的研究首选(Hinton等人的AlexNet便是使用英伟达K10显卡)。之后大家一直参考沿用,各种基于CUDA的开源计算框架也方便了研究,逐渐成为了习惯。现在因为各种深度学习应用逐渐出现,也有越来越多的人开始研究怎么在手机、嵌入式设备上部署深度网络,所以对FPGA和ASIC的研究也开始多了。