TensorFlow学习1——基本概念理解

1.构建计算图(graph)过程:

定义张量,使用matmul或add等进行操作

2.载入回话(sess):

1)基本方式:sess=tf.Session();sess.run();sess.close()

2)简洁方式:with tf.Session() as sess: sess.run() 自动关闭回话

3)交互方式:sess = tf.InteractiveSession();Operation.run();Tensor.eval()

            在交互方式中,对具体操作进行直接回话,对具体张量的值进行显示输出

3.指定运算设备:

默认使用cpu,有gpu则默认使用gpu0,可通过with tf.device("/gpu:1")调用第2个gpu

4.AVX:

高级矢量扩展,CPU支持高级矢量扩展,但是在有GPU时不需要,

扫描二维码关注公众号,回复: 3226447 查看本文章

可调用os库,使用os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'忽略警告

5.变量(variables):

存储状态信息,即参数

6.变量初始化:

1)并行方式:init_op = tf.initialize_all_variables();sess.run(init_op) 初始化全部变量

2)自定义方式:w2 = tf.Variable(w1.initialized_value(),name='w2') 使用另一个张量的值初始化一个变量,仍需要并行初始化

7.assign函数:通过将 "value" 赋给 "ref" 来更新 "ref"。

assign (

      ref ,

      value ,

      validate_shape = None ,

      use_locking = None ,

      name = None

  )

ref:一个可变的张量。应该来自变量节点。节点可能未初始化。

value:张量。必须具有与 ref 相同的类型。是要分配给变量的值。

validate_shape:一个可选的 bool。默认为 True。如果为 true, 则操作将验证 "value" 的形状是否与分配给的张量的形状相匹配;如果为 false, "ref" 将对 "值" 的形状进行引用。

use_locking:一个可选的 bool。默认为 True。如果为 True, 则分配将受锁保护;否则, 该行为是未定义的, 但可能会显示较少的争用。

name:操作的名称(可选)。

8.取回/输出:

可以使用列表一次执行多个变量的回话,将 多个变量的结果一次性输出

9.喂入feed:

在执行会话时,可以使用feed_dict={}指定数据,主要是对使用placeholder进行占位的变量

猜你喜欢

转载自blog.csdn.net/nominior/article/details/80593376
今日推荐