数据观世界
深度学习是目前人工智能领域的核心技术之一, 为了更方便地开发基于深度学习的方法以及推进深度学习技术的进步, 多个世界顶级的技术团队为深度学习开发了框架, 其中大部分都是开源的并且提供了针对 Python 语言的开发包, 无论是对于 Python 还是深度学习这都是一件极好的事情, 我们总结了 11 种开源框架的 Python 包, 在这里给大家做以下简单地介绍.
1. TensorFlow Python
TensorFlow 是一个用于数值计算的开源库, 它基于数据流图, 也即是 Flow 之意所在. TensorFlow 是由谷歌大脑团队和谷歌机器智能研究组织共同开发, 它是开源的, 可供全球公众使用. 并且, 它在分布式计算方面也具有一些优势.
我们可以使用 pip 来进行安装:
- pip install tensorflow
- 2. keras Python
Keras 是一个极简的, 模块化的神经网络库, 它使用 Theano 或 TensorFlow 作为后端, 能够帮助开发者快速便捷地实现想法和取得实验结果. Keras 自带与优化器, 归一化和激活层相关的算法. 它还涉及卷积神经网络, 并允许您构建基于序列和基于图形的网络. 唯一的缺点就是它不支持用于并行训练网络的多 GPU 环境.
我们可以使用 pip 来进行安装:
- pip install keras
- 3. Apache mxnet
mxnet 为 C++,Python,R,JavaScript 等语言提供了大量的接口. 它在分布式计算方面表现很好, 并且允许我们在 CPU 或者 GPU 机器上训练网络. 唯一的缺点是我们需要更多代码来运行实验.
我们可以使用 pip 来进行安装:
- pip install mxnet
- 4. Caffe
Caffe 是一个快速且模块化的深度学习框架. 它不是一个库, 但它提供了 Python 的接口. Caffe 每天可以在 K40 GPU 上处理近 6000 万张图像. 但是, 在它上面以编程方式调节超参数并不容易.
5. Theano Python
如果没有 NumPy, 我们就不能拥有 SciPy,scikit-learn 和 scikit-image. 同样, Theano 也是许多其它框架和方法的基础, 它是一个可以让您定义, 优化和评估涉及多维数组数学表达式的库. 它与 NumPy 紧密集成, 并且支持使用 GPU,Theano 可以称为科学计算的基石.
使用 Python pip 安装它:
- pip install theano
- 6. Microsoft Cognitive Toolkit
Microsoft Cognitive Toolkit 是一个统一的深度学习工具包. 它描述了在计算步骤中使用有向图的神经网络.
你可以使用 Python pip 安装 cntk:
- pip install cntk
- 7. PyTorch
PyTorch 是 Python 中动态的张量神经网络. 它是开源的, 并且可以使用强大的 GPU 加速, 我们可以将它用于自然语言处理等应用程序. 你可以参考下面的链接根据您不同的环境和方式来安装 PyTorch:
https://pytorch.org/#pip-install-pytorch
8. Eclipse DeepLearning4J
DeepLearning4J 是 Eclipse 的深度学习编程库. 它是为 Java 和 JVM 语言编写的, 它也是一个能为深度学习算法提供良好支持的计算框架.
9. Lasagne
Lasagne 是一个轻量级的 Python 库, 可以帮助我们更轻松高效地在 Theano 中构建和训练神经网络.
你可以使用 Python pip 安装它:
- pip install lasagna
- 10. nolearn
nolearn 将 Lasagna 包装成对用户更加友好的 API. 它拥有的所有代码都与 scikit-learn 兼容. 我们可以将它用于 Deep Belief Networks(DBN) 等应用程序.
你可以使用 Python pip 安装它:
- pip install nolearn
- 11. PyLearn2
PyLearn2 是一个 Python 机器学习库, 其中大部分功能都建立在 Theano 之上, 我们可以使用数学表达式编写 PyLearn2 插件, Theano 为我们对这些功能进行优化并将它们编译为我们想要的后端.
以上便是使用 Python 库和框架进行深度学习的全部内容, 文中的 11 个库和框架, 可以帮助您轻松地开始进行深度学习实验或项目. 每个深度学习 Python 库和框架都有其自身的优点和局限性, 请在评论中告诉我们您在使用 Python 库和框架进行深度学习方面的经验.
来源: http://news.51cto.com/art/201810/584910.htm