Pytorch与Tensorflow,哪个更适合你?
本文將探討PyTorch和TensorFlow這兩種流行深度學(xué)習(xí)框架之間的關(guān)鍵相似點和不同點。為什么選擇這兩個框架,而不是其他的呢?目前有很多的深度學(xué)習(xí)框架,而且很多都可用于實際的生產(chǎn),我之所以選擇這兩個只是因為我對它們特別感興趣。
起源
TensorFlow由谷歌大腦開發(fā),并且在谷歌公司中廣泛地應(yīng)用于研究和生產(chǎn)需求。它的前身是閉源的DistBelief。
PyTorch是Torch框架的表情,Torch是基于lua開發(fā)的,在Facebook公司里被廣泛使用。然而,PyTorch的出現(xiàn)并不是為了支持流行語言而對Torch進行簡單的包裝,它被重寫和定制出來是為了得到更快的速度和本地化。
比較這兩個框架最好的方法就是用它們編寫代碼。我專門為這篇文章寫了一個jupyter筆記,你可以在這里找到代碼,文章涉及到的所有的代碼都有。
首先,我們用這兩個框架為下面這個函數(shù)編寫一個簡單的近似器:
我們將嘗試用給定的_x_和函數(shù)值_f(x)_來計算未知參數(shù)_phi_的值。是的,使用隨機梯度下降算法對于這個例子來說簡直就是殺雞用牛刀,很容易就能找到解法,但是這個簡單的例子正好能實現(xiàn)我們這篇文章的目的。
我們首先用PyTorch來解決這個問題:
如果你對深度學(xué)習(xí)框架比較熟悉,那么你可能已經(jīng)注意到我們正在純手工打造梯度下降算法。這很不方便,但很幸運,PyTorch有optimize模塊,其中包含了諸如RMSProp或Adam等流行優(yōu)化算法的實現(xiàn)。我們將使用包含momentum的SGD。
PyTorch的損耗函數(shù)和指數(shù)圖
正如你所看到的,我們很快就從訓(xùn)練數(shù)據(jù)推斷出了真正的指數(shù)值。現(xiàn)在我們繼續(xù)使用TensorFlow來試試:
TensorFlow的損耗函數(shù)和指數(shù)圖
正如你所看到的,TensorFlow也能達到相同的目標(biāo)。但它需要更多的迭代次數(shù)來得到指數(shù)值,但我相信,這是因為我沒有弄清楚優(yōu)化器的參數(shù)才使得兩者的結(jié)果不具有可比性。??
現(xiàn)在我們準(zhǔn)備探討一些不同點。
TensorFlow是一個非常強大非常成熟的深度學(xué)習(xí)庫,具有非常強大的可視化功能,以及有多個可供選擇的框架來進行高級模型開發(fā)。它具有用于生產(chǎn)的部署選項,以及對移動平臺的支持。如果你有以下需求,那么TensorFlow是一個很好的選擇:
1. 開發(fā)生產(chǎn)模型
2. 開發(fā)需要部署在移動平臺上的模型
3. 需要良好的社區(qū)支持和齊全的文檔
4. 想要各種形式的豐富的學(xué)習(xí)資源
5. 想要或需要使用Tensorboard
6. 需要大規(guī)模的分布式模型訓(xùn)練
?
PyTorch仍然是一個年輕的框架,但其發(fā)展速度越來越快。如果你有以下需求,它可能會比較適合你:
1. 用于研究,或者是用于生產(chǎn)的非功能性需求并不是很苛刻
2. 需要更好的開發(fā)和調(diào)試體驗
3. 愛所有Python化的東西
然而,我們通過調(diào)研發(fā)現(xiàn),80%的0-3歲互聯(lián)網(wǎng)人沒有系統(tǒng)的學(xué)習(xí)過Tensorflow、PyTorch方向,缺乏很多項目實戰(zhàn),處于比較淺層面的對比。
網(wǎng)上解讀Tensorflow、PyTorch文章非常多但知識點零散,學(xué)習(xí) 起來抓不住重點,大多數(shù)人還都本著一說就會一學(xué)就廢的心理,看得多,動手少,所以急需一套學(xué)習(xí)資料。
最近整理一套“Tensorflow、PyTorch”兩大框架必備的學(xué)習(xí)資料,這套資料內(nèi)容非常的詳盡全面,非常適合想要進入AI人工智能領(lǐng)域的人學(xué)習(xí)。
課程講解帶人工智能兩大框架,掌握人工智能和NLP領(lǐng)域所需從零開始訓(xùn)練網(wǎng)絡(luò)到卷積神經(jīng)網(wǎng)絡(luò)再到深度學(xué)習(xí)開源框架等。包括多種機器學(xué)習(xí)算法。(資料已經(jīng)全部整理好)
為了方便沒有買百度云會員的朋友,能用2MB+/S的速度下載,特地給大家準(zhǔn)備了下載工具。
掃描下方二維碼,備注:AI,可領(lǐng)取框架資料,可獲得Pytorch與Tensorflow兩大框架視頻資料(一定要備注:AI)
(添加人數(shù)較多,請耐心等待)
感謝你的分享,點贊,再看三連??
總結(jié)
以上是生活随笔為你收集整理的Pytorch与Tensorflow,哪个更适合你?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工业解密:百度地图背后的路线时长预估模型
- 下一篇: Git使用的奇技淫巧