티스토리 뷰
여태 모델을 학습시키고 학습 정도나 정확도등을 확인해볼 때, 조금 원시적인(?) 방법이라 할 수 있는 print로 출력해 왔었습니다. 이렇게 확인 해도 되겠지만, 더 좋은 그리고 더 쉽게 시각화하여 정보를 볼 수 있는 방법이 있습니다. 바로 텐서보드 인데요.
기존에 비용 함수를 프린트해가며 줄어드는 것을 확인했다면, 텐서보드를 이용해 아래와 같이 시각화 해서 확인해 볼 수 있습니다.
텐서보드를 사용하기 위해서는 시각화를 하고 싶은 변수에 대한 요약 정보를 저장하는 코드를 추가해줘야 합니다.
1. 로그를 확인하고 싶은 변수에 대한 요약정보를 저장하기 위한 코드
w2_hist = tf.summary.histogram("이름", 변수) # 히스토그램
cost_summ = tf.summary.scalar("이름", 변수) # 스칼라
참고로 히스토그램과 스칼라는 다음과 같이 표현됩니다.
2. 요약 정보를 합치기
summary = tf.summary.merge_all()
3. 지정 경로에 요약정보 파일 형태로 저장하기
writer = tf.summary.FileWriter('./tensorboard_log', sess.graph)
4. 세션 실행 후 writer에 추가
s, _ = sess.run([summary, optimizer], feed_dict=feed_dict)
writer.add_summary(s, global_step=global_step)
5. 텐서보드 실행하여 결과 확인
터미널 혹은 커맨드창에서 tensorboard --logdir=./tensorboard_log 입력,
그럼
이런 문구를 볼 수 있습니다. 저 http:// ~ 주소를 복사해서 웹에서 열어보면 텐서보드를 확인할 수 있습니다
ㅎㅎ
만약 텐서보드를 실행하는데 있어서 오류가 발생한다면, 텐서플로우 재설치 해보시고
feed_dict 에서 오류가 나시는 분들은 tf.reset_default_graph() 를 코드 상단에 추가해주세요.
하단의 이미지는 앞서 배운 ANN을 이용한 MNIST이미지 분류에서 텐서보드를 확인하기 위한 코드를 추가한 코드 입니다.
텐서보드에 들어가 확인해 보면 텐서플로우 그래프를 확인할 수 있고, 코스트 그래프 또한 확인 할 수 있습니다.
'머신러닝' 카테고리의 다른 글
TensorFlow, No module named 'tensorflow.examples.tutorials' 문제 해결 방법 (0) | 2020.03.17 |
---|---|
Neural Network 실습, XOR 문제풀기 & MNIST 숫자 분류기 (0) | 2020.03.17 |
딥러닝의 본격적인 시작, Neural Network (0) | 2020.03.11 |
learning rate & overfitting & 학습 데이터.. (2) (0) | 2020.02.25 |
learning rate & overfitting & 학습 데이터.. (1) (0) | 2020.02.24 |