Tensorboard (Neural Net for XOR)
-
학습을 길게/많이 할 때 진행 상황을 한 눈에 보게해주는게
Tensorboard
이다. -
그래프를 복잡하게 그릴 때 그래프 모양으로 볼 수 있다.
-
특정 값을 바로 그림으로 그려줄 수 있다.
- 많은 Log를 그래프와 같이 시각화해서 볼 수 있게 도와준다.
Tensorboard Usage
- Tensorboard를 사용하기 위해선 5개의 step만 잘 따라하면 된다.
-
어떤 것을 log화 할지 정한다.
-
log화 할 모든 것을 summary한다.
-
세션에 들어가 summary를 어디 위치에 기록할지 정하고, 세션에 그래프를 넣어준다.
쉽게 말해 File경로를 지정한다. -
summary자체도 tense이기 때문에 실행을 시켜준다.
(summary에 data가 필요하다면 feed_dict으로 넘겨준다.)
실행 결과값을 File에 Write한다. -
Tensorboard를 확인한다.
만약 remote server에서 작동중이라면 (아래 사진 참고)
나는 local에서 7007번 포트를 사용하고
6006은 remote server의 포트이다.
remote server에서 tensorboard를 실행시킨다.
그리고 local에서
http://127.0.0.1:7007로 들어가면
서버에 있는 tensorboard를 볼 수 있다.
즉 ssh만 된다면
remote에 있는 tensorboard를 볼 수 있다.
접속을 해보자 (여기서는 local 포트가 6006이다.)
Example
- 그래프를 보고 싶다면 ?
그래프를 한꺼번에 보면
보기 힘들기 때문에
name_scope를 사용하여 계층별로 정리할 수 있다.
우측 그래프를 보면 layer1, layer2로 나눠져 있는 것을 확인할 수 있다.
Multiple runs
가끔 내가 같은 형태의 모델을 돌리지만
옵션을 다르게해서 돌리고 싶을 때
그리고 2~3개를 비교해보고 싶을 때
사용할 수 있는 방법이 있다.
각각 디렉토리를 생성하고
부모 디렉토리를 실행시킨다.
예제에서는 [ ./logs/xor_logs , ./logs/xor_logs_r0_01 ]이라면
부모 디렉토리인 ./logs를 실행시킨다.