圖片來源@視覺中國

文 | 郭華

2015年,Google發(fā)布了機(jī)器學(xué)習(xí)框架TensorFlow,憑借其在技術(shù)上無可爭議的統(tǒng)治地位,TensorFlow迅速成為這一領(lǐng)域的霸主。

2017年,TensorFlow如日中天之際,F(xiàn)acebook發(fā)布了PyTorch,誰也沒有想到,短短四年后,它竟把前者從王座上拉了下來。

剝離正義與邪惡后,從某種意義上來說,這就大衛(wèi)打敗巨人歌利亞的故事。

01 機(jī)器學(xué)習(xí)框架簡史

什么是機(jī)器學(xué)習(xí)框架?

這要從機(jī)器學(xué)習(xí)說起。

大家應(yīng)該都聽過人工智能,機(jī)器學(xué)習(xí)就是人工智能的一種實(shí)現(xiàn)手段。機(jī)器學(xué)習(xí)之父Tom Mitchell曾下過這么一個定義——“如果一個程序可以在任務(wù)T上,隨著經(jīng)驗(yàn)E的增加,效果P同步增加,則稱這個程序可以學(xué)習(xí)”。

這里有兩個要點(diǎn),第一是程序,第二是經(jīng)驗(yàn)。程序的核心是模型,而經(jīng)驗(yàn)則表現(xiàn)為數(shù)據(jù)。其實(shí)這個定義也覆蓋了大數(shù)據(jù)的概念,只不過大數(shù)據(jù)一般強(qiáng)調(diào)數(shù)據(jù),機(jī)器學(xué)習(xí)則更突出模型。

而機(jī)器學(xué)習(xí)框架,簡單來說就是一套為機(jī)器學(xué)習(xí)服務(wù)的工具,用以加速模型的開發(fā)與應(yīng)用。

就像你可以用樂高快速搭建出房子、汽車等各種各樣的模型一樣,樂高就是一種框架。

所以機(jī)器學(xué)習(xí)框架和機(jī)器學(xué)習(xí)的關(guān)系,就像生產(chǎn)關(guān)系和生產(chǎn)力一樣,機(jī)器學(xué)習(xí)技術(shù)的發(fā)展決定框架的形態(tài),而框架反過來又可以促進(jìn)前者的發(fā)展。

比較有名的框架,根據(jù)誕生時間排序,主要有2002年的Torch,2007年的Theano,2013年的Caffe,2015年的TensorFlow和Keras和2017年的PyTorch這六個。

當(dāng)然,這些只是和本主題相關(guān)的,其它還有很多傳統(tǒng)AI框架和庫,它們每個都滿足了某種特定場景,但總體上來看,可以說是多點(diǎn)散發(fā)。

直到2016年AlphaGo大戰(zhàn)李世石,這似乎是一個奇點(diǎn)事件。

我記得首局李世石便投子認(rèn)輸了。那時我們正在云南團(tuán)建,AlphaGo不僅打敗了李世石,也打敗了云南的美景,一路上所有人都在談?wù)撍?/p>

用李安的話說,“我看不懂,但我大受震撼。”

受震撼的不止我們,全世界的人和資本都受到了震撼。

AlphaGo用的技術(shù)是深度學(xué)習(xí),深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一種,其特征在模型上,深度學(xué)習(xí)的模型是神經(jīng)網(wǎng)絡(luò)模型。

AlphaGo之后,機(jī)器學(xué)習(xí)的方向開始朝深度學(xué)習(xí)統(tǒng)一。

對底層框架來說,這相當(dāng)于吹響了沖鋒的號角。

經(jīng)過不斷的分分合合,它們逐漸形成了兩大陣營。

一個是TensorFlow陣營。

TensorFlow 2015年由Google開源。其設(shè)計理念和Theano非常相似,所以在Google加持的TensorFlow出現(xiàn)之后,Theano就沒什么存在的必要了。而且Theano的關(guān)鍵創(chuàng)始人Ian Goodfellow也一直在谷歌工作。2017年,Theano官宣不再維護(hù),同年,Keras被添加到了TensorFlow之中。這構(gòu)成了實(shí)力強(qiáng)勁的第一陣營。

一個是PyTorch陣營。

PyTorch 2017年由Facebook開源。PyTorch設(shè)計之初可以看成是Torch的Python版。和Theano類似,Torch的關(guān)鍵創(chuàng)始人也一直在Facebook。Caffe的創(chuàng)始人賈揚(yáng)清在完成Caffe后先是去了Google開發(fā)TensorFlow,隨后又到了Facebook。在Facebook,他開發(fā)了Caffe2。2018年,Torch被標(biāo)注為不再活躍,其主要維護(hù)者宣布精力將主要投入到PyTorch上,同年,Caffe2也被合并到了PyTorch之中。這構(gòu)成了第二陣營。

在一個要素自由流動的市場里,行業(yè)成熟的標(biāo)志是出現(xiàn)頭部公司。

所以TensorFlow和PyTorch的脫穎而出,意味著決戰(zhàn)將在它們之間展開。

從時間上來看,TensorFlow總比PyTorch早,開源的時間早,整合的時間也早。

但從趨勢來看,TensorFlow的領(lǐng)先優(yōu)勢越來越不明顯,Google Trends顯示,甚至PyTorch已經(jīng)超過了它。

 

圖1 Google Trends : PyTorch VS TensorFlow

02 巨人歌利亞

Google確實(shí)是技術(shù)上的歌利亞。

 

不說安卓,不說搜索,不說谷歌地圖。

 

熟悉的人,應(yīng)該還記得大數(shù)據(jù)的故事。

 

2003年開始,Google把自己內(nèi)部用的幾種數(shù)據(jù)處理技術(shù)陸續(xù)整理成論文,公開發(fā)表。其中具有奠基性的有三個,分別是計算框架MapReduce,文件系統(tǒng)GFS和表格存儲BigTable。

 

蕓蕓眾生借此一時眼界大開。

 

讀論文的眾多人中,有一個叫做Doug Cutting的青年,他認(rèn)為這些技術(shù)很有通用性,便照著論文把里邊的系統(tǒng)自己做了一個出來。

 

Google言之,于我心有戚戚焉。

 

于是,大名鼎鼎的,很快成為大數(shù)據(jù)事實(shí)標(biāo)準(zhǔn)的Hadoop就這么誕生了。

 

大家或許聽過阿里云飛天5K的故事。在王堅的力推下,阿里云參考Hadoop開發(fā)了一套自己的大數(shù)據(jù)系統(tǒng),而飛天5K,就是指這套系統(tǒng)成功支撐住了5千個節(jié)點(diǎn)。

 

但飛天5K發(fā)生在2013年,Hadoop誕生在2006年,Google發(fā)論文在2003年,而Google的內(nèi)部系統(tǒng)的啟用時間,不知何年。

 

什么叫技術(shù)代差,這就叫技術(shù)代差。

 

Doug Cutting后來被稱為“盜火者”,而那三篇論文,史稱“Google 三駕馬車”。

 

所以技術(shù)圈一直有一種印象,那就是Google藏了很多黑科技,隨便把自己內(nèi)部用了很久、甚至已經(jīng)不用的系統(tǒng)拿出來發(fā)表一下,便能引起江湖上的血雨腥風(fēng)。比如我在阿里時,就總聽說某某Google大佬回國后,在阿里把自己在Google用過的系統(tǒng)重新實(shí)現(xiàn)一遍而走上巔峰的故事,長恨自己眼界太窄又不在其中。

而TensorFlow不僅是Google直接開源自己的內(nèi)部系統(tǒng),而且是優(yōu)化版——TensorFlow之前,Google還有一個2011年開始的DistBelief,TensorFlow正是總結(jié)了DistBelief的很多問題后升級而來的。 

而且,AlphaGo也是Google的,再而且,它還運(yùn)行在TensorFlow之上。

 

所以按理說,TensorFlow應(yīng)該比被人抄出來的Hadoop更容易成功,可Hadoop出來后就成了大數(shù)據(jù)的事實(shí)標(biāo)準(zhǔn),TensorFlow卻沒有。

 

不僅沒有,似乎還在走下坡路。

 

IT界有個達(dá)維多定律,說市場的第一代產(chǎn)品總能自動獲得50%的市場份額。TensorFlow比PyTorch早,技術(shù)上沒有代差,卻在有明顯優(yōu)勢的情況下被PyTorch拉了下來。

 

確實(shí)不可思議,說Google輸了也不為過。

03 大衛(wèi)的策略 

那PyTorch做對了什么?

 

知乎上對兩者有相當(dāng)多的討論,但主要集中在技術(shù)層面的對比。

 

誠然技術(shù)是一切的基礎(chǔ),但畢竟被比較的是Google,在這個領(lǐng)域,他有Jeff Dean,有深度學(xué)習(xí)的圖靈獎獲得者,還有一系列頂級專家。引用騰訊機(jī)器學(xué)習(xí)平臺負(fù)責(zé)人潘欣的原話來說,Google在2015年后的幾年間包攬了全世界在深度學(xué)習(xí)領(lǐng)域一半以上的關(guān)鍵技術(shù)突破,比如TPU, Transformer, BERT, Neural Machine Translation, Inception, Neural Architecture Search, GAN,Adverserial Training, Bidrectional RNN……說Google技術(shù)不行,似乎很難成立。

 

所以我更傾向于認(rèn)為問題在別處。

 

周其仁說自己觀察經(jīng)濟(jì)現(xiàn)象有兩個法門,一曰遠(yuǎn),一曰簡,遠(yuǎn)是遠(yuǎn)遠(yuǎn)的看大勢,簡是永遠(yuǎn)選擇最簡單的指標(biāo)。

 

我認(rèn)為PyTorch在大勢上的策略才是問題的關(guān)鍵。

 

具體有三,一是差異化的產(chǎn)品定位,一是順應(yīng)了用戶趨勢,一是拿住了TensorFlow的反關(guān)節(jié)。

 

三點(diǎn)環(huán)環(huán)相扣,構(gòu)成了PyToch的競爭策略。

 

先說差異化的產(chǎn)品定位。

 

任何一個挑戰(zhàn)者進(jìn)入市場時,都需要通過差異化找到自己的立足之地。

 

PyTorch也不例外。

 

它發(fā)現(xiàn)市場上的用戶可以分兩個群體,一是工業(yè)界,一是學(xué)術(shù)界,兩者有不同的需求。工業(yè)界更關(guān)注模型的應(yīng)用,比如部署、性能等,而學(xué)術(shù)界更關(guān)注模型的開發(fā)。這很容易理解,工業(yè)界的基本訴求是穩(wěn)定,一般模型上線后會跑很長一段時間,而學(xué)術(shù)界以研究為主,會頻繁修改模型以驗(yàn)證想法,對性能要求不高,對部署更不在乎。

 

TensorFlow的優(yōu)勢在模型的應(yīng)用上。

 

在Google強(qiáng)大的開發(fā)能力下,TensorFlow不僅性能優(yōu)越,而且支持多端部署,不管是云上的分布式還是邊緣的手機(jī)端都沒問題。但可能就是因?yàn)镚oogle的開發(fā)能力太強(qiáng)了,TensorFlow在模型開發(fā)的易用性上并不上心。

 

PyTorch認(rèn)識到這是個機(jī)會,它在自己的官方論文里,清晰的表達(dá)了自己的定位——把研究者放在第一位(put researchers first)。

圖2 Facebook論文 《PyTorch : An Imperative Style,High-Performance Deep Learning Library》

于是它很快占領(lǐng)了學(xué)術(shù)界。 

根據(jù)paperswithcode的統(tǒng)計,截止2021年10月,論文里PyTorch與TensorFlow的應(yīng)用比例為86:14,而且TensorFlow下滑明顯。
 

圖3 paperswithcode--論文中應(yīng)用的框架比例

這時市場格局是這樣的。

圖4 PyTorch VS TensorFlow 市場格局1

再說用戶趨勢。 

地產(chǎn)界有個說法,短期看金融,中期看土地,長期看人口。

 

機(jī)器學(xué)習(xí)框架的用戶也是有趨勢的。

 

工程師是怎么來的?高中畢業(yè)進(jìn)入大學(xué),大學(xué)讀完本科、碩士和博士后,畢業(yè)上班,進(jìn)入工業(yè)界。

 

這個樸素的道理決定了用戶基本是從學(xué)術(shù)界流向工業(yè)界的。

 

所以PyTorch占領(lǐng)了學(xué)術(shù)界,相當(dāng)于占領(lǐng)了上游。習(xí)慣了PyTorch的人會帶著PyTorch進(jìn)入工業(yè)界,同時新同學(xué)源源不斷進(jìn)入學(xué)術(shù)界,又構(gòu)成了增量用戶。

 

用發(fā)展的眼光看問題,市場是這樣的。

圖5 PyTorch VS TensorFlow 市場格局2

 

最后說說TensorFlow的反關(guān)節(jié)。

 

周鴻祎在《我的互聯(lián)網(wǎng)方法論》里提到過一個詞叫反關(guān)節(jié),小公司一旦拿住大公司的反關(guān)節(jié),大公司的優(yōu)勢就會變成包袱,越反抗越疼,只能眼睜睜看你擴(kuò)張。

 

PyTorch就拿住了TensorFlow的反關(guān)節(jié)。

 

構(gòu)建神經(jīng)網(wǎng)絡(luò)有兩種技術(shù)路線,分別是靜態(tài)圖和動態(tài)圖,靜態(tài)圖性能好,動態(tài)圖調(diào)試方便。

 

TensorFlow一開始選擇的是靜態(tài)圖,PyTorch是動態(tài)圖,這就是產(chǎn)品差異化背后的技術(shù)原因。

 

不過這種技術(shù)選擇帶來的影響是長期的,因?yàn)閳D的構(gòu)建方式確定了,框架的API也就隨之確定了。

 

API是框架和用戶之間的接口,像汽車的方向盤和剎車。同時就像汽車不能隨便升級成用剎車掛檔、方向盤加油一樣,API也必須力求穩(wěn)定。

 

事實(shí)上所有嚴(yán)肅的基礎(chǔ)軟件都會把避免breaking change(破壞式升級)當(dāng)作API設(shè)計的首要原則。

 

所以TensorFlow在看到PyTorch靠動態(tài)圖不停搶占市場的時候,自己卻動彈不得,因?yàn)樗壘托枰淖傾PI,而它的用戶基數(shù)越大,它就越難作出改變。

 

只能縫縫補(bǔ)補(bǔ)往里繼續(xù)加?xùn)|西,比如Keras。

 

但PyTorch并沒閑著,它站穩(wěn)腳跟后開始向工業(yè)界擴(kuò)張。2018年,PyTorch借助合并Caffe2,在性能和部署上大大前進(jìn)了一步。

 

這相當(dāng)于打到了TensorFlow的大本營。

 

TensorFlow終于坐不住了,于是以壯士斷腕的決心,不顧breaking change的惡名,2019年把TensorFlow升級到了2.0,重構(gòu)API,增加動態(tài)圖。

 

有人說這體現(xiàn)了Google的傲慢,它視開發(fā)者如草芥。還有人建議Google出一個技術(shù)團(tuán)隊,把原來在TensorFlow1.0上的能跑的東西在2.0上重新實(shí)現(xiàn)一遍。

 

但可能它也是沒辦法,總不能坐以待斃吧。

04 后記

仔細(xì)想想,PyTorch的三點(diǎn)其實(shí)是一點(diǎn),叫一點(diǎn)的三個方面可能更加準(zhǔn)確。

 

這樣的分析或許有點(diǎn)馬后炮的意思,但不管PyTorch是有意為之還是純屬巧合,這個邊緣崛起的故事還是相當(dāng)值得一看。

 

那是不是說TensorFlow就這樣輸?shù)袅耍?/p>

 

并不是,前邊提到,只是決戰(zhàn)會在他們兩個之間展開,現(xiàn)在功能上兩者幾乎齊平,但從用戶存量來說,TensorFlow的絕對值應(yīng)該比PyTorch還要多不少。

 

而且未來還有新變量,那就是云。

 

云作為一種新的軟件分發(fā)機(jī)制,勢必對軟件的市場格局產(chǎn)生深遠(yuǎn)影響。根據(jù)Google的測算,2029年,77%的企業(yè)IT將以云為主。

 

誰在云上做的好,誰才是最終贏家。

 

不過我覺得真正精彩的是框架背后的人。框架的分分合合叫趨勢,人的流動才是故事。

 

比如Torch的創(chuàng)始人里,Ronan Collobert在Facebook,而Samy Bengio去了Google;比如Caffe的作者賈揚(yáng)清,讀博時自己開發(fā)了Caffe,畢業(yè)后去Google參與了TensorFlow,之后又到Facebook,在這里不僅開發(fā)了Caffe2,還推動了PyTorch跟Caffe2的合并……

 

頗有東漢末年群雄并起,有識之士縱橫天下的意味。

 

而所謂最終格局,與其說是趨勢上的客觀必然,不如說是他們推動下的主觀偶然。

本文系作者 郭華 授權(quán)鈦媒體發(fā)表,并經(jīng)鈦媒體編輯,轉(zhuǎn)載請注明出處、作者和本文鏈接。
本內(nèi)容來源于鈦媒體鈦度號,文章內(nèi)容僅供參考、交流、學(xué)習(xí),不構(gòu)成投資建議。
想和千萬鈦媒體用戶分享你的新奇觀點(diǎn)和發(fā)現(xiàn),點(diǎn)擊這里投稿 。創(chuàng)業(yè)或融資尋求報道,點(diǎn)擊這里。

敬原創(chuàng),有鈦度,得贊賞

贊賞支持
發(fā)表評論
0 / 300

根據(jù)《網(wǎng)絡(luò)安全法》實(shí)名制要求,請綁定手機(jī)號后發(fā)表評論

登錄后輸入評論內(nèi)容

快報

更多

23:02

國內(nèi)期貨夜盤收盤漲跌不一,燃油漲超1%

22:48

禮來計劃在弗吉尼亞州投資50億美元建設(shè)生產(chǎn)設(shè)施

22:40

納斯達(dá)克中國金龍指數(shù)創(chuàng)2022年2月以來新高

22:35

《紐約時報》回應(yīng)特朗普起訴其誹謗:毫無法律依據(jù)

22:33

蘋果股價漲近2%

22:31

蜂巢能源楊紅新:正開發(fā)能量密度360Wh/kg軟包半固態(tài)電池,已送樣

22:23

今年中國已有50款創(chuàng)新藥獲批上市,超去年全年

22:21

奧飛娛樂:選舉蔡東青為董事長,聘任蔡曉東為總經(jīng)理

22:20

美法官駁回聯(lián)合健康集團(tuán)高管槍殺案嫌疑人兩項刑事指控

22:17

現(xiàn)貨黃金升破3700美元/盎司,續(xù)創(chuàng)歷史新高

22:13

太二回應(yīng)門店活魚現(xiàn)殺爭議:鮮活門店現(xiàn)有68家,明年完成所有門店調(diào)改

22:11

弘陽地產(chǎn):清盤呈請聆訊延期至2026年3月23日

22:10

美元指數(shù)跌破97關(guān)口,歐元兌美元上漲至四年來最高水平

22:09

比亞迪:1-8月海外乘用車及皮卡銷售累計超63萬輛,積極關(guān)注具身智能機(jī)器人領(lǐng)域

22:07

人力資本管理軟件廠商Workday將斥資近11億美元收購AI公司Sana

22:00

印度金達(dá)爾就蒂森克虜伯鋼鐵部門提出收購要約

21:59

貝萊德ETHA的以太坊持倉量突破380萬枚,持倉市值超170億美元

21:58

亞洲電視控股:接獲清盤呈請,將于11月19日聆訊

21:54

亞鉀國際:公司董事、高級管理人員計劃減持不超過54萬股股份

21:53

市場恐慌指數(shù)VIX創(chuàng)一周新高

掃描下載App