나는 내 자신의 데이터 세트에 대한 시작 모델을 재교육했습니다. Tho 모델은 파이썬으로 만들어졌으며 저장된 그래프는 .pb 파일로 저장되고 레이블 파일은 .txt로 저장됩니다. 이제 Java를 통해이 모델을 이미지에 사용하여 예측해야합니다. 누구든지 도와주세요자바에서 훈련 및 예측을 위해 Python으로 작성된 tensorflow 모델을 실행하십시오.
2
A
답변
3
TensorFlow 팀이 Java 인터페이스를 개발하고 있지만 아직 안정적이지 않습니다. 기존 코드는 https://github.com/tensorflow/tensorflow/tree/master/tensorflow/java이고 여기에서 개발 된 업데이트는 https://github.com/tensorflow/tensorflow/issues/5입니다. 이미 사용 된 방법을 보려면 GraphTest.java, SessionTest.java 및 TensorTest.java을 살펴볼 수 있습니다 (비록 설명이 있지만 나중에 변경 될 수 있음). 기본적으로 Graph
개체에 이진 저장된 그래프를로드하고 Session
을 생성 한 다음 적절한 값 (Tensor
초)으로 실행하여 출력이 List<Tensor>
이되도록해야합니다. 소스의 예제에서 함께 넣어 :
import java.nio.file.Files;
import java.nio.file.Paths;
import org.tensorflow.Graph;
import org.tensorflow.Session;
import org.tensorflow.Tensor;
try (Graph graph = new Graph()) {
graph.importGraphDef(Files.readAllBytes(Paths.get("saved_model.pb"));
try (Session sess = new Session(graph)) {
try (Tensor x = Tensor.create(1.0f);
Tensor y = s.runner().feed("x", x).fetch("y").run().get(0)) {
System.out.println(y.floatValue());
}
}
}
0
나는 그 .pb
로 끝나는하는 protobuf
파일을 읽는 작업에 사용되는 코드입니다.
try (SavedModelBundle b = SavedModelBundle.load("/tmp/model", "serve")) {
Session sess = b.session();
...
float[][]matrix = sess.runner()
.feed("x", input)
.feed("keep_prob", keep_prob)
.fetch("y_conv")
.run()
.get(0)
.copyTo(new float[1][10]);
...
}
내가 그것을 저장하는 데 사용되는 파이썬 코드이었다 :
signature = tf.saved_model.signature_def_utils.build_signature_def(
inputs = {'x': tf.saved_model.utils.build_tensor_info(x)},
outputs = {'y_conv': tf.saved_model.utils.build_tensor_info(y_conv)},
)
builder = tf.saved_model.builder.SavedModelBuilder("/tmp/model")
builder.add_meta_graph_and_variables(sess,
[tf.saved_model.tag_constants.SERVING],
signature_def_map={tf.saved_model.signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY: signature}
)
builder.save()
관련 문제
- 1. 이 훈련 과정에서 훈련 Tensorflow
- 2. 나는 훈련 된 tensorflow 모델을 가지고 있는데 어떻게 같은 예측을 할 수 있습니까?
- 3. Tensorflow Slim은 모델을 복원하고 예측합니다.
- 4. Tensorflow DNNClassifier가 잘못된 예측을 반환합니다.
- 5. TensorFlow python으로 훈련 된 DNNClassifier를 저장하고 복원하는 방법; 홍채 예
- 6. Tensorflow RNN 시퀀스 훈련
- 7. Tensorflow ValueError를 배치 훈련
- 8. 이미지 크기 미리 훈련 된 모델을 사용하여 Tensorflow 개체 감지
- 9. 훈련 된 keras 모델에서 추출한 tensorflow 모델을 사용하는 방법
- 10. Tensor Flow 훈련 된 모델을 서비스로 사용하십시오.
- 11. Tensorflow : CNN + LSTM 공동 훈련
- 12. 부하를 지속시키기 위해 tensorflow 모델을 얻으려면 어떻게해야합니까?
- 13. Tensorflow : 반복 신경망 훈련 쌍 및 손실 함수에 대한 영향
- 14. 서빙을위한 Tensorflow 모델을 최적화하는 방법
- 15. 시계열 예측을 위해 미리 훈련 된 LSTM, RNN 또는 ANN 모델이 있습니까?
- 16. Tensorflow : 예측을 배열 또는 파일로 내보내기
- 17. Estimator 및 Dataset API로 교육받은 저장된 모델을 사용하여 예측을 수행하는 방법은 무엇입니까?
- 18. 새 데이터에 대한 훈련 된 모델 예측을 어떻게 확인할 수 있습니까?
- 19. Java로 Tensorflow 모델 가져 오기
- 20. Python으로 작성된 CoffeeScript와 유사한 언어
- 21. Python으로 작성된 SQL Database GUI
- 22. tf.contrib.learn 넓고 깊은 모델을 저장하여 tensorflow 제공에 제공하려면 어떻게해야합니까?
- 23. 예측을 위해 입력 벡터에 NAN 전달
- 24. Tensorflow : 사전 훈련 된 Vgg 모델에서 변수로
- 25. 훈련 된 Tensor Flow 모델을 테스트하는 방법
- 26. GPU에서 훈련 된 모델을 추측을 위해 CPU에서 사용할 수 있습니까?
- 27. tensorflow 모델을 파일로 저장
- 28. TensorFlow 개체 감지 API 모델을 예측시 사용
- 29. 실시간 예측을 위해 opencv 이미지를 caffe 형식으로 읽으려면 어떻게해야합니까?
- 30. tensorflow 및 inception-v3을 사용하는 경계 상자