用tensorflow这样工具的原因是:它允许我们用计算图(Computational Graphs)的方式建立网络. 下面就是对计算图的直观讲解。
例如:
计算图所建立的只是一个网络框架。在编程时,并不会有任何实际值出现在框架中。所有权重和偏移都是框架中的一部分,初始时至少给定初始值才能形成框架。因此需要initialization初始化。
请类比管道构建来理解计算图的用法
组装计算图(管道)
要组装的结构。由许多操作组成。
接受(流入)零个或多个输入(液体),返回(流出)零个或多个输出。
主要分为张量(tensor)、变量(variable)和常量(constant)
多维array或list(管道中的液体)
参数说明: dtype: 数据类型 shape: 张量 name: 名称(可选参数) 例如:
x = tf.placeholder(float, shape=(1024, 1024))在同一时刻对图中所有其他操作都保持静态的数据(管道中的阀门) ####创建语句:
name_variable = tf.Variable(value, name)#所有变量
init_op=tf.initialize_all_variables()无需初始化的变量
使用计算图(获取液体)
执行(launch)构建的计算图。可选择执行设备:单个电脑的CPU、GPU,或电脑分布式甚至手机。
#交互
sess = tf.InteractiveSession()执行语句:
sess.run(op)语句:
sess.run([output], feed_dict={input1:value1, input2:value1})取值(fetch):获取操作的输出值(得到液体) 语句:
