首頁(yè)|必讀|視頻|專(zhuān)訪(fǎng)|運營(yíng)|制造|監管|大數據|物聯(lián)網(wǎng)|量子|元宇宙|博客|特約記者
手機|互聯(lián)網(wǎng)|IT|5G|光通信|人工智能|云計算|芯片報告|智慧城市|移動(dòng)互聯(lián)網(wǎng)|會(huì )展
首頁(yè) >> 業(yè)界名博 >> 正文

TensorFlow,危!拋棄者正是谷歌自己

2022年6月20日 14:57  量子位  

收獲接近16.6萬(wàn)個(gè)Star、見(jiàn)證深度學(xué)習崛起的TensorFlow,地位已岌岌可危。

并且這次,沖擊不是來(lái)自老對手PyTorch,而是自家新秀JAX。

最新一波AI圈熱議中,連fast.ai創(chuàng )始人Jeremy Howard都下場(chǎng)表示:

JAX正逐漸取代TensorFlow這件事,早已廣為人知了,F在它就在發(fā)生(至少在谷歌內部是這樣)。

LeCun更是認為,深度學(xué)習框架之間的激烈競爭,已經(jīng)進(jìn)入了一個(gè)新的階段。

LeCun表示,當初谷歌的TensorFlow確實(shí)比Torch更火。然而Meta的PyTorch出現之后,現在其受歡迎程度已經(jīng)超過(guò)TensorFlow了。

現在,包括Google Brain、DeepMind以及不少外部項目,都已經(jīng)開(kāi)始用上JAX。

典型例子就是最近爆火的DALL·E Mini,為了充分利用TPU,作者采用了JAX進(jìn)行編程。有人用過(guò)后感嘆:

這可比PyTorch快多了。

據《商業(yè)內幕》透露,預計在未來(lái)幾年內,JAX將覆蓋谷歌所有采用機器學(xué)習技術(shù)的產(chǎn)品。

這樣看來(lái),如今大力在內部推廣JAX,更像是谷歌在框架上發(fā)起的一場(chǎng)“自救”。

 JAX從何而來(lái)?

關(guān)于JAX,谷歌其實(shí)是有備而來(lái)。

早在2018年的時(shí)候,它就由谷歌大腦的一個(gè)三人小團隊給搭出來(lái)了。

研究成果發(fā)表在了題為Compiling machine learning programs via high-level tracing的論文中:

Jax是一個(gè)用于高性能數值計算的Python庫,而深度學(xué)習只是其中的功能之一。

自誕生以來(lái),它受歡迎的程度就一直在上升。

最大的特點(diǎn)就是快。

一個(gè)例子感受一下。

比如求矩陣的前三次冪的和,用NumPy實(shí)現,計算需要約478毫秒。

用JAX就只需要5.54 毫秒,比NumPy快86倍。

為什么這么快?原因有很多,包括:

1、NumPy加速器。NumPy的重要性不用多說(shuō),用Python搞科學(xué)計算和機器學(xué)習,沒(méi)人離得開(kāi)它,但它原生一直不支持GPU等硬件加速。

JAX的計算函數API則全部基于NumPy,可以讓模型很輕松在GPU和TPU上運行。這一點(diǎn)就拿捏住了很多人。

2、XLA。XLA(Accelerated Linear Algebra)就是加速線(xiàn)性代數,一個(gè)優(yōu)化編譯器。JAX建立在XLA之上,大幅提高了JAX計算速度的上限。

3、JIT。研究人員可使用XLA將自己的函數轉換為實(shí)時(shí)編譯(JIT)版本,相當于通過(guò)向計算函數添加一個(gè)簡(jiǎn)單的函數修飾符,就可以將計算速度提高幾個(gè)數量級。

除此之外,JAX與Autograd完全兼容,支持自動(dòng)差分,通過(guò)grad、hessian、jacfwd和jacrev等函數轉換,支持反向模式和正向模式微分,并且兩者可以任意順序組成。

當然,JAX也是有一些缺點(diǎn)在身上的。

比如:

1、雖然JAX以加速器著(zhù)稱(chēng),但它并沒(méi)有針對CPU計算中的每個(gè)操作進(jìn)行充分優(yōu)化。

2、JAX還太新,沒(méi)有形成像TensorFlow那樣完整的基礎生態(tài)。因此它還沒(méi)有被谷歌以成型產(chǎn)品的形式推出。

3、debug需要的時(shí)間和成本不確定,“副作用”也不完全明確。

4、不支持Windows系統,只能在上面的虛擬環(huán)境中運行。

5、沒(méi)有數據加載器,得借用TensorFlow或PyTorch的。

……

盡管如此,簡(jiǎn)單、靈活又好用的JAX還是率先在DeepMind中流行起來(lái)。2020年誕生的一些深度學(xué)習庫Haiku和RLax等都是基于它開(kāi)發(fā)。

這一年,PyTorch原作者之一Adam Paszke,也全職加入了JAX團隊。

目前,JAX的開(kāi)源項目在GitHub上已有18.4k標星,比TensorFlow高了不少了。

值得注意的是,在此期間,有不少聲音都表示它很可能取代TensorFlow。

一方面是因為JAX的實(shí)力,另一方面主要還是跟TensorFlow自身的很多原因有關(guān)。

為什么谷歌要轉投JAX?

誕生于2015年的TensorFlow,曾經(jīng)也風(fēng)靡一時(shí),推出后很快超過(guò)了Torch、Theano和Caffe等一眾“弄潮兒”,成為最受歡迎的機器學(xué)習框架。

然而在2017年,煥然一新的PyTorch“卷土重來(lái)”。

這是Meta基于Torch搭建的機器學(xué)習庫,由于上手簡(jiǎn)單、通俗易懂,很快受到一眾研究者的青睞,甚至有超過(guò)TensorFlow的趨勢。

相比之下,TensorFlow卻在頻繁更新和界面迭代中變得越來(lái)越臃腫,逐漸失去了開(kāi)發(fā)者的信任。

(從Stack Overflow上的提問(wèn)占比來(lái)看,PyTorch逐年上升,TensorFlow卻一直停滯不前)

在競爭之中,TensorFlow的缺點(diǎn)逐漸暴露出來(lái),API不穩定、實(shí)現復雜、學(xué)習成本高等問(wèn)題并沒(méi)有隨著(zhù)更新解決多少,反而結構變得更復雜了。

相比之下,TensorFlow卻沒(méi)有繼續發(fā)揮比較能打的“運行效率”等優(yōu)勢。

在學(xué)術(shù)界,PyTorch的使用率正逐漸超過(guò)TensorFlow。

尤其是在各大頂會(huì )如ACL、ICLR中,使用PyTorch實(shí)現的算法框架近幾年已經(jīng)占據了超過(guò)80%,相比之下TensorFlow的使用率還在不斷下降。

也正是因此,谷歌坐不住了,試圖用JAX奪回對機器學(xué)習框架的“主導權”。

雖然JAX名義上不是“專(zhuān)為深度學(xué)習構建的通用框架”,然而從發(fā)布之初起,谷歌的資源就一直在向JAX傾斜。

一方面,谷歌大腦和DeepMind逐漸將更多的庫構建在JAX上。

包括谷歌大腦的Trax、Flax、Jax-md,以及DeepMind的神經(jīng)網(wǎng)絡(luò )庫Haiku和強化學(xué)習庫RLax等,都是基于JAX構建的。

據谷歌官方表示:

JAX生態(tài)系統開(kāi)發(fā)中,也會(huì )考慮確保其與現有TensorFlow庫(如Sonnet和TRFL)的設計(盡可能)保持一致。

另一方面,更多的項目也開(kāi)始基于JAX實(shí)現,最近爆火的DALL·E mini項目就是其中一個(gè)。

由于能更好地利用谷歌TPU的優(yōu)勢,JAX在運行性能上比PyTorch要好得多,更多之前搭建在TensorFlow上的工業(yè)界項目也正在轉投JAX。

甚至有網(wǎng)友調侃JAX如今爆火的原因:可能是TensorFlow的使用者實(shí)在無(wú)法忍受這個(gè)框架了。

那么,JAX到底有沒(méi)有希望替代TensorFlow,成為與PyTorch抗衡的新力量呢?

 更看好哪一個(gè)框架?

總體來(lái)看,很多人還是很堅定地站PyTorch。

他們似乎不喜歡谷歌每年都出一個(gè)新框架的速度。

“JAX雖然很吸引人,但還不夠具備“革命性”的能力促使大家拋棄PyTorch來(lái)使用它!

但看好JAX的也并非少數。

就有人表示,PyTorch是很完美,但JAX也在縮小差距。

甚至還有人瘋狂給JAX打call,表示它比PyTorch要厲害10倍,并稱(chēng):如果Meta不繼續加把勁兒的話(huà)谷歌就會(huì )贏(yíng)了。(手動(dòng)狗頭)

不過(guò),總有不怎么care誰(shuí)輸誰(shuí)贏(yíng)的人,他們的目光放得很長(cháng)遠:

沒(méi)有最好,只有更好。最重要的是更多玩家和好的idea統統都加入進(jìn)來(lái),讓開(kāi)源和真正優(yōu)秀的創(chuàng )新畫(huà)上等號。

編 輯:王洪艷
聲明:刊載本文目的在于傳播更多行業(yè)信息,本站只提供參考并不構成任何投資及應用建議。如網(wǎng)站內容涉及作品版權和其它問(wèn)題,請在30日內與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除內容。本站聯(lián)系電話(huà)為86-010-87765777,郵件后綴為#cctime.com,冒充本站員工以任何其他聯(lián)系方式,進(jìn)行的“內容核實(shí)”、“商務(wù)聯(lián)系”等行為,均不能代表本站。本站擁有對此聲明的最終解釋權。
相關(guān)新聞              
 
人物
工信部張云明:大部分國家新劃分了中頻段6G頻譜資源
精彩專(zhuān)題
專(zhuān)題丨“汛”速出動(dòng) 共筑信息保障堤壩
2023MWC上海世界移動(dòng)通信大會(huì )
中國5G商用四周年
2023年中國國際信息通信展覽會(huì )
CCTIME推薦
關(guān)于我們 | 廣告報價(jià) | 聯(lián)系我們 | 隱私聲明 | 本站地圖
CCTIME飛象網(wǎng) CopyRight © 2007-2024 By CCTIME.COM
京ICP備08004280號-1  電信與信息服務(wù)業(yè)務(wù)經(jīng)營(yíng)許可證080234號 京公網(wǎng)安備110105000771號
公司名稱(chēng): 北京飛象互動(dòng)文化傳媒有限公司
未經(jīng)書(shū)面許可,禁止轉載、摘編、復制、鏡像