深度学习框架中库使用与依赖的实证研究
软件工程
2022-11-30 v1 人工智能
摘要
深度学习(DL)的最新进展催生了多个深度学习软件库的发布,如PyTorch、Caffe和TensorFlow,以协助机器学习(ML)从业者开发和部署最先进的深度神经网络(DNN),但这些库并不能妥善应对深度学习库在测试或数据处理等方面的局限性。在本文中,我们对最常见的深度学习库组合、深度学习库依赖在机器学习工作流中的分布进行了定性和定量分析,并制定了一系列建议,以(i)为硬件构建者提供更优化的加速器,以及(ii)为库构建者提供更精细的未来版本。我们的研究基于1,484个开源深度学习项目,这些项目根据声誉选出了46,110名贡献者。首先,我们发现深度学习库的使用呈增长趋势。其次,我们强调了深度学习库的几种使用模式。此外,我们识别了深度学习库之间的依赖关系以及最常见的组合,发现PyTorch与Scikit-learn的组合以及Keras与TensorFlow的组合分别是最常见的组合,出现在18%和14%的项目中。开发者在同一项目中使用两个或三个深度学习库,并倾向于在同一功能和同一文件中使用多个不同的深度学习库。开发者在使用各种深度学习库时表现出一定的模式,并偏好参数较少、目标直接的简单函数。最后,我们阐述了我们的发现对研究人员、库维护者和硬件供应商的启示。
引用
@article{arxiv.2211.15733,
title = {An Empirical Study of Library Usage and Dependency in Deep Learning Frameworks},
author = {Mohamed Raed El aoun and Lionel Nganyewou Tidjon and Ben Rombaut and Foutse Khomh and Ahmed E. Hassan},
journal= {arXiv preprint arXiv:2211.15733},
year = {2022}
}