Java使用 tensorflow 图调用python函数

标签 java python-2.7 tensorflow

所以我有一个 tensorflow (python2.7)中的神经网络,我需要使用Java检索它的输出。我有一个简单的 python 函数 getValue(input) ,它启动 session 并检索值。我愿意接受任何建议。我相信 Jython 不会工作,因为库中没有 tensorflow 。我需要尽快打电话。 JNI 存在用于 Java 调用 C,所以我可以使用 cython 进行转换并编译然后使用 JNI 吗?有没有办法在 RAM 中传递信息或者我没有想到的其他方式?

最佳答案

在 Python 中,保存模型(使用 saver.save)和图形(使用 tf.train.write_graph)。

在 Java 中,使用 org.bytedeco.javacpp-presets 库从保存的 protobuf 文件实例化 GraphDef,并传入输入特征并在 session 中获取输出特征。

参见https://medium.com/google-cloud/how-to-invoke-a-trained-tensorflow-model-from-java-programs-27ed5f4f502d#.4su1s26fz例如代码。

关于Java使用 tensorflow 图调用python函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37992129/

相关文章:

java - 抽象类的简单Q迭代器<Object E>

python - 在 python 中使用多处理优化大数组的处理

python - TensorFlow 2.0 : tf. GradientTape() 返回无结果

python - 使用 python 运行控制台命令

python - 如何解读TensorFlow的卷积滤波器和stridding参数?

python - tensorflow 的数据集 API 的返回大小不是常量

java - GWT 和 web.xml

java - 如何使用servlets和jsp做一个SPA?

java - Tomcat 适配器在开普勒中不可见

python - 如何解决类型错误: cannot concatenate 'str' and 'int' objects?