2017-06-29 86 views
-2

我用Numpy和scipy實現了神經網絡。優化。基本上,我使用前饋和後向傳播創建了成本函數和漸變,然後將我的輸入(特徵),輸出(標籤)和權重提供給Scipy Optimize以最小化成本函數。在神經網絡中使用張量流是否有優勢

現在我遇到了PyBrain和Tensorflow。在Tensorflow中,據我所知,我們需要實現相同的前饋和後向傳播,然後使用Tensorflow模塊進行優化。所以看起來編程複雜度幾乎相同。我錯過了什麼,或者我的理解不正確?否則,使用Tensorflow有什麼優勢嗎?

python實現神經網絡的最佳實踐是什麼?我應該去Pybrain還是Tensorflow,或者嘗試實施自己。

回答

0

是的,有些。與火炬和Theano這樣的開源市場的長期參與者相比,TensorFlow在營銷方面更勝一籌。

  1. 像谷歌這樣一家大公司的支持對於TensorFlow來說是一個巨大的優勢。
  2. TensorFlow具有比Theano和Torch更好的計算圖表可視化。
  3. TensorFlow和Theano在二階梯度分化方面更好。
  4. Theano和火炬更深層的學習[R & d框架,但TensorFlow既是的R & d和部署框架。
  5. Tensorflow是python。
  6. Tensorflow在大型GPU集羣的培訓中具有潛在的優勢。

同時對於其競爭對手 - 1. Theano在許多方面仍然比TensorFlow更快,並支持更廣泛的操作。 2.火炬比Theano和TensorFlow更適合調試。

如果你想獲得啓發,使用Tensorflow,像我,看https://www.youtube.com/watch?v=nWJZ4w0HKz8

2

Tensorflow有3個優點:

1. Tensorboard自帶的網絡可視化

這可能是Tensorflow吸引開發者參與其中的主要原因。即使是複雜的神經網絡也能輕鬆觀察 Check Tensorboard here!

1.不斷髮展

Tensorflow是相對較新,但發展日新月異。所有的算法都是由專家編寫的。
更新算法的新版本。事實上,谷歌在其項目中使用它,所以你可以確信它們是人們可以找到的最好的算法。


2。使用佔位符創建整個網絡

佔位符使我們能夠分離網絡配置階段和評估階段。 雖然它看起來可能是一種開銷,但它實際上有助於在不做任何修改的情況下擴展網絡。

所以,如果你使用的是現在或將來如果u想將它擴展到絕對大型數據集Tensorflow

您可以Tensorflow或其他的東西繼續下去,但我會建議你給Tensorflow企圖。