本文主要是介绍tensorflow中的control_flow_ops.switch函数介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
tensorflow中的control_flow_ops模块属于tensorflow.python.ops中的一个模块,从switch函数的名称上看就是一个开关函数。
函数:control_flow_ops.switch(data,pred,dtype=None,name=None)
功能:用来选择数据的输出通道,如果pred为False则data从第一个输出,如果pred为True则数据从第二个输出
参数:
- data:需要被选择输出的tensor数据
- pred:bool类型用来选择data的输出通道
- dtype:可选,用来设置返回tensor的数据类型,如果为None则输出tensor的数据类型与输入tensor类型保持一致
name:操作名称
返回值:(output_false,output_true),如果pred为true就输出output_true,如果pred为false就输出output_false
import tensorflow as tf
from tensorflow.python.ops import control_flow_opsif __name__ == "__main__":with tf.Session() as sess:output_false,output_true = control_flow_ops.switch([1,2,3,4],False)print(output_false.eval())output_false,output_true = control_flow_ops.switch([5,6,7,8],True)print(output_true.eval())
注意:如果输出通道与选择的输出通道不统一会报错,tensorflow.python.framework.errors_impl.InvalidArgumentError: Retval[0] does not have value
output_false,output_true = control_flow_ops.switch([1,2,3,4],False)print(output_true.eval())
这篇关于tensorflow中的control_flow_ops.switch函数介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!