Re: [問題] deep learning lenet 訓練
另外,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?
--
To iterate is human, to recurse, divine.
遞迴只應天上有, 凡人該當用迴圈. L. Peter Deutsch
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.185.95.121
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1452896724.A.A25.html
推
01/16 10:40, , 1F
01/16 10:40, 1F
推
01/16 14:09, , 2F
01/16 14:09, 2F
→
01/16 14:10, , 3F
01/16 14:10, 3F
→
01/16 14:11, , 4F
01/16 14:11, 4F
→
01/16 14:13, , 5F
01/16 14:13, 5F
→
01/16 14:15, , 6F
01/16 14:15, 6F
→
01/16 14:16, , 7F
01/16 14:16, 7F
→
01/16 14:17, , 8F
01/16 14:17, 8F
推
01/16 17:31, , 9F
01/16 17:31, 9F
推
01/16 20:43, , 10F
01/16 20:43, 10F
推
01/16 22:53, , 11F
01/16 22:53, 11F
推
01/17 21:16, , 12F
01/17 21:16, 12F
推
01/20 13:02, , 13F
01/20 13:02, 13F
→
03/21 11:19, , 14F
03/21 11:19, 14F
討論串 (同標題文章)
完整討論串 (本文為第 4 之 7 篇):