TensorFlow学习笔记(一)--张量、会话

发布于 / 机器学习 / Comments Off on TensorFlow学习笔记(一)--张量、会话

对于任何一门编程语言,首先学习的都是定义变量常量,虽然接下来要讲的是Python TensorFlow,但是TensorFlow是不可以直接使用Python中定义的普通变量或常量的,TensorFlow要使用TensorFlow张量。

一、TensorFlow张量运算

TensorFlow中定义张量:

a = tf.constant([1.0, 2.0])
b = tf.constant([3.0, 4.0])

这样就定义了两个张量,维度是(2, ),接着令他们两个相加:

c = a + b
print(c)

如果是numpy,得到的结果一定是(4, 6)

而TensorFlow输出的结果是:

深度截图_选择区域_20180905135713.png

这里Tensor("add:0", shape=(2,), dtype=float32)中

add表示节点名,0表示第0个输出,shape表示维度,2表示一维数组长度2,dtype表示数据类型。

上面实现了一次TensorFlow加法运算,TensorFlow还有乘法:

x = tf.constant([[1.0, 2.0]])  #张量
w = tf.constant([[3.0], [4.0]])  
result = tf.matmul(x, w)       
print(result)

深度截图_选择区域_20180905140106.png

二、TensorFlow会话

上面学习了加法和乘法,但是输出的结果都是Tensor形式的,如何转换成可以看到的数字呢?

TensorFlow为了加快效率,底层计算写到了C语言的运行库中,它和Python链接的方式就是通过会话。所以上述代码虽然写了计算,但实际上尚未执行运算,在这里就需要通过会话进行运算。

sess = tf.Session()

这句话就定义了一个会话,接着使用sess.run(result)计算result:

深度截图_选择区域_20180905140726.png

可以看到,TensorFlow中张量相加得到了和numpy一样的结果。

转载原创文章请注明,转载自: 斐斐のBlog » TensorFlow学习笔记(一)--张量、会话
评论已关闭