TensorFlow是一個開源軟件庫,用於各種感知和語言理解任務的機器學習[5]目前廣泛地用於研究和生產中,比如Google商業產品[6]:p.2,如語音辨識GmailGoogle 相簿和搜尋[5]:0:26/2:17,其中許多產品曾使用過其前任軟件DistBelief。

Quick Facts 開發者, 首次發佈 ...
TensorFlow
開發者谷歌大腦團隊[1]
首次發佈2015年11月9日,​8年前​(2015-11-09
目前版本
  • 2.14.0-rc1(2023年8月28日;最終測試版本)[2]
  • 2.15.0(2023年11月14日;穩定版本)[3]
編輯維基數據連結
原始碼庫 編輯維基數據連結
程式語言PythonC++CUDA
平台LinuxmacOSWindowsAndroid
類型機器學習
許可協定Apache 2.0開源許可證
網站www.tensorflow.org
tensorflow.google.cn[4]
Close

TensorFlow最初由谷歌大腦團隊開發,用於Google的研究和生產,於2015年11月9日在Apache 2.0開源許可證下發佈。[1][7]

歷史

DistBelief

從2010年開始,谷歌大腦建立DistBelief作為他們的第一代專有機器學習系統。50多個團隊在Google和其他Alphabet公司在商業產品部署了DistBelief的深度學習神經網絡,包括Google搜尋Google語音搜尋、廣告、Google 相簿Google地圖Google街景Google翻譯YouTube[6][8]Google指派電腦科學家,如傑弗里·辛頓傑夫·迪恩,簡化和重構DistBelief的代碼庫,使其變成一個更快、更健壯的應用級別代碼庫,形成了TensorFlow。[9]2009年,Hinton領導的研究小組大大減少使用DistBelief的神經網絡的錯誤數量,通過Hinton在廣義反向傳播的科學突破。最值得注意的是,Hinton的突破直接使Google語音辨識軟件中的錯誤減少至少25%。[10]

TensorFlow

TensorFlow是谷歌大腦的第二代機器學習系統。

從0.8.0版本(發佈於2016年4月)開始原生的支援分散式執行。

從0.9.0版本(發佈於2016年6月)開始支援iOS。

從0.12.0版本(發佈於2016年12月)開始支援Windows系統。該移植代碼主要由微軟貢獻。

1.0.0版本發佈於2017年2月11日。雖然參考實現執行在單台裝置,TensorFlow可以執行在多個CPUGPU(和可選的CUDA擴充和圖形處理器通用計算SYCL擴充)。[11]TensorFlow可用於64位元LinuxmacOSWindows,以及流動運算平台,包括AndroidiOS

TensorFlow的計算使用有狀態的數據流圖表示。TensorFlow的名字來源於這類神經網絡對多維陣列執行的操作。這些多維陣列被稱為張量(Tensor)。2016年6月,Jeff Dean稱在GitHub有1500個庫使用了TensorFlow,其中只有5個來自Google。[12]

張量處理單元(TPU)

2016年5月,Google宣佈了張量處理單元(TPU),一個專為機器學習和TensorFlow全客製化專用集成電路。TPU是一個可程式化的人工智能加速器,提供高吞吐量的低精度計算(如8位元),面向使用或執行模型而不是訓練模型。Google宣佈他們已經在數據中心中執行TPU長達一年多,發現它們對機器學習提供一個數量級更優的每瓦特效能。[13]

2017年5月Google宣佈第二代張量處理單元,並在Google計算引擎中可用。[14]第二代TPU提供最高180 teraflops效能,組裝成64個TPU的叢集時提供最高11.5 petaflops效能。

TensorFlow Lite

2017年5月Google宣佈從Android Oreo開始,提供一個專用於Android開發的軟件棧TensorFlow Lite[15]

用於搜尋引擎

Google於2015年10月26日正式發佈了RankBrain英語RankBrain,由TensorFlow支援。

TensorFlow 2

隨着TensorFlow在研究論文上的市場份額因PyTorch的優勢而衰減[16],在2019年9月TensorFlow團隊宣佈了程式庫的一個新的主要版本。TensorFlow 2.0介入了很多變更,最重要的是TensorFlow eager,它將自動微分的方案,從靜態計算的圖,變更為「執行時定義」的方案,它最初因Chainer英語Chainer和後來的PyTorch而流行[16]。其他主要的變更包括移除一些舊庫,在不同版本的TensorFlow的訓練模型之間的交叉相容性,還有在GPU上效能的顯著改進[17]

使用

TensorFlow充當機器學習的核心平台和函式庫。TensorFlow的API使用Keras來允許用戶製作自己的機器學習模型[18]。除了建造和訓練它他們的模型之外,TensorFlow還能幫助裝載數據來訓練模型,並使用TensorFlow Serving來部署它[19]

TensorFlow提供了一個Python API[20],以及C++[21]、Haskell[22]、Java[23]、Go[24]和Rust[25]API。第三方包可用於C#[26]、.NET Core[27]、Julia[28]、R[29]和Scala[30]

應用

廣泛的應用程式使用TensorFlow作為基礎,其中它已成功實現自動化圖像字幕軟件,例如DeepDream英語DeepDream[31]2015年10月26日,Google正式啟用了由TensorFlow提供支援的RankBrain英語RankBrain。RankBrain現在處理大量的搜尋查詢,替換和補充傳統的靜態演算法搜尋結果。[32]

參見

參照

外部連結

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.