TensorFlow Doc编程指南——2 Tensor的秩,形状和类型

翻译 2017年08月02日 10:11:59

TensorFlow程序使用一个tensor数据结构来代表所有数据。你可以认为一个TensorFlow的tensor是一个n维数组或者列表。一个tensor有一个静态类型和动态维度。只有tensor可以在计算图节点之间被传递。

Rank

    在TensorFlow系统中,tensor可用被称为“秩”(rank)的维度单元描述。Tensor的秩与矩阵的秩不一样。Tensor的秩(有时也叫“序”(order)或者“”(degree)又或者“n-维度”)是tensor维度的数量。例如,下面的tensor(定义为一个Python列表)的秩为2:
 t =[[1,2,3],[4,5,6],[7,8,9]]
    我们通常会把一个秩为2的tensor看作为一个矩阵,秩为1的是一个向量。对于秩为2的tensor,你可以用t[i,j]这样的语法来获取任意元素。而对于一个秩为3的tensor,你需要使用t[i,j,k]来获取一个元素。
Rank Math entity Python example
0 Scalar (magnitude only) s = 483
1 Vector (magnitude and direction) v = [1.1, 2.2, 3.3]
2 Matrix (table of numbers) m = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
3 3-Tensor (cube of numbers) t = [[[2], [4], [6]], [[8], [10], [12]], [[14], [16], [18]]]
n n-Tensor (you get the idea) ....

形状

    Tensorflow文档使用三种惯用标记来描述tensor的维度:秩、形状和维数。下表这些标记相互之间的对应关系:
Rank Shape Dimension number Example
0 [] 0-D A 0-D tensor. A scalar.
1 [D0] 1-D A 1-D tensor with shape [5].
2 [D0, D1] 2-D A 2-D tensor with shape [3, 4].
3 [D0, D1, D2] 3-D A 3-D tensor with shape [1, 4, 3].
n [D0, D1, ... Dn-1] n-D A tensor with shape [D0, D1, ... Dn-1].
    形状可以通过Python的整型列表、元组来表示,或者通过tf.TensorShape

数据类型

    除了维度外,tensor还有数据类型。你可以指定tensor属于下表中任何一种数据类型:
Data type Python type Description
DT_FLOAT tf.float32 32 bits floating point.
DT_DOUBLE tf.float64 64 bits floating point.
DT_INT8 tf.int8 8 bits signed integer.
DT_INT16 tf.int16 16 bits signed integer.
DT_INT32 tf.int32 32 bits signed integer.
DT_INT64 tf.int64 64 bits signed integer.
DT_UINT8 tf.uint8 8 bits unsigned integer.
DT_UINT16 tf.uint16 16 bits unsigned integer.
DT_STRING tf.string Variable length byte arrays. Each element of a Tensor is a byte array.
DT_BOOL tf.bool Boolean.
DT_COMPLEX64 tf.complex64 Complex number made of two 32 bits floating points: real and imaginary parts.
DT_COMPLEX128 tf.complex128 Complex number made of two 64 bits floating points: real and imaginary parts.
DT_QINT8 tf.qint8 8 bits signed integer used in quantized Ops.
DT_QINT32 tf.qint32 32 bits signed integer used in quantized Ops.
DT_QUINT8 tf.quint8 8 bits unsigned integer used in quantized Ops.

张量(tensor)的理解

1. 从标量到矢量:携带更丰富的信息 矢,是箭的意思,突出的特点是其指向性。袋子里有几个球? 3 个,magnitude(幅度,没有单位); 从这到你家多远?3 km(denominate),3 ...

TensorFlow Doc编程指南——1 变量的创建、初始化、存储、加载

本文译自TensorFlow官方文档的program guide部分,翻译时最新版本为v1.2,如有错误欢迎指正。...

Intel系统编程指南第十一章——11.11 存储器类型范围寄存器(MTRR)

Intel系统编程指南第十一章——11.11 存储器类型范围寄存器(MTRR)

《高级Bash脚本编程指南》学习笔记(4)——基础:变量类型

局部变量 在代码块或函数中可见 环境变量 分配给环境变量的空间是有限的. 创建太多环境变量, 或者给一个环境变量分配太多的空间都会引起错误。 如果一个脚本要...

C#编程指南——语句类型

1.选择语句 if... else..., switch

《高质量C++/C编程指南》笔记——内存管理1-2

7.1 内存分配方式 内存分配方式有三种: (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 (2)在栈上创建。在...

Beej网络socket编程指南——基本概念(2)

什么是 socket?   你经常听到人们谈论着 “socket”,或许你还不知道它的确切含义。现在让我告诉你:它是使用 标准Unix 文件描述符 (file descriptor) 和其它程序通讯的...

C#编程指南——隐式类型和匿名类型

1.var 关键字 在方法范围中声明的变量可以具有隐式类型 var。

linux与unix系统shell编程指南——2

  • 2011年05月05日 23:48
  • 12.37MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TensorFlow Doc编程指南——2 Tensor的秩,形状和类型
举报原因:
原因补充:

(最多只允许输入30个字)