许多操作都有可选/默认名称'争论,但似乎 没有办法使用默认值或避免在何时指定它 使用Java API构造操作。所以我有两个问题:
opBuilder
方法以使用默认值"范围"范围操作(或任何其他)?opBuilder
方法?答案 0 :(得分:1)
通过"许多操作都有选项/默认'名称'参数",我认为这意味着你正在谈论TensorFlow的Python API,其中像tf.add
这样的函数采用了一个名称'参数。
这些情况下的默认值是操作的名称,添加了_<number>
等后缀以避免冲突。例如,在Python中:
print(tf.add(1, 1).op.name) # Prints 'Add'
print(tf.add(1, 1).op.name) # Prints 'Add_1'
处理这些&#34;默认&#34;值来自Python包装代码,请参阅:tensorflow/python/framework/ops.py
Java opBuilder
没有提供这种便利,您必须明确指定一个与图中现有节点不冲突的名称。
也就是说,正在为每个TensorFlow操作生成包装Java函数的进展,这将导致方便,类似于Python,其中可以省略图中操作的名称。有关详细信息,请参阅https://github.com/tensorflow/tensorflow/issues/7149。
长话短说,不,现在你必须明确指定操作名称。解析https://github.com/tensorflow/tensorflow/issues/7149后,用Java生成图表会更方便。
希望有所帮助。