나는 tensorflow 도구를 사용하여 신경망을 작성했습니다. 모든 것이 작동하고 이제는 단일 예측 방법을 만들기 위해 신경망의 최종 가중치를 내보내려고합니다. 어떻게해야합니까?tensorflow를 사용한 신경망의 가중치 내보내기
답변
tf.train.Saver
클래스를 사용하여 교육이 끝나면 모델을 저장해야합니다.
개체를 초기화하는 동안 저장하려는 모든 변수 목록을 전달해야합니다. 가장 중요한 부분은 다른 계산 그래프에서 이러한 저장된 변수를 사용할 수 있다는 것입니다!
은 물론saver.save(sess, 'filename');
,
# Assume you want to save 2 variables `v1` and `v2`
saver = tf.train.Saver([v1, v2])
가
tf.Session
객체를 사용하여 변수를 저장, 사용하여
Saver
객체를 생성하면
global_step
같은 추가 정보를 추가 할 수 있습니다.
나중에 restore()
기능을 사용하여 변수를 복원 할 수 있습니다. 복원 된 변수는 자동으로이 값으로 초기화됩니다.
매개 변수의 원시 데이터를 가져올 수 있습니까? 다른 플랫폼에서 tensorflow-trained-model을 실행하고 싶습니다. 어떻게해야합니까? –
'sess.run (weights)'을 사용하여 가중치의 최종 값을 얻고이를 numpy 배열 (예 : – martianwars
)로 내보낼 수 있습니다. 또 다른 문제점 : 네트에서'tf.nn.rnn_cell.LSTMCell'을 사용했는데 어떻게 'LSTMCell' 객체의 가중치/바이어스에 접근 할 수 있습니까? –
위의 대답은 세션 스냅 샷을 저장/복원하는 표준 방법입니다. 그러나 네트워크를 다른 바이너리 파일로 내보내 다른 텐서 흐름 도구와 함께 사용하려면 몇 가지 단계를 더 수행해야합니다.
먼저, freeze the graph. TF는 해당 도구를 제공합니다. 나는이처럼 사용
#!/bin/bash -x
# The script combines graph definition and trained weights into
# a single binary protobuf with constant holders for the weights.
# The resulting graph is suitable for the processing with other tools.
TF_HOME=~/tensorflow/
if [ $# -lt 4 ]; then
echo "Usage: $0 graph_def snapshot output_nodes output.pb"
exit 0
fi
proto=$1
snapshot=$2
out_nodes=$3
out=$4
$TF_HOME/bazel-bin/tensorflow/python/tools/freeze_graph --input_graph=$proto \
--input_checkpoint=$snapshot \
--output_graph=$out \
--output_node_names=$out_nodes
당신이
optimize it for inference을 할 수있는, 또는
any other tool를 사용, 그 일을 가졌어요.
- 1. 전체 연결 신경망의 손실이 tensorflow를 사용한 교육을받지 못함
- 2. 컨볼 루션 신경망의 가중치 및 출력 값
- 3. TensorFlow를 사용한 증분 트레이닝
- 4. Tensorflow를 사용한 RNN 회귀?
- 5. TensorFlow를 사용한 실시간 물체 감지
- 6. 함수 tensorflow를 사용한 tf.slice_input_producer 오류
- 7. 신경망의 표본 크기
- 8. tensorflow를 사용한 훈련에서 부정확 한 모양 만들기
- 9. Tensorflow를 사용한 다중 변수 선형 회귀
- 10. Tensorflow를 사용한 매트릭스 분해 기반 권장
- 11. TensorFlow를 사용한 최종 음성 인식을위한 RNN
- 12. tensorflow를 사용한 다중 레이블 분류 유효성 확인
- 13. TensorFlow를 사용한 텍스트 인식 및 감지
- 14. Tensorflow를 사용한 딥 뉴럴 네트워크의 정확도가 낮음
- 15. Tensorflow를 사용한 예측을위한 LSTM의 다중 계층
- 16. jQuery 사이클을 사용한 가중치 무작위 순서
- 17. FCN을 사용한 이미지 세분화를위한 가중치 정확도
- 18. 훈련 과정 중 특정 신기원 이후에 신경망의 가중치 (매개 변수)에 액세스하는 방법
- 19. 신경망의 정밀도
- 20. ForEach 루프를 사용한 CSV 내보내기
- 21. Python : 사용한 모듈 모두 내보내기
- 22. 가중치 가중치 가중치 가중치 최대 값 : 각 그래프의 순서가 유지됩니다.
- 23. 내 앱으로 TensorFlow를 배송하는 방법?
- 24. Tensorflow를 사용한 비 이미지 데이터 세트 일괄 처리
- 25. matlab에서 C++로 가중치 및 매개 변수 내보내기
- 26. Tensorflow - 훈련 후 훈련 된 피드 포워드 신경망의 가중치/편향치 검색
- 27. 신경망의 학습 오류 피팅
- 28. 신경망의 목표 값
- 29. 신경망의 분할 오류
- 30. 신경망의 장점과 단점
https://nathanbrixius.wordpress.com/2016/05/24/checkpointing-and-reusing-tensorflow-models/ – martianwars