北大曹健tensorflow

第三节

标签(空格分隔): 张量 计算图 会话 前向传播 反向传播

3.1 张量、计算图、会话

​ 在tensorflow中,用张量表示数据,用计算图搭建神经网络,用会话执行计算图。

3.1.1 张量

张量就是多维数组(列表),用来表示张量的维数。如下图1所示,标量为零阶张量,向量为一阶张量,矩阵为二阶张量,如例子所示,有几个方括号就是几阶张量。

图1 张量

3.1.2 计算图

计算图(Graph):搭建神经网络的计算过程,只搭建,不运算。图2为一个简单的计算图结构,

\(x_1\)\(x_2\) 为输入,\(w_1\)\(w_2\) 分别是 \(x_1\)\(y\)\(x_2\)\(y\) 的权重,\(y = X * W = x_1 * w_1 + x_2 * w_2\) , 计算y的过程实际就是矩阵的乘法。

图2 计算图结构

下图3为搭建好一个简单的计算图之后的输出结果,输出结果为一个张量(Tensor),并没有实际计算张量的值,其余参数的具体含义如下:

图3 一个简单计算图输出结果参数含义

3.1.3 会话

会话(Session):执行计算图中的节点运算,用with结构实现,具体实现如下图4所示:

图4 会话实现图中节点的运算

北大曹健tensorflow_第1张图片

代码实现

#张量,计算图,会话
import tensorflow as tf
x = tf.constant([[1.0,2.0]])
w = tf.constant([[3.0],[4.0]])

y = tf.matmul(x,w)
print(y)

with tf.Session() as sess:
    print(sess.run(y))
Tensor("MatMul_1:0", shape=(1, 1), dtype=float32)
[[11.]]

转载于:https://www.cnblogs.com/victorxiao/p/11464915.html

你可能感兴趣的:(北大曹健tensorflow)