self.center_words = tf.placeholder(tf.int32, shape=[self.batch_size], name='op testing')
print("Extracting the op",self.center_words.op)
在上面,我创建了一个名为" op testing"的tf占位符。当我打印 self.center_words.op 时,会打印出类似这样的结构
op: "Placeholder"
attr {
key: "dtype"
value {
type: DT_INT32
}
}
attr {
key: "shape"
value {
shape {
dim {
size: 128
}
}
}
}
这适用于任何张量流变量,函数输出等。这是什么 .op ?
答案 0 :(得分:7)
TensorFlow Operations ,也称为 Ops ,是指的节点 在Tensor对象上或与Tensor对象执行计算。经过计算,它们返回零或 更多张量,可以在图表后面的其他Ops中使用。要创建一个操作, 你在Python中调用它的构造函数,它接受所需的任何Tensor参数 它的计算,称为输入,以及正确所需的任何其他信息 创建Op,称为属性。 Python构造函数返回一个句柄 操作的输出(零个或多个Tensor对象),这个输出可以传递 到其他操作或 Session.run
答案 1 :(得分:6)
简短回答。
Ops是private CEO(String n,String pos, String dob, String dW, TimePeriods tP,double bS, IManager m){
}
的核心。
您的示例中的TensorFlow是一个编程系统,您可以在其中表示计算 如图。图中的节点称为ops(操作的简称)。 op需要零个或多个Tensors,执行一些计算,以及 产生零个或多个张量。
tensorflow
以类似json的格式打印出self.center_words.op
的功能
答案 2 :(得分:4)
简单地说,它打印特定张量对象的属性。也就是说,它提供了有关
的详细信息return type
dimension
以及有关张量对象的所有可能信息。
最小例子:
In [74]: with tf.Session() as sess:
...: zer = tf.zeros(shape=(32, 32))
...: print(zer.op)
...:
name: "zeros_11"
op: "Const"
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_FLOAT
tensor_shape {
dim {
size: 32
}
dim {
size: 32
}
}
float_val: 0.0
}
}
}
P.S。:忽略(_11
)中的数字(zeros_11
)(即键name
的值)。它只是一个跟踪跑步的计数器。它会在会话中的每次运行中不断递增。
来源实施:
代码:tf.Tensor.op
文档:tf.Tensor.op