Deep Learning (DL) is one of the hottest trends in machine learning as DL approaches produced results superior to the state-of-the-art in problematic areas such as image processing and natural language processing (NLP). To foster the growth of DL, several open source frameworks appeared providing implementations of the most common DL algorithms. These frameworks vary in the algorithms they support and in the quality of their implementations. The purpose of this work is to provide a qualitative and quantitative comparison among three of the most popular and most comprehensive DL frameworks (namely Google's TensorFlow, University of Montreal's Theano and Microsoft's CNTK). The ultimate goal of this work is to help end users make an informed decision about the best DL framework that suits their needs and resources. To ensure that our study is as comprehensive as possible, we conduct several experiments using multiple benchmark datasets from different fields (image processing, NLP, etc.) and measure the performance of the frameworks' implementations of different DL algorithms. For most of our experiments, we find out that CNTK's implementations are superior to the other ones under consideration.
翻译:深入学习(DL)是机器学习最热门的趋势之一,因为DL方法在图像处理和自然语言处理(NLP)等问题领域产生优于最先进的成果。为了促进DL的增长,几个开放源框架似乎提供了最常见的DL算法的实施。这些框架在它们所支持的算法及其实施质量方面各不相同。这项工作的目的是对三种最受欢迎和最全面的DL框架(即Google's TensorFlow,蒙特利尔Theano大学和微软CNTK)进行质和量的比较。这项工作的最终目标是帮助终端用户就适合其需要和资源的最佳DL框架作出知情的决定。为了确保我们的研究尽可能全面,我们利用不同领域(图像处理、NLP等)的多个基准数据集进行了几次实验,并衡量框架实施不同DL算法的绩效。我们的大多数实验都发现,CNTK的实施优于正在审议的其他框架。