OpenCL / AMD:深度学习
虽然“googl'ing”和做一些研究,我没有find任何严重/stream行的科学GPGPU计算和OpenCL的AMD硬件框架/ SDK。 有没有我错过的文学和/或软件?
特别是我对深度学习感兴趣。
对于我所知的所有deeplearning.net推荐的NVIDIA硬件和CUDA框架。 另外,我所知道的所有大型深度学习框架,例如Caffe , Theano , Torch , DL4J ……都专注于CUDA,并且不打算支持OpenCL / AMD 。
此外,人们可以find大量的科学论文以及基于CUDA的深度学习任务的相应文献,但基于OpenCL / AMD的解决scheme几乎没有。
2015/16年度基于OpenCL / AMD的解决scheme是否有可能出现新的或现有的科学框架?
OpenCL / AMD 深度学习的良好开端是什么? 任何文学? 教程? 杂项来源?
编辑1见Mikael Rousson的答案 – 亚马逊现在是前进的方向,因为您可以从中“租借”计算能力。
编辑2我已经创build了一系列关于如何使用theano
设置Amazon EC2实例进行深度学习的theano
。 这比在个人机器上运行要方便得多。
我和你自己的情况一样,因为我有一台配备英特尔Irisgraphics处理器的MacBook Pro。 我花了一个星期的最好的一部分,通过所有可能的解决方法,我将不胜感激,替代我提供的。
我现在最好的解决scheme是:
- 安装
python
库theano
并利用其支持的GPU并继续更新到最新的开发版本。 - 购买NVIDIA显卡,并在个人电脑上使用
- 如果你绝对需要OpenCL的解决scheme,并且你愿意从高层次的理解(没有教程)看代码, 那么看看DeepCL和pyOpenCl 。
我发现任何使用OpenCL的解决scheme,例如pyOpenCl ,还没有用于深度学习的用户友好界面,即,在替代方法中编码需要更长的时间,而不是快速编码并且在CPU上运行。 虽然如此,这里有深度学习的最佳替代OpenCL库:
- Python – DeepCL
- 乔纳森的Torch7实用程序库 – C ++
开发中
-
theano
正在通过clBLAS
增加对OpenCL的支持 - 看来,
Caffe
正处于开发阶段 ,join了OpenCL支持,但在进程中还有点落后
—八月2017更新在AMD方面发生的新事物—
现在实际上可以在大多数AMD硬件上运行任何库
截至2015年10月25日
看来AMD和其他公司已经开始推出几个OpenCL加速框架,以进一步深化学习。 所以是OpenCL支持是现在存在的deeplearning 🙂
这是OpenCL加速框架或工具的列表,这些框架或工具的开发主要是深入学习。 我希望他们能在未来的几年里得到更新
我们现在知道(2015年10月25日),有三个深刻的学习框架,非常受研究人员欢迎,并且看到了一些商业产品
-
Theano
-
咖啡
-
火炬
caffe有一个相当不错的OpenCL支持,因为amd开发了caffe的完整版本,它几乎支持caffe的所有function,并且正在积极开发。 它被命名为OpenCL Caffe。 这里是存储库
OpenCL Caffe
如果你正在考虑性能,那么根据该网站(我自己没有标出),它会在AMD R9 Fury硬件(培训)中每秒提供约261幅图像或每天2250万幅图像。 与nvidia K40进行比较,每天处理4000万张图像。 所以根据现场的情况可以拿出六分之一的钱(考虑k40是3000 $卡,r9愤怒是600元左右)。 然而,使用任何消费卡将给你一个关于内存(vram)的问题,这在深度学习中是相当重要的。
近几天的火炬也似乎有不俗的OpenCL支持。 但是它由一个人维护。 它声称完全支持火炬的所有function。 然而它并没有给出关于性能的想法。 这是存储库。 它被积极维护。
cltorch
目前似乎没有一个体面的openano后台theano框架,但工作正在进行中。 简单的程序可以用当前的版本来完成。
还有一些其他的opencl框架也用于深入学习。 整理它们需要一些时间,看它们是否正常工作。
另一种方法是在Amazon Web Services上使用GPU实例。 您可以find已安装常用深度学习软件包的AMI。 例如:
- 火炬: https : //github.com/torch/torch7/wiki/Cheatsheet#ec2-public-ami
- Theano + Caffe: https ://www.kaggle.com/forums/f/208/getting-started/t/11505/an-aws-ami-mainly-for-deep-learning
提示:使用现货实例获得更便宜的价格(g2.2xlarge大约10美分/小时)。
我正在写Tensorflow的opencl 1.2支持。 https://github.com/hughperkins/tensorflow-cl目前支持:;
- blasmatrix乘法
- 梯度
- 本征操作,如:减less,argmin / argmax,每元素操作(二元和一元)
TensorFlow现在在路线图上支持OpenCL。
请参阅: Github问题 。
希望不会离工作版本太远。
PlaidML( https://github.com/plaidml/plaidml )是一个完全开源的深度学习运行时,运行在OpenCL之上,并与Keras集成,提供熟悉的面向用户的API。 在回购中的README有更详细的地位,目前在Linux上的推断推断得到了很好的支持,但是我们( http://vertex.ai )正在努力尽可能快地扩展完整性和平台支持。 我们的持续集成机器包括各种AMD和NVIDIA GPU,现在所有的Linux,但我们也在努力添加Mac和Windows。
请查看https:////01.org/intel-deep-learning-framework – 英特尔®深度学习框架(IDLF)为加速深度卷积neural network的英特尔®平台提供统一的框架。 它是开源的,所以你可以把它移植到AMD硬件上。 酷炫的东西:它可以运行在具有英特尔虹膜graphics的MacBook Pro上。