TensorFlow中的机器学习算法是作用于张量上的,因此在学习TensorFlow之前需要先了解什么是张量。
张量是通过任意数量的索引指定矩阵中元素的一般化。
张量是更多的嵌套向量。
0阶张量即标量
1阶张量即向量
2阶张量即矩阵
3阶张量即立方体,如图片的RGB三通道表示
通常可以将列表、ndarray等类型转化为Tensor对象。
import tensorflow as tf # We’ll use NumPy matrices in TensorFlow import numpy as np # Define a 2x2 matrix in 3 different ways m1 = [[1.0, 2.0], [3.0, 4.0]] m2 = np.array([[1.0, 2.0], [3.0, 4.0]], dtype=np.float32) m3 = tf.constant([[1.0, 2.0], [3.0, 4.0]]) # Print the type for each matrix print(type(m1)) print(type(m2)) print(type(m3)) # Create tensor objects out of the different types t1 = tf.convert_to_tensor(m1, dtype=tf.float32) t2 = tf.convert_to_tensor(m2, dtype=tf.float32) t3 = tf.convert_to_tensor(m3, dtype=tf.float32) # Notice that the types will be the same now print(type(t1)) print(type(t2)) print(type(t3))