原文標(biāo)題:《PyTorch 統(tǒng)治學(xué)術(shù)論文,TensorFlow 只占 4%,LeCun:還能為啥?》
“對(duì)于 Python 而言,為什么 TensorFlow 正在慢慢死去?”
這篇觀點(diǎn)尖銳的文章一出,就被 LeCun 的轉(zhuǎn)發(fā)推向風(fēng)口浪尖:
還能為啥,當(dāng)然是因?yàn)?PyTorch 啊。
緊接著“PyTorch 和 TensorFlow 誰更好?”這個(gè)經(jīng)久不息的論戰(zhàn)再次被掀起,網(wǎng)友們也紛紛開始從文章中找到共鳴、或予以反駁。
有 TensorFlow 深度使用者現(xiàn)身說法:現(xiàn)在我改用 PyTorch 了。
但也有嘗試過好幾種框架的網(wǎng)友表示:TensorFlow 和 Keras 做快速實(shí)驗(yàn)更方便,而且 TensorFlow 看起來對(duì) Apple M1 GPU 支持更好。
當(dāng)然,在這里面也出現(xiàn)了一些獨(dú)特的聲音:
JAX 不比這兩個(gè)框架好多了?
所以,文章作者究竟是如何得出這一結(jié)論的?
“PyTorch 統(tǒng)治學(xué)術(shù)論文”
這篇文章的作者 Ari Joury,是法國(guó)索邦大學(xué)的粒子物理學(xué)博士生,但對(duì)將 AI 和機(jī)器學(xué)習(xí)方法應(yīng)用在粒子物理學(xué)探索上很感興趣。
作為一個(gè) Python 愛好者,她在接觸兩種框架時(shí)察覺到了二者的區(qū)別。
好奇哪種框架目前關(guān)注度更高,她便對(duì) Stack Overflow 上 3 種主流框架 Keras、TensorFlow 和 PyTorch 進(jìn)行了一個(gè)統(tǒng)計(jì):
簡(jiǎn)單來說,就是 TensorFlow 關(guān)注度更高,Keras 陷入停滯甚至下降,而 PyTorch 雖然起步較晚,但這兩年一直呈現(xiàn)關(guān)注度穩(wěn)定上升的趨勢(shì)。
(不過,也有網(wǎng)友認(rèn)為文章中用 Stack Overflow 數(shù)據(jù)做論據(jù),根本不能算是統(tǒng)計(jì)框架的“受歡迎度”,反而只能證明這些框架“讓人困惑的程度”)
那么,為什么會(huì)得出“對(duì) Python 愛好者來說,TensorFlow 關(guān)注度會(huì)繼續(xù)下降”這一結(jié)論?
Ari Joury 給出了幾大理由。
其一,PyTorch 用起來“更 Python”。
Ari Joury 表示,她使用 Python 編寫 TensorFlow 框架的工作量,可能是 PyTorch 的兩倍,此外后者編寫代碼的感受比 TensorFlow 更自然。
其二,PyTorch 可用模型更多,且更適合學(xué)生和研究者使用。
據(jù)統(tǒng)計(jì),在 HuggingFace 中,85% 的大模型框架是用 PyTorch 實(shí)現(xiàn)的。
剩余的框架中,除了多個(gè)框架實(shí)現(xiàn)以外,只有 8% 的大模型框架是通過 TensorFlow 實(shí)現(xiàn)的。
這意味著 PyTorch 在 AI 大模型研究者中受歡迎程度更高。
不止大模型,使用 PyTorch 實(shí)現(xiàn)論文研究框架的人,變得越來越多。
這一觀點(diǎn)也在 Papers with Code 網(wǎng)站統(tǒng)計(jì)上得到了印證。
在代碼開源的那些論文研究中,單從框架使用率來看,這 4 年來 PyTorch 占比正急劇上升。
PyTorch 從最初和 TensorFlow 持平,到如今遠(yuǎn)超 TensorFlow、穩(wěn)定成為使用率第一(占比 62%)的框架,相比之下 TensorFlow 占比只有 4%:
其三,PyTorch 的生態(tài)發(fā)展更快。
雖然目前 TensorFlow 在生態(tài)體系上發(fā)展比 PyTorch 更好,但從 PyTorch 使用增長(zhǎng)情況來看,這一趨勢(shì)將在不久的將來得到逆轉(zhuǎn)。
當(dāng)然,TensorFlow 自身也有一些不可取代的優(yōu)勢(shì),例如部署更方便(類似 TensorFlow Serving 和 TensorFlow Lite 的工具很多)、以及對(duì)其他語言的支持更好等。
畢竟目前對(duì)于 JavaScript、Java、C++、Julia 和 Rust 等語言來說,TensorFlow 還是更好的選擇。
PyTorch 則基本以 Python 為中心,即使有個(gè) C++ API,但其他語言的整體支持仍然比不上 TensorFlow。
因此 Ari Joury 最終認(rèn)為,這兩個(gè)框架的選擇,很大程度上取決于用戶對(duì) Python 的喜愛程度。
所以,那些 AI 大牛們又是怎么站隊(duì)的呢?
AI 大牛們選擇哪些框架?
除了 Yann LeCun 一直是 PyTorch 的深度支持者以外(畢竟是 Meta 的人),不少 AI 大牛也都表態(tài)過自己更看好的框架。
至少在幾年前 TensorFlow 推出 2.0 的時(shí)候,“TF2.0 和 PyTorch 誰更好”這個(gè)話題就已經(jīng)開始了。
當(dāng)時(shí),前 Kaggle 總裁兼首席科學(xué)家、fast.ai 創(chuàng)始人 Jeremy Howard,更看好 PyTorch 框架。
Keras 創(chuàng)始人 Fran?ois Chollet,則在這個(gè)話題中投了 TensorFlow 一票,當(dāng)時(shí)他認(rèn)為 PyTorch 會(huì)走向下坡路。
至少在 2020 年的時(shí)候,他的觀點(diǎn)依舊如此:“如果你是 PyTorch 粉絲,我的工作與你無關(guān)?!?/p>
但如今來看,PyTorch 依舊保持一個(gè)活躍的狀態(tài)。
你更看好哪個(gè)深度學(xué)習(xí)框架呢?
參考鏈接:
[1]https://twitter.com/ylecun/status/1614186881171742720
[2]https://levelup.gitconnected.com/why-tensorflow-for-python-is-dying-a-slow-death-ba4dafcb37e6
[3]https://paperswithcode.com/trends
本文來自微信公眾號(hào):量子位 (ID:QbitAI),作者:蕭簫
廣告聲明:文內(nèi)含有的對(duì)外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時(shí)間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。