TensorFlow2简单入门-张量数据结构(Tensor)
2021-01-12 本文已影响0人
K同学啊
程序 = 数据结构+算法
TensorFlow程序 = 张量数据结构 + 计算图算法语言
TensorFlow中的数值类型依据维度数,可以划分为标量(Scalar)、向量(Vector)、矩阵(Matrix)、张量(Tensor)。但是在TensorFlow中为了表达方便,一般把标量、向量、矩阵也统称为张量,不作区分。
1.标量在 TensorFlow2 上的创建如下:
import tensorflow as tf
a = 1.0 # python语言方式创建标量
b = tf.constant(1.0) # TF方式创建标量
type(a), type(b)
'''
输出:
(float, tensorflow.python.framework.ops.EagerTensor)
'''
2.向量在 TensorFlow2 上的创建如下:
import tensorflow as tf
import tensorflow as tf
c = tf.constant([1,2.2,3.3]) # 创建向量
type(c) ,c.shape
'''
输出:
(tensorflow.python.framework.ops.EagerTensor, TensorShape([3]))
'''
c
'''
输出:
<tf.Tensor: shape=(3,), dtype=float32, numpy=array([1. , 2.2, 3.3], dtype=float32)>
'''
其中shape 表示张量的形状, dtype 表示张量的数值精度,.numpy()方法可以返回 Numpy.array 类型的数据,代码如下:
#接上面代码
c.numpy()
'''
输出:
array([1. , 2.2, 3.3], dtype=float32)
'''
3.矩阵在 TensorFlow2 上的创建如下:
d = tf.constant([[1,2],[3,4],[5,6]]) # 创建 3 行 2 列的矩阵
d, d.shape
"""
输出:
(<tf.Tensor: shape=(3, 2), dtype=int32, numpy=
array([[1, 2],
[3, 4],
[5, 6]])>,
TensorShape([3, 2]))
"""
4.三维张量在 TensorFlow2 上的创建如下:
e = tf.constant([[[1,2],[3,4]],[[5,6],[7,8]]]) # 创建 3 维张量
e
"""
输出:
<tf.Tensor: shape=(2, 2, 2), dtype=int32, numpy=
array([[[1, 2],
[3, 4]],
[[5, 6],
[7, 8]]])>
"""