TensorFlow2 基础知识: Tensor, Shap

2020-11-13  本文已影响0人  数科每日

Tensor

Tensor 是 TensorFlow 中基础的计算单元,它包括以下四个主要组成部分:

  1. name -- Tensor 的名字,在一个 Computation Graph 中作为 Tensor 的一个标识

  2. type -- Tensor 中数据的类型, 例如 tf.float32, tf.int64, tf.string

  3. rank --- Tensor 中数据的维度, 类似矩阵中的rank (秩) 的概念

  4. shape --- rank 定义好维度以后, shape 来定义每个维度的长度。比如 (6) 代表包含6个成员的向量, (2, 3) 代表一个 2 x 3 的矩阵。

当不知道某个维度的大小时, 可以用 None 代替, 表示 Unknown

Shape of Tensor

实际使可能遇到的几种Shape 的情况

  1. Fully-known shape:
    知道 Rank 和 每个维度的大小, 比如 (28, 28, 3)

  2. Partially-known shape
    知道部分维度大小,比如 (None, 28, 28, 3)

  3. Unknown shape and known rank:
    只知道Rank,所有维度的大小都不知道, 比如 (None, None, None)

  4. Unknown shape and rank
    这是比较特殊的情况, Rank, Shape 都不知道

因为TensorFlow 是先定义, 后执行, 有些信息在运行 Computation Graph 的时候再运算, 所以会出现上述在定义时, 未知的情况。


参考文档:

[1] Understanding Tensorflow's tensors shape: static and dynamic, Paolo Galeone, 01/28/2018

上一篇 下一篇

猜你喜欢

热点阅读