一、tf.trainable_variables :
返回所有 当前计算图中 在获取变量时未标记 trainable=False
的变量集合。【可用来更新所有参数时使用】
二、tf.control_dependencies(control_inputs):
此函数指定某些操作执行的依赖关系
返回一个控制依赖的上下文管理器,使用 with 关键字可以让在这个上下文环境中的操作都在 control_inputs 执行
1 with tf.control_dependencies([a, b]): 2 c = .... 3 d = ...
在执行完 a,b 操作之后,才能执行 c,d 操作。意思就是 c,d 操作依赖 a,b 操作
1 with tf.control_dependencies([train_step, variable_averages_op]): 2 train_op = tf.no_op(name='train')
tf.no_op():表示执行完 train_step, variable_averages_op 操作之后什么都不做
三、tf.group:
用于创造一个操作,可以将传入参数的所有操作进行分组,返回也是一个操作。
ops = tf.group(tensor1, tensor2,...)
其中*inputs
是0个或者多个用于组合tensor,一旦ops
完成了,那么传入的tensor1,tensor2,...
等等都会完成了,经常用于组合一些训练节点,
tf.control_dependencies和tf.group两种机制可以用来实现一次完成多个操作。如以下两个程序是等价的:【为了一次实现train_step, variable_averages_op两个操作】
with tf.control_dependencies([train_step, variable_averages_op]): train_op = tf.no_op(name='train') ############################################ train_op = tf.group(train_step,variables_averages_op)
四、tf.cast()
cast( x, dtype, name=None )
将x的数据格式转化成dtype.例如,原来x的数据格式是bool,
那么将其转化成float以后,就能够将其转化成0和1的序列。反之也可以。