文陳徐毅(北京)

人工智能技術在經歷了計算機科學領域過去幾十年沒有突破的瓶頸期之后,這些年由于算法和算力(并行計算)革命,邁入了一個高速發展的時期。不僅如此,在編程語言和開發者環境不斷演化的今天,人工智能算法已悄然形成了兩大陣營——TensorFlow與PyTorch互相角逐的格局。
隨著競爭日趨激烈,先入為主的TensorFlow被后來者PyTorch迎頭追上,前者逐漸顯現頹勢而棋輸一著,業內有一鮮明比喻:“PyTorch吃掉了TensorFlow的午餐!”不久前有科技媒體證實,谷歌內部正押注一個新框架JAX來力求改變與PyTorch競爭不利的局面,而谷歌大腦和DeepMind也很大程度上放棄了TensorFlow轉而使用JAX,這意味著AI框架之爭進入了一個新的階段。
在此之前,我們先了解一下框架的概念。“框架”源于計算機軟件開發術語,由于上世紀編程語言模塊化資源的匱乏,框架的概念少有流行,隨著后來開發者環境的改善,生產力工具的極大豐富,框架的應用隨之普及,概念也逐漸清晰。
框架作為編程語言伴生的集成化工具,在開發者環境中處于一種中間地位:語言-庫-框架-引擎,越往后集成度越高,理論上開發者可以利用的效率也越高。知名的框架比如基于JavaScript的前端工具React,一個熟練的開發者可以運用此類工具快速構建軟件項目的原型基礎,這也是常見的敏捷開發思想。
人工智能框架TensorFlow的初始版本源于2015年,由谷歌大腦團隊開發并發布在Apache 2.0開源許可證下。TensorFlow是谷歌大腦的第二代機器學習工具,谷歌旗下部署的商業應用包括搜索、圖片、地圖、廣告、翻譯等等都與此有關。一個顯著的例子是,近年來深度學習神經網絡的發展,各國語言文字翻譯(機翻)準確度的提高,TensorFlow在其中起到了重要作用。
PyTorch是由科技公司Meta人工智能團隊開發的開源Python機器學習工具,它的出現比TensorFlow晚了近一年,但它兼收并蓄地改進了當時主流的包括其他幾個AI框架Caffe、Torch,由此開發的基于自動微分,且使用動態計算圖的新一代AI框架。PyTorch起步之初就迎合了大量開發者的需求與習慣,逐漸成長為與TensorFlow并列最受歡迎的兩大AI框架之一。
原本先入為主的TensorFlow緣何被PyTorch后來居上?須知道,在人工智能機器學習深度學習神經網絡領域,谷歌團隊已經歷了第一代專有機器學習系統DistBelief(TensorFlow的前身)的部署,所以當TensorFlow進入工業領域的時候,優勢非常之大。但是后來的市場變化,PyTorch在開發者社區大受歡迎,以至于其在學術研究領域全面勝出,而TensorFlow的優勢也正逐漸為之蠶食。
據開發者社區數據統計,TensorFlow和PyTorch框架的論文公開代碼庫兩者數量差距從2021年3月的1:4擴大到2022年的1:6。如今各大頂會論文數量都是PyTorch對TensorFlow的絕對碾壓,就連谷歌自家的論文也只有Torch和JAX,以及零星的TF1.0開源代碼。全球范圍看,經過幾年發展PyTorch在學術圈的主導地位已基本站穩,一方面得益于PyTorch一開始主打的動態圖機制,有益于實驗室和研究中心快速迭代模型;另一方面得益于吸收了TF1.0和其他主流框架的優點、摒棄缺陷,尊重開發者意見并給予便利操作,贏得受眾青睞。
TensorFlow的衰退源自許多科技巨頭常有的弊病——追求自利的生態膨脹。一開始TensorFlow憑借先入為主獲取市場穩操工業界的盤子,谷歌也憑借安卓系統大量開發者和數據的支撐令TF1.0日臻成熟,大量企業項目落地。但作為科技巨頭,谷歌過于執著自家生態的一系列操作致使TensorFlow日后變成了一個不那么適合開源的項目。TF1最大的缺點在于混亂的API設計和難以調試的靜態圖,許多原本可以順手解決的問題谷歌團隊視而不見,以至于開源的TensorFlow出現了大量交叉版本,廠商開始各自為政。
后來的TF2也不那么成功,反而破壞了TF1的生態,TF2不兼容TF1,TF1繼續適配新設備,TF2想辦法兼容TF1。惡性循環,開發者大量流失到更為開放、更容易聽取意見的PyTorch陣營。而推出JAX實屬谷歌的自救,它的做法也就是盡可能不全盤否定TensorFlow的基礎上向PyTorch貼近。
框架之爭的結果是勢均力敵,趨勢互為接近,倘若一方因管理團隊決策失誤導致開發者大量流失,那么另一方將占據壟斷地位。目前來看TensorFlow的工業基本盤暫時不會丟失,但隨著建立在PyTorch之上的特斯拉自動駕駛、優步Pyro等項目落地,TensorFlow的優勢領域也正面臨日益增長的壓力。
AI框架之爭是21世紀的新鮮事,這也是技術文明發展進程中的必經之路。隨著人工智能產研基數的不斷擴大,該領域技術演化與形態碰撞將持續催生優勝劣汰、與時俱進的生產力工具。
