我已经在GitHub上提出了这个问题,但被引导到这里。我已经看到了示例,该示例展示了如何将在Python中创建和训练的模型导入到Java代码中并用于预测。然而,我在理解这一块以及GraphBuilder类在156到207行之间的声明时遇到了一些问题。能有人解释一下这些内容吗?
此外,我知道Java API仍在建设中。然而,我很想知道是否可以看到一些更复杂的示例,如果可能的话,包括以下内容:
-
将模型导入Java然后对模型进行训练
-
在Java中使用Tensorflow从头开始实现、训练、评估、保存和加载模型
有谁有这样的示例,并且愿意分享吗?
感谢任何帮助!
祝好,
@
回答:
您指出的代码块生成一个TensorFlow图来“标准化”图像,以便该图像可以输入到另一个TensorFlow图(inception)中。它实现的功能相当于Python中的如下代码:
image = tf.cast(tf.image.decode_jpeg(input, channels = 3), tf.float32)batch = tf.expand_dims(image, 0);resized = tf.image.resize_bilinear(dims_expander, [input_height, input_width])normalized = tf.divide(tf.subtract(resized, [input_mean]), [input_std])
许多用于执行TensorFlow操作的Python函数(如tf.cast
、tf.image.decode_jpeg
等)是从TensorFlow操作定义中生成的。然而,这些生成的函数在Java API中还不存在,因此必须从更低级的原语构建这些操作,这就是GraphBuilder
类所做的工作。
希望这对您有帮助。
您提出的其他问题似乎过于宽泛,因此在这里不确定如何回答它们。