1. 程式人生 > >TensorFlow低階API(一)—— 簡介

TensorFlow低階API(一)—— 簡介

自己 表示 核心 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_function
4 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程序看作由兩個相互獨立的部分組成:

  1. 構造計算圖(tf.Graph)
  2. 運行計算圖(tf.Session)

計算圖是排列成一個圖的一系列TensorFlow指令。圖由兩種類型的對象組成:

  • 操作(簡稱“op”):圖的節點。操作描述了消耗和生成張量的計算。
  • 張量:圖的邊。它們代表將流經圖的值。大多數TensorFlow函數會返回tf.Tensors。

重要提示tf.Tensors 不具有值,它們只是計算圖中元素的手柄。

我們來構建一個簡單的計算圖

TensorFlow低階API(一)—— 簡介