谷歌工程師:TensorFlow已重獲新生;網(wǎng)友:我還是用PyTorch
在TensorFlow2.0中,解決了這個問題。
乾明 發(fā)自 凹非寺
量子位 報道 | 公眾號 QbitAI
道友留步!TensorFlow已重獲新生。
在“PyTorch真香”的潮流中,有人站出來為TensorFlow說話了。
這次來自谷歌的工程師Cassie Kozyrkov。她發(fā)表博文稱,TensorFlow升級到2.0版本后有了翻天覆地的變化, 對新手更加友好了。
引發(fā)這一變化的,是Keras。
在TensorFlow 2.0中,Keras API將成為TensorFlow中構(gòu)建和訓練模型的核心高級API。
在TensorFlow啟動項目將變得更簡單。
Kozyrkov說, 與TensorFlow 1.X的版本相比,這就是脫胎換骨的變化。
難用的TensorFlow1.X
想要掌握TensorFlow1.X,需要花費不少力氣,學習曲線非常陡峭,普通用戶只能遠遠看著。
背后的原因在于,Tensorflow是為從研究到生產(chǎn)的大規(guī)模模型而設(shè)計的,核心是性能。雖然難學,但只要堅持下去,就能進入機器學習從業(yè)者行列了。
然后,就可以用機器學習做一些不可思議的事情了,比如說發(fā)現(xiàn)新的恒星,推動醫(yī)學進步…..
但很可惜,這太難用了,只有少數(shù)人能夠掌握這種力量。
很多新的AI研究人員,以及不少Tensorflow用戶,都喊著“真香”,轉(zhuǎn)投PyTorch,畢竟隔壁家的不需要花太多力氣。
還好有Keras,讓不少人感受到了一些安慰。
Keras,是一個用于逐層構(gòu)建模型的框架,可以與多個機器學習框架一起工作,它從一開始就是Pythonic的,設(shè)計靈活,易于學習,吸引了不少人的使用和支持。
雖然它是一個從TensorFlow 內(nèi)部訪問的高級 API,但它跟TF沒啥關(guān)系。
開發(fā)者得在好用的Keras和性能強大的TensorFlow之間做出選擇。
這就很容易給人一種“PyTorch”真香的感覺。
在TensorFlow2.0中,解決了這個問題。
TensorFlow2.0的變化
谷歌TF工程負責人Karmel Alliso表示,開發(fā)者不應(yīng)該在簡單的 API 和可伸縮的 API 之間做出選擇,要有一個高級的API,不論是研究MNIST還是研究行星,都能搞定。
于是,Keras成了TensorFlow的高級 API,而且是可擴展的,可以直接從tf.keras使用 TensorFlow的所有高級功能。
而且Keras的簡單性,也帶到了TensorFlow上。
這種結(jié)合,會大幅度減少學習TensorFlow的門檻,對于初學者來說,是非常友好的。
現(xiàn)在,TensorFlow2.0已經(jīng)推出了Alpha版,如果你有想法, 可以收好下面的教程傳送門:
https://www.tensorflow.org/alpha
教程分成了初學者版和老司機版:
初學者版,用的是Keras Sequential API,最簡單的入門大法;
老司機版,展示了怎樣用命令式來寫正向傳播、怎樣用GradientTape來寫自定義訓練loop,以及怎樣用tf.function一行代碼自動編譯。
網(wǎng)友:我還是用PyTorch
這篇博文發(fā)表了之后,Medium上獲得了3K多的“鼓掌”,在Reddit上有了近百條討論。
TensorFlow和Keras更好地結(jié)合起來,讓一些人感覺挺好。但在討論中,有不少網(wǎng)友依舊心心念著“PyTorch”。
有人評價稱,這還是沒有PyTorch好用,PyTorch感覺就像NumPy,可以在一天內(nèi)學會,然后它就能正常工作。而學習TF(甚至2.0)會讓人感覺自己很笨。
有人說,只要我們有PyTorch,誰會關(guān)心TF。
甚至還有“脫粉”的現(xiàn)象:
好吧,至少現(xiàn)在我有足夠的動力離開TensorFlow并切換到PyTorch。
你呢?
TensorFlow 2.0還是PyTorch?



