Re: [问题] deep learning lenet 训练

楼主: yoco315 (眠月)   2016-01-16 06:25:21
另外,deep learning research 用 caffe 不错阿
即使是 research,training 的速度还是很重要的,应该说非常重要
不然 google 干麻花这么多夫下去作平行化?
这边要澄清一件事,作 deep learning 你的资料量一定要大
资料量不大的话,你用 deep learning 其实意义不大
传统的 svm/boosting/random-forrest 参数对了不见得比较差
你要真的做出一些显著差异,资料量一定要大,但资料量一大,速度就很重要
caffe 如果真要说有什么缺点,不是他为了快牺牲可用性,而是他还不够快
他以前只能单机器单张 GPU,后来可以单机器多 GPU,但现在还是无法多机器
如果能用日前刚 open source 的 TensorFlow 的话,完全推荐你用 TensorFlow
原因如下:
一、效能
如果你有多机器
虽然目前 open 出来的 TensorFlow 只有单机版本,但跨机器的版本很快会释出
TensorFlow 会自动根据 model 跟 training data 进行跨机器平行化
如果你有一台以上的机器,在 training time 上面,TensorFlow 这会是你的首选
如果你只有单机器
如果你只有一台机器,你可能会看到有些 benchmark
说 TensorFlow 比其他 library 慢,没错,这是真的,不过这是有原因的
因为当初 google 开发 TensorFlow 的时候,用的是自己的 compiler
他们没想到外面大家用的 compiler 竟然没作某些最佳化 = =||
跟他们家里面的比起来竟然差这么多,他们也很讶异
他们正在想办法改善这点,预计应该是会跟 caffe 差不了太远
二、简单好写
TensorFlow 的 model 比 caffe 用的 protobuf 好写很多
而且你设计新的 layer 不用自己推导 back-propagation 的方程式微分
他会自动帮你推导,省事很多
三、可移植性
未来 Google 的 Machine Learning As A Service 极有可能可以直接吃 TensorFlow
你的 model 都不用改,丢上云端就可以直接享受多机器平行 train 了
但如果你用的是 caffe,你可能还得写程式把那个 protobuf 转成 TensorFlow
大概降。
不过如果你还是坚持想用 caffe,还是可以问。
会的我就尽量回答 @@ 我不会的我会去找人帮看 XD
话说台湾现在有哪些单位在作 deep learning 阿?
大家能不能签到一下阿 QQ?
作者: EdisonX (卡卡兽)   2016-01-16 10:40:00
推推 好专业
作者: s501082001 (曹草逼)   2016-01-16 14:09:00
谢谢您详细的说明,因为deep learning现在摸的时间还不是很长,说真的现在连优化的部分都还没想到目前是只想到把环境与功能还有原理先摸熟并且我目前是在windows上执行,因为之后跟C#的程式整合使用其实我是硕二学生,程式的部分是硕一把观念与架构建立起来,现在也不敢说懂了很多,还望您不吝指教
作者: bdvstg (bdvstg)   2016-01-16 17:31:00
大推~ 谢谢您
作者: bowin (尽其在我)   2016-01-16 20:43:00
推 yoco 的分析!
作者: damody (天亮damody)   2016-01-16 22:53:00
作者: kkc (卡西)   2016-01-17 21:16:00
推一个,我们家有在弄,上次很开心可以看到 yoco 大<(_ _)>
作者: storm654321 (P助)   2016-01-20 13:02:00
推专业

Links booklink

Contact Us: admin [ a t ] ucptt.com