值得指出的是,深度学习并非万能,只是为人工智能选择合适的机器学习方法。深度学习也有缺点,绝不是万能的方法。比如,关于如何进行深层神经网络的内部设计,目前还没有人能够提出一个明确的设计指南。所以,人类应该发挥的第一个作用就是选择合适的机器学习方法。除了深度学习之外,机器学习的方法还有很多。对于很多企业来说,与其一下子就尝试难以驾驭的深度学习,不如引入现有的机器学习方法更具实际意义。
7.6 深度学习的实现框架
下面介绍深度学习的常见框架。
TensorFlow 平台
笔者最初接触AI时,最先听说的框架就是谷歌的TensorFlow。TensorFlow是一个使用数据流程图进行数值计算的开源软件。这个不错的框架因其架构而闻名,它允许在任何CPU或GPU上进行计算,无论是桌面、服务器,还是移动设备。它可在Python编程语言中使用。TensorFlow的优点是,使用简单易学的语言,如Python;使用计算图进行抽象;可以使用TensorBoard获得可视化。
• Caffe
Caffe是一个强大的深度学习框架。它对于深入学习的研究而言,是非常快速和有效的。使用Caffe可以轻易地构建一个用于图像分类的卷积神经网络。它在GPU上运行良好,运行速度非常快。如图7-20所示是Caffe的主类。
Caffe的优点是可以与Python和MATLAB绑定使用,高性能,无须编写代码,即可训练模型;缺点是对递归网络支持不好。
● Keras
Keras是一个用Python编写的开源神经网络库。不似TensorFlow、CNTK、Theano这种端到端(End-to-End)的机器学习框架,相反,它是一个接口,提供了高层次的抽象,使得神
第7章 深度学习
211