1、TensorFlow的演進歷史
2011年Google開發了它的第一代分布式機器學習系統DistBelief,著名計算機科學家杰夫·迪恩(Jeff Dean)和深度學習專家吳恩達(Andrew )都是這個項目成員。升級版的DistBelief就是大家熟悉的TenorsFlow,2015年11月發布了0.1版本,并正式開源;2017年2月發布1.0版本,是當時應用最普遍的深度學習框架;2019年春發布2.0版本,在易用性上做了很大提升;現在TensorFlow官網已經Release了V 2.11。TensorFlow有幾大優勢。
首先,它出身好。
出身在谷歌這個大戶人家,基礎是Google自用的分布式機器學習系統DistBelief,而作為DistBelief的繼承者,TensorFlow更快、更靈活、具有更強的適用性,也被譽為是谷歌“AI First”轉型重要支點之一。
開發團隊能力卓越。
Google的技術能力不用再說了,這個項目中的成員吳恩達(Andrew )和杰夫·迪恩(Jeff Dean)都是AI領域響當當的名人。這里重點介紹一下Jeff Dean,他在硅谷就是傳奇,美國工程院院士,2021年IEEE馮諾依曼獎獲得者(獲獎理由是“以表彰對大規模分布式計算機系統和人工智能系統科學與工程的貢獻”)。Jeff在1999年加入谷歌,是谷歌的第20號員工,谷歌大腦、開源框架TensorFlow、谷歌廣告系統、谷歌搜索系統等關鍵技術的重要創始人之一,現在是谷歌AI掌門人。
Jeff Dean實在太過強大,傳說硅谷的工程師們編出了不少關于他有多牛的段子。比如,“All pointers point to Jeff Dean”(所有指針都是指向Jeff的),“Compilers don't warn Jeff Dean. Jeff Dean warns compilers.”(編譯器從來不給Jeff編譯警告,而是Jeff警告編譯器),“Jeff Dean's keyboard has two keys: 1 and 0.”(Jeff的鍵盤只有兩個鍵:1和0)。
產品不斷迭代,持續進步。
Tensorflow這個平臺有許多更新和版本,一直在不斷滿足開發者不斷增長的需求,列舉這些年來的一些主要發展
推出TPU專用芯片,夯實硬件底座:Google在2015年開始使用張量處理單元TPU,2017年發布第二代,在2018年發布第三代,2021年發布第四代。TPU作為專用人工智能加速處理器就是使用TensorFlow開發,2018年,Google宣布TPU它的云平臺上進行beta測試。
應用范圍擴展,支持移動和物聯網設備:2017年發布TensorFlow Lite用于移動和物聯設備上部署ML模型,在圖像分類、物體分類等方面都有應用。
集成的模塊和工具不斷改進,提升易用性:如推出TensorFlow Extended (TFX),用于部署生產ML管道的端到端平臺,幫助用戶完成從研究到生產的階段的轉換。又如TensorFlow.js,一個用JavaScript開發模型的ML庫,可以直接在瀏覽器或Node.js中使用ML,開發人員可以使用靈活的API直接在JavaScript中構建和訓練模型。
大版本持續升級,提升易用性:"TensorFlow 2.0 is coming"就是直接面對越來越受歡迎的PyTorch的激烈競爭,TensorFlow于2019年9月發布了TensorFlow 2.0版本,針對1.0版本調試困難、API混亂、入門困難、代碼晦澀等問題進行了重大升級,2.0版本擁有簡單直觀的API和更好的資源文檔,這個版本中TensorFlow基于語義版本將平臺模塊化。同時,官方提供了TensorFlow 1.x升級到2.0的遷移指南,還有一個自動轉換的腳本。
2、TensorFlow 2.0.0版本中最重要的變化點之一 -Keras
在TensorFlow官網上2.0.0版本Release中Highlights了Keras,說明如下,“TF2.0 delivers Keras as the central high level API used to build and train models. Keras provides several model-building APIs such as Sequential, Functional, and Subclassing along with eager execution, for immediate iteration and intuitive debugging”。如前文討論TensorFlow2.0版本升級的核心目標是使TensorFlow更易于使用,更易于學習,同時也是應對Pytroch等“好用”的開源框架的競爭,而Keras就是2.0版本最重要的改進點。
Keras的主要開發者是Google的工程師Fran?ois Chollet(也是一位大牛),這是一個由Python編寫的開源人工神經網絡庫,可作為TensorFlow、Microsoft CNTK、Amazon MxNet等的高階應用程序接口,進行深度學習模型的設計、調試、應用和可視化。Keras在代碼結構上由面向對象方法編寫,完全模塊化并具有可擴展性,其運行機制和說明文檔有將用戶體驗和使用難度納入考慮,努力簡化復雜算法的實現難度 。Keras支持現今人工智能領域的主流算法,包括CNN和RNN等。硬件和開發環境方面,Keras支持多操作系統、支持多GPU并行計算,可根據后臺設置轉化為Tensorflow、CNTK等系統下的組件 。
在2.0版本Keras這中優美的API與TensorFlow緊密集成,官方表示,對開發者來說TensorFlow 2.0用起來跟Python差不多。
3、TensorFlow里包含了哪些內容?
(1)總覽:進入TenorFlow的官網(https://www.tensorflow.org)
我們可以理解為 ①Install環境+ ② TensorFlows生態內容 +③ GitHub庫
(2)如今,TensorFlow 2.x是一個豐富的學習生態系統,除了核心學習引擎外,這里還有大量可免費使用的工具,我們展開盤點一下它包含哪些內容
TensorFlow.js:一個API的集合,可直接在瀏覽器或Node.js中訓練和部署機器學習模型。
TensorFlow Datasets:TensorFlow中包含的官方數據集。此外,還有可通過Google Research和Google支持的數據集搜索免費獲得的數據集。
TensorFlow Hub:包含經過訓練的機器學習模型的代碼庫,這些模型(如Bert,Fast R-CNN)稍作調整便可以部署到任何設備上。
TensorFlow Extended:也被稱作TFX,完整的端到端平臺,含轉換工具(Transform)、分析工具(Model Analysis)和服務系統(TensorFlow Serving)。
TensorFlow Lite:用于嵌入式和移動設備的TensorFlow的輕量級版本,支持應用在Android和iOS上。
TensorBoard:用于檢查、調試和優化模型及指標的可視化環境。
TensorBoard Federated:在去中心化數據上使用機器學習和其他計算工作的框架。
TensorBoard Probability:將概率模型與深度學習相結合的框架。
TensorBoard Playground:用于可視化、調試和檢查神經網絡的UI,常用于教育教學。
Accelerated Linear Algebra:線性代數的特定領域編譯器,可優化TensorFlow計算,也被稱作XLA。
MLPerf:是ML基準套件,用于測量ML軟件框架、ML硬件加速器和ML云平臺的性能。
4、TensorFlow安裝 (1)基礎環境
Ubuntu 16.04 或更高版本
Windows 7 或更高版本(含 C++ 可再發行軟件包)
macOS 10.12.6 (Sierra) 或更高版本(不支持 GPU)
(2)安裝Python:安裝3.6及以上的版本(官網要求),Windows系統可以在Python Releases for Windows | Python.org下載后安裝。
(3)下載并安裝TensorFlow(以windows環境舉例)
安裝并確認pip版本:
【1】右鍵點擊桌面左下角的開始圖標,然后選擇運行,在彈出的窗口中輸入cmd,然后點擊確定;
【2】安裝高于20.3的pip版本(參考以下操作)
C:ProgramFilesPython310>pipinstall--upgradepip//requriesthelatest pip C:UsersKlinsmann>python-mpiplist//checkpipversion Package Version ------------------------------------- pip 22.3.1
安裝TensorFlow:
【3】使用pip installtensorflow在系統下安裝并校驗版本
C:Program FilesPython310>pip install tensorflow C:Program FilesPython310>python -m pip list Package Version ------------------------------------- tensorflow 2.11.0
導入并校驗是否安裝成功:
【4】輸入python,按下回車鍵進入python解釋器,輸入import pandas導入這個庫,報錯的話就說明安裝成功了
C:UsersKlinsmann>python >>> import tensorflow說明:更多TensorFlow安裝選項可參考https://www.tensorflow.org/install
(4)運行Tensor,驗證安裝結果
輸入以下代碼,若系統返回了一個張量,則證明已成功安裝TensorFlow
importtensorflowastf print(tf.reduce_sum(tf.random.normal([1000, 1000])))
系統返回了“tf.Tensor(-1061.2717, shape=(), dtype=float32)”,證明我們安裝成功了,一個Tensor生成了。
審核編輯:劉清
-
TPU
+關注
關注
0文章
144瀏覽量
20784 -
加速處理器
+關注
關注
0文章
8瀏覽量
6458 -
tensorflow
+關注
關注
13文章
329瀏覽量
60632
原文標題:深度學習框架(2)- 了解TensorFlow,安裝TensorFlow
文章出處:【微信號:Hardware_10W,微信公眾號:硬件十萬個為什么】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
深度學習框架TensorFlow&TensorFlow-GPU詳解
TensorFlow是什么
iTOP-RK3588開發板使用 tensorflow框架
TensorFlow實戰之深度學習框架的對比
![<b class='flag-5'>TensorFlow</b>實戰之深度學習<b class='flag-5'>框架</b>的對比](https://file1.elecfans.com//web2/M00/A6/E7/wKgZomUMQSeANZ0yAAAUhl-7tLc973.png)
TensorFlow的框架結構解析
![<b class='flag-5'>TensorFlow</b>的<b class='flag-5'>框架</b>結構解析](https://file1.elecfans.com//web2/M00/A7/2C/wKgZomUMQtGAZbSWAAAYc7IPDy0768.jpg)
評論