TensorFlow低階API(一)—— 簡介
阿新 • • 發佈:2019-02-09
自己 表示 核心 google 操作 計算 blank 設置 strong
簡介
本文旨在知道您使用低級別TensorFlow API(TensorFlow Core)開始編程。您可以學習執行以下操作:
- 管理自己的TensorFlow程序(tf.Graph)和TensorFlow運行時(tf.Session),而不是依靠Estimator來管理它們
- 使用tf.Session運行TensorFlow操作
- 在此低級別環境中使用高級別組件(數據集、層和feature_columns)
- 構建自己的訓練循環,而不是使用Estimator提供的訓練循環
我們建議盡可能使用高階的API構建模型。以下是TensorFlow Core為何很重要的原因:
- 如果您能夠使用低階TensorFlow操作,實驗和調試都會更直接
- 在使用高階的API時,能夠理解其內部的工作原理
設置
在使用本教程之前,請先安裝TensorFlow。
要充分理解本指南中的內容,您應當具備以下方面的知識:
- 如何使用Python編程
- 對陣列有所了解
- 理想情況下,最好對機器學習有一定的了解
您隨時啟動python,並按照以下演示進行操作。運行以下行來設置你的python環境:
1 from __future__ import absolute_import 2 from __future__ import division 3 from __future__ import print_function4 5 import numpy as np 6 import tensorflow as tf
張量值
TensorFlow的核心數據單位是張量。一個張量由一組形成陣列(任意維數)的原始值組成。張量的階是它的維數,而它的形狀是一個整數元組,指定了陣列每個維度的長度。以下是張量值的一些示例:
1 3. # a rank 0 tensor; a scalar with shape [], 2 [1., 2., 3.] # a rank 1 tensor; a vector with shape [3] 3 [[1., 2., 3.], [4., 5., 6.]] # a rank 2 tensor; a matrix with shape [2, 3]4 [[[1., 2., 3.]], [[7., 8., 9.]]] # a rank 3 tensor with shape [2, 1, 3]
TensorFlow使用numpy陣列來表示張量值。
TensorFlow Core演示
您可以將TensorFlow Core程序看作由兩個相互獨立的部分組成:
- 構造計算圖(tf.Graph)
- 運行計算圖(tf.Session)
圖
計算圖是排列成一個圖的一系列TensorFlow指令。圖由兩種類型的對象組成:
- 操作(簡稱“op”):圖的節點。操作描述了消耗和生成張量的計算。
- 張量:圖的邊。它們代表將流經圖的值。大多數TensorFlow函數會返回tf.Tensors。
重要提示:tf.Tensors
不具有值,它們只是計算圖中元素的手柄。
我們來構建一個簡單的計算圖
TensorFlow低階API(一)—— 簡介