中文

深度学习软件框架的比较研究

机器学习 2016-03-31 v3

摘要

深度学习方法在多个应用领域取得了显著的性能提升,因此已开发出若干软件框架以方便其实现。本文从可扩展性(extensibility)、硬件利用率(hardware utilization)和速度三个方面对五个深度学习框架(即 Caffe、Neon、TensorFlow、Theano 和 Torch)进行了比较研究。该研究在多种深度学习架构上进行,我们评估了上述框架在单机环境下(多线程)CPU 和 GPU(Nvidia Titan X)设置中的性能。此处使用的速度性能指标包括梯度计算时间(在深度网络训练阶段很重要)和前向时间(从训练网络的部署角度很重要)。对于卷积网络,我们还报告了这些框架各自如何支持各种卷积算法及其相应性能。从我们的实验观察到,Theano 和 Torch 是最易扩展的框架。我们观察到 Torch 最适合 CPU 上的任何深度架构,其次是 Theano。它在 GPU 上针对大型卷积和全连接网络也取得了最佳性能,紧随其后的是 Neon。Theano 在 GPU 上针对 LSTM 网络的训练和部署取得了最佳性能。Caffe 是评估标准深度架构性能最简便的框架。最后,TensorFlow 是一个非常灵活的框架,类似于 Theano,但其性能目前相较于其他所研究的框架尚不具备竞争力。

关键词

引用

@article{arxiv.1511.06435,
  title  = {Comparative Study of Deep Learning Software Frameworks},
  author = {Soheil Bahrampour and Naveen Ramakrishnan and Lukas Schott and Mohak Shah},
  journal= {arXiv preprint arXiv:1511.06435},
  year   = {2016}
}

备注

Submitted to KDD 2016 with TensorFlow results added. At the time of submission to KDD, TensorFlow was available only with cuDNN v.2 and thus its performance is reported with that version