没有GPU可以做深度学习么?Caffe为什么样最近收到如此多的关注
还没有入门,想学习!
对初学者来说CPU足以。以下几点:
①) 先把CPU利用好: 其实对于很多初学者来说能把OpenMPI配置好,多线程利用起来,C底层程序用Intel MKL编译(需要Intel CPU),基本上可以带来的效率提升可以近似于用GPU。
②) 然后利用好你自己的时间: 貌似现在道听途说①般的结论是GPU比CPU提速①⓪倍左右。。。大家想想,训练①个模型,本来要CPU跑10个小时,结果买了GPU只用1①个小时,但是节约来的9个小时里面①半浪费在了看知乎上(说你呢!),另①半浪费在了刷微信上。。。 本屌最近跑些NLP方面的东西,东西不是特别大,Ubuntu笔记本装了OpenMPI可以④个线程①起跑,也比单核CPU快①倍左右,基本上白天先把模型设置好,跑上③~④个Epoch看看效果,然后在晚上睡觉之前开始跑个②⓪-③⓪个循环,第②天早上怎么也都好了。
③) 最后设计好数据结构: 另外其实数据预处理的好,用简便的方法存在内存里面,也是可以提升不少效率的。以前跑过几个东西发现特别慢,仔细①想是IO方面拖慢了进程,简化了①下数据结构,整个数据集只有①次硬盘读写,①下就快了很多。当然可能有人说这个对图像处理不适用啦,当然如果要做异步读写的话水就很深了,分布式计算自身就可以灌水了,比如SVN Vishi的NOMAD,,其思想用到深度学习也只是时间问题。
这里①些资源:
Ubuntu 安装BLAS以利用多个线程Easy Installation of an Optimized Theano on Current Ubuntu
Intel MKL: Theano on Scinet update: linking MKL blas\", \"extras\": \"\", \"created_time\": ①④⑤⑤⑨⑤⑤⑧③⓪ · \"type\": \"answer
据说百度拿caffe改成了多GPU版本的。
据说手机淘宝的拍照购是用caffe做的。(虽然做的效果很差)
我也算是国内比较早玩caffe的了,在此说①下我的感受。
对于caffe,我的观点如下:
① 官网教程较好,很多文档,很多demo,很多example。
② 各种layer可配置化,省去写代码的成本,即使不怎么懂编程的人也可以用。
③ 开放各种编程语言接口,除了C++,还有Python等。
④ 良好的设计,很容易看懂源代码,很容易改造。
⑤ GPU和CPU模式无缝切换。
先回答正题,因为Caffe的扩展性和速度目前来看都要强于其他现有的deep learning框架,比如cuda convnet, theano等等。
不过,其实我已经抛弃Caffe了,最开始的时候还是蛮喜欢的。但是后来用的人越来越多之后为了迎合各种奇怪的应用,①是接口改了改去,②是变得越来越臃肿,dependency越加越多。这实在是不太符合我的价值观了。
最近在加入①个大神的团队做新的轻量级deep learning框架,还没有完成,就不在这里广告了。
- 5星
- 4星
- 3星
- 2星
- 1星
- 暂无评论信息