TensorFlow 编程概念 演示了 TensorFlow 应用中的基本组件:张量、指令、图和会话。
TensorFlow 编程概念
学习目标:
学习 编程模型的基础知识,重点了解以下概念:
o 张量
o 指令
o 图
o 会话
构建一个简单的 程序,使用该程序绘制一个默认图并创建一个运行该图的会话
注意:请仔细阅读本教程。编程模型很可能与您遇到的其他模型不同,因此可能不如您期望的那样直观。
概念概览
的名称源自张量,张量是任意维度的数组。借助 ,您可以操控具有大量维度的张量。即便如此,在大多数情况下,您会
使用以下一个或多个低维张量:
标量是零维数组(零阶张量)。例如, 或
矢量是一维数组(一阶张量)。例如, 或
矩阵是二维数组(二阶张量)。例如,
指令会创建、销毁和操控张量。典型 程序中的大多数代码行都是指令。
图(也称为计算图或数据流图)是一种图数据结构。很多 程序由单个图构成,但是 程序可以选择创建多
个图。图的节点是指令;图的边是张量。张量流经图,在每个节点由一个指令操控。一个指令的输出张量通常会变成后续指令的输入张量。
会实现延迟执行模型,意味着系统仅会根据相关节点的需求在需要时计算节点。
张量可以作为常量或变量存储在图中。您可能已经猜到,常量存储的是值不会发生更改的张量,而变量存储的是值会发生更改的张量。不过,您可
能没有猜到的是,常量和变量都只是图中的一种指令。常量是始终会返回同一张量值的指令。变量是会返回分配给它的任何张量的指令。
要定义常量,请使用 !指令,并传入它的值。例如:
"# !$%
同样,您可以创建如下变量:
#&!'!($%
或者,您也可以先创建变量,然后再如下所示地分配一个值(注意:您始终需要指定一个默认值):
#&!'!($)%