Google TensorFlow 學習筆記一 —— TensorFlow簡介


"TensorFlow is an Open Source Software Library for Machine INtenlligence"

本筆記參考tensorflow.org的教程,翻譯並記錄作者的學習過程,僅供參考,如有不當之處,請及時指出並多多包涵。

TensorFlow是一款開源的數學計算軟件,使用data flow graphs的形式進行計算。這種靈活的架構允許我們使用相同的API在單或多CPUs或GPU,servers設置移動設備上進行計算。

tensor flow

Data Flow Graph: 使用有向圖的節點和邊共同描述數學計算。graph中的nodes代表數學操作,也可以表示數據輸入輸出的端點。邊表示節點之間的關系,傳遞操作之間互相使用的多位數組(tensors,張量),tensor在graph中流動——這也就是TensorFlow名字的由來。一旦節點相連的邊傳來了數據流,節點就被分配到計算設備上異步的(節點間)、並行的(節點內)執行。參見上圖。

TensorFlow的特點:

  1. Deep Flexibility: TensorFlow並不只是一個規則的neural network庫,事實上如果你可以將你的計算表示成data flow graph的形式,就可以使用TensorFlow。用戶構建graph,寫內層循環代碼驅動計算,TensorFlow可以幫助裝配子圖。定義新的操作只需要寫一個Python函數,如果缺少底層的數據操作,需要寫一些C++代碼定義操作。
  2. True Portability: 可以應用在不同設備上,cpus,gpu,移動設備,雲平台等
  3. Connect Research and Production
  4. Auto-Differentiation:TensorFlow的自動差分能力對很多基於Graph的機器學習算法有益??
  5. Language Options: TensorFlow很容易使用,有python接口和C++接口。其他語言可以使用SWIG工具使用接口。(SWIG,Simplified Wrapper and Interface Generator, 是一個非常優秀的開源工具,支持您將 C/C++ 代碼與任何主流腳本語言相集成。)
  6. Maximize Performance: 充分利用硬件資源。TensorFlow可以將graph的不同計算單元分配到不同設備執行,使用TensorFlow處理副本。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM