私はtensorflow(python2.7)でニューラルネットワークを使用しており、Javaを使用して出力を取得する必要があります。私はセッションを開始し、値を取得する単純なPython関数getValue(input)
を持っています。私はどんな提案にも開放的です。私はJythonがテンソルフローがライブラリにないために動作しないと信じています。私はできるだけ早く呼び出す必要があります。 JNIはJava呼び出しCのために存在するので、cythonで変換してコンパイルしてからJNIを使用できますか? RAMや他の方法で情報を渡す方法はありますか?テンソルフローグラフを使用したJava呼び出しPython関数
答えて
Pythonでは、(saver.saveを使用して)モデルを保存し、グラフを(tf.train.write_graphを使用して)保存します。
Javaでは、org.bytedeco.javacpp-presetsライブラリを使用して、保存されたprotobufファイルからGraphDefをインスタンス化し、入力フィーチャを渡して、セッション内で出力フィーチャを取得します。
例コードはhttps://medium.com/google-cloud/how-to-invoke-a-trained-tensorflow-model-from-java-programs-27ed5f4f502d#.4su1s26fzを参照してください。
私はJava + Python + TensorFlowと同じ問題を抱えています。私は単純なhttpサーバーをセットアップしてしまった。それが遅すぎる場合は、ソケットを直接採用することでオーバーヘッドを少しでも減らすことができます。
提案していただきありがとうございます。これが私が降りる必要のある種類の道なのか疑問に思っていました。 –
はその後script.pyとにTensorFlowのためのあなたの呼び出しをカプセル化:それはあなたのケースを解決
Process proc = Runtime.getRuntime().exec("python script.py");
わからないかどうか。
ありがとうパトリック。これは動作しますが、大量のデータがJavaからPythonに渡されなければならないため、非常に非効率です。 –
- 1. Javascript関数を使用したjQuery関数の呼び出し
- 2. django webserviceを使ったリモートPython関数呼び出し
- 3. Pythonスクリプトからjava関数を呼び出します。
- 4. Javaのオーバーロード&オーバーライド関数呼び出し
- 5. Javaでのクロススレッド関数呼び出し
- 6. onclickを使用したJavascript関数呼び出し
- 7. Clangを使用した関数呼び出し解析
- 8. web2pyでimportを使用した関数呼び出し
- 9. StringTemplateの引数を使用してJava関数を呼び出しますか?
- 10. Javaを使用してJava関数を呼び出すXSLTを実行する
- 11. 別の関数呼び出しで関数を呼び出す
- 12. settimeoutを使用したクラス関数の動的関数呼び出し
- 13. pythonサブプロセス呼び出しを使用してpythonスクリプトを呼び出す
- 14. python変数のカスタム関数の呼び出しを呼び出す
- 15. 関数呼び出しから関数呼び出し名を抽出する
- 16. 可変数の引数を使用した関数呼び出し
- 17. Pythonを使用して親で呼び出された子関数の親関数の変数にアクセス
- 18. jquery変数を使用して関数を呼び出す
- 19. Pythonの基本的な使い方、関数の呼び出し
- 20. Javaクラスの引数を使用してPythonスクリプトを呼び出す方法
- 21. 代用関数呼び出しwith sympy
- 22. クラス関数呼び出し
- 23. Perl関数呼び出し
- 24. 関数呼び出し
- 25. C関数呼び出し
- 26. が関数呼び出し
- 27. 関数呼び出しコスト
- 28. は、関数呼び出し
- 29. Vertxを使用したREST APIの呼び出し/呼び出し/使用
- 30. Python高次関数:パラメータリストを持つ汎用関数呼び出し
有望に見える - ありがとう。私はこれを見直している。 –