- TensorFlow 教程
- TensorFlow - 首页
- TensorFlow - 简介
- TensorFlow - 安装
- 理解人工智能
- 数学基础
- 机器学习与深度学习
- TensorFlow - 基础
- 卷积神经网络
- 循环神经网络
- TensorBoard 可视化
- TensorFlow - 词嵌入
- 单层感知器
- TensorFlow - 线性回归
- TFLearn 及其安装
- CNN 和 RNN 的区别
- TensorFlow - Keras
- TensorFlow - 分布式计算
- TensorFlow - 导出
- 多层感知器学习
- 感知器的隐藏层
- TensorFlow - 优化器
- TensorFlow - XOR 实现
- 梯度下降优化
- TensorFlow - 构建图
- 使用 TensorFlow 进行图像识别
- 神经网络训练建议
- TensorFlow 有用资源
- TensorFlow - 快速指南
- TensorFlow - 有用资源
- TensorFlow - 讨论
TensorFlow - 基础
在本章中,我们将学习 TensorFlow 的基础知识。我们将从理解张量的数据结构开始。
张量数据结构
张量在 TensorFlow 语言中用作基本数据结构。张量表示任何称为数据流图的流程图中的连接边。张量被定义为多维数组或列表。
张量由以下三个参数标识 -
秩
张量内描述的维度单位称为秩。它识别张量的维度数。张量的秩可以描述为张量的阶数或 n 维。
形状
行数和列数共同定义张量的形状。
类型
类型描述分配给张量元素的数据类型。
用户需要考虑以下活动来构建张量 -
- 构建一个 n 维数组
- 转换 n 维数组。
TensorFlow 的各种维度
TensorFlow 包括各种维度。下面简要描述了这些维度 -
一维张量
一维张量是一个正常的数组结构,它包含一组相同数据类型的值。
声明
>>> import numpy as np >>> tensor_1d = np.array([1.3, 1, 4.0, 23.99]) >>> print tensor_1d
下面的屏幕截图显示了实现及其输出 -
元素的索引与 Python 列表相同。第一个元素从索引 0 开始;要通过索引打印值,您只需提及索引号即可。
>>> print tensor_1d[0] 1.3 >>> print tensor_1d[2] 4.0
二维张量
数组序列用于创建“二维张量”。
下面描述了二维张量的创建 -
以下是创建二维数组的完整语法 -
>>> import numpy as np >>> tensor_2d = np.array([(1,2,3,4),(4,5,6,7),(8,9,10,11),(12,13,14,15)]) >>> print(tensor_2d) [[ 1 2 3 4] [ 4 5 6 7] [ 8 9 10 11] [12 13 14 15]] >>>
可以在指定为索引号的行号和列号的帮助下跟踪二维张量的特定元素。
>>> tensor_2d[3][2] 14
张量处理和操作
在本节中,我们将学习关于张量处理和操作。
首先,让我们考虑以下代码 -
import tensorflow as tf import numpy as np matrix1 = np.array([(2,2,2),(2,2,2),(2,2,2)],dtype = 'int32') matrix2 = np.array([(1,1,1),(1,1,1),(1,1,1)],dtype = 'int32') print (matrix1) print (matrix2) matrix1 = tf.constant(matrix1) matrix2 = tf.constant(matrix2) matrix_product = tf.matmul(matrix1, matrix2) matrix_sum = tf.add(matrix1,matrix2) matrix_3 = np.array([(2,7,2),(1,4,2),(9,0,2)],dtype = 'float32') print (matrix_3) matrix_det = tf.matrix_determinant(matrix_3) with tf.Session() as sess: result1 = sess.run(matrix_product) result2 = sess.run(matrix_sum) result3 = sess.run(matrix_det) print (result1) print (result2) print (result3)
输出
以上代码将生成以下输出 -
解释
我们在上面的源代码中创建了多维数组。现在,重要的是要理解我们创建了图和会话,它们管理张量并生成相应的输出。借助图,我们可以输出指定张量之间数学计算的结果。
广告