深度学习工具汇总
2016-11-07 13:22:03 516 举报
AI智能生成
深度学习工具比较
作者其他创作
大纲/内容
Caffe
简介
全称:Convolutional Architecture for Fast Feature Embedding
机构:Berkeley Vision and Learning Center,BVLC
基于:C++/CUDA/Python
接口:命令行、Matlab、Python
作者:贾扬清
关于Caffe
实现了前馈卷积神经网络架构(CNN)而不是递归网络架构(RNN)
速度快,利用了MKL、OpenBLAS、cuBLAS等计算库,支持CPU加速
适合做二维图像数据的特征提取
特性
完全开源,遵循BSD-2协议
Caffe提供了一整套工具集,可用于模型训练、预测、微调、发布、数据预处理以及良好的自动测试
Caffe带有一系列参考模型和快速上手例程
Caffe在国内外有比较活跃的社区,有很多衍生项目,如Caffe for Windows、Caffe with OpenCL、R-CNN等
Caffe代码组织良好,可读性强
Torch&OverFeat
简介
Torch是一个出现较早的支持大部分机器学习算法的科学计算框架
Torch使用轻量脚本语言Lua及其C/CUDA扩展模块实现
底层数值计算通过高效的OpenMP/SSE/CUDA加速,同时具备灵活性和速度优势
得益于Lua的轻量接口,Torch可以很容易接入第三方软件
相关机构:纽约大学(NYU)、Facebook AI实验室、Google DeepMind Torch均使用该框架
支持:CPU/GPU,iOS,Android,FPGA
Torch7内置包
torch:主包,提供Tensors基本数据类型和操作、简单的序列化接口和其他基本功能
lab&plot:提供标准的类似于Matlab的函数,用于创建、变换、打印Tensors
qt:qt和Lua的完全绑定,实现Torch 7 Tensors和QImages之间的透明转换
nn:提供一组标准神经网络模块以及一组容器模块,可用于定义任意有向图
image:图像处理包,提供了所有标准图像处理函数
optim:提供最陡下降法、共轭梯度法等优化算法包
unsup:包括几个非监督学习算法,如K-means、稀疏编码、自动编码器等
third-party:在上述包的基础上进一步封装不断增加的便捷软件包
应用
OverFeat是一个在ImageNet数据集中使用Torch7训练的特征提取器,实现了图像识别、定位、检测三位一体的集成系统
MxNet
面向效率和灵活性设计的深度学习框架
更加方便的多卡和多机分布式运行
两种编程接口
N维数组接口
符号接口,可以快速构建一个神经网络、实现自动求导功能
TensorFlow
机构:Google
异构分布式系统上的大规模机器学习框架,移植性好,支持多种深度学习模型
Theano
是由LISA开发的基于Python的深度学习框架,可以定义数学表达式并高效地优化、求值
支持机器学习中的逻辑回归、多层感知器、深度卷积网络等监督学习方法
支持Auto Encoder, Restricted Bolzman Machine,Deep Belief Network等无监督、半监督方法
短板:运算速度慢
CNTK
全称:Computational Network Toolkit
机构:微软
优点:高性能、高灵活性、可扩展性好
支持CNN,LSTM,RNN等流行网络结构
支持分布式训练
在纯CPU、单CPU、多GPU、多机多GPU硬件平台下都有较高性能
0 条评论
下一页