“认识AI:人工智能如何赋能商业”“32”目前主流的深度学习工具

数据与智能 出版了专著“构建企业级推荐系统:算法、工程实现与案例分析”。每周输出7篇推荐系统、数据分析、大数据、AI原创文章。“数据与智能”(同名视频号、知乎、头条、B站、快手、抖音、小红书等自媒体平台号) 社区,聚焦数据、智能领域的知识分享与传播。

作者 | Harper

审核 | gongyouliu

编辑 | gongyouliu


我在前面的内容中给大家介绍了深度学习相比机器学习的优势所在,也给大家梳理了目前主流的机器学习工具,本期给大家分享的内容是主流的深度学习工具。


深度学习是人工智能中最有趣的领域之一,因此有许多工具可以用于创建深度学习人工神经网络,这些工具以深度学习框架的形式出现。深度学习框架是一个接口,它使得开发人员能够使用一组预先构建的组件快速、轻松地构建和部署深度学习AI模型。


最流行的深度学习框架之一是TensorFlow,由Google Brain团队于2011年创建的Tensorflow是一个端到端的开源机器学习框架,用于开发、训练和部署机器学习模型。你可以将它用于大多数基于云的机器学习服务平台,包括Amazon SageMaker、IBM Watson和Microsoft Azure。TensorFlow 是跨平台的,这意味着它可以运行在各种架构——服务器、 智能手机甚至GPU上。使用所谓的“TensorFlow 分布式执行引擎”来抽象大部分的硬件,使用Python作为前端应用程序编程接口来构建应用程序,使用高性能C++来执行这些应用程序。


那么另一个框架是Microsoft Cognitive Tolkit (简称CNTK)这是一个用于商业级分布 式深度学习的开源工具包。作为TensorFlow的竞争对手,CNTK是另一个用于构建和部署深度学习模型的底层深度学习框架。CNTK似乎比TensorFlow在处理速度、创建生产就绪的模型以及支持CPUGPU计算方面更具优势。而TensorFlow在易用性、社区支持和移动深度学习方面得分较高。但这两个框架也正在不断开发当中。


还有另一个流行的工具是Keras,它是一个用Python编写的开源神 经网络库。你可以在TensorFlow或CNTK (以及其他底层深度学习库)上运行Keras,并将其用作高级API,以简化构建深度学习模型的过程。它是模块化的、可扩展的、用户友好的,并且设计用于实现快速实验。如果你正在使用深度学习人工神经网络识别对象,那么还有一个名为Caffe的深度学习框架, 该框架是由Berkeley AI research 和一个贡献者社区开发的,大家可以上它的官网查看更多关于caffe的信息。


总的来说,如果你刚开始构建自己的深度学习人工神经网络,建议从TensorFlow和Keras开始。随着你获得了更多关于机器学习算法、Python和C++的经验,你可以尝试更多的可能。除了简化开发和部署之外,TensorFlow是在几乎所有流行的云服务上构建深度学习网络的最流行框架之一。你还可以在自己的服务器、手机、计算机或其他计算设备上运行它们。它将构建这些网络时遇到的大部分技术难题抽象出来,并可以灵活地在许多现有技术的基础上运行深度学习人工神经网络。