TensorFlow 101:起步走
關於 TensorFlow 與建立開發環境
An open source machine learning framework for everyone.
TensorFlow 是一個使用 Data Flow Graph(資料流圖形)進行科學運算的開源框架,由 Google Brain 團隊開發,是繼第一代 DistBelief 後的第二代機器學習系統,它們被廣泛應用於 Google 的各項商業服務及產品,包含搜尋、語音搜尋、廣告、相簿、地圖、翻譯和 YouTube 等產品之中。在 TensorFlow 所設計的 Data Flow Graph 中,節點(nodes)表示運算、邊界(edges)表示傳遞至節點的張量。TensorFlow 提供穩定的 Python API 和 C 語言 API,以及不保證向後兼容的 C++、Go、Java、JavaScript 與 Swift 等語言 API。常見的 TensorFlow 應用框架包含高階與核心 API,高階部分有:
- 用來建構與訓練深度學習模型的 Keras
- 以類似應用 Numpy 方式寫作 TensorFlow 程式的 Eager Execution
- 輕鬆載入資料至 TensorFlow 程式中的 Importing Data
- 預先訓練完成、可供生產環境使用的模型 Estimators
核心部份則包含張量、變數、圖形與 Session 等。
建立開發環境
展開 TensorFlow 學習旅程的第一個篇章是建立開發環境,在這個章節中將簡介三種開發環境的建立方式:
- 瀏覽器:採用 Google Colaboratory 的雲端服務
- 本機端 Python:採用 Anaconda 的完整解決方案
- 本機端 R:採用 RStudio 的完整解決方案
建立瀏覽器的開發環境
使用 Google Colaboratory 作為雲端的 Jupyter Notebook 環境,不需要使用者做任何的設定安裝,就可以使用 TensorFlow 作為機器學習教育和研究的工具,建議使用 Chrome 或 Firefox 這兩個瀏覽器開啟,Colaboratory 是由 Collaborate 與 Laboratory 兩個單字組合而成,表達出 Google 文件的協作特色與 Jupyter Notebook 的資料科學特質,可依照下列步驟將 Google 雲端硬碟與 Google Colaboratory 連結起來。