Gidhub BE Developer

Tensorboard (Neural Net for XOR)

2018-02-19
goodGid


Tensorboard (Neural Net for XOR)

  • 학습을 길게/많이 할 때 진행 상황을 한 눈에 보게해주는게 Tensorboard이다.

  • 그래프를 복잡하게 그릴 때 그래프 모양으로 볼 수 있다.

  • 특정 값을 바로 그림으로 그려줄 수 있다.


  • 많은 Log를 그래프와 같이 시각화해서 볼 수 있게 도와준다.

Tensorboard Usage

  • Tensorboard를 사용하기 위해선 5개의 step만 잘 따라하면 된다.
  1. 어떤 것을 log화 할지 정한다.

  2. log화 할 모든 것을 summary한다.

  3. 세션에 들어가 summary를 어디 위치에 기록할지 정하고, 세션에 그래프를 넣어준다.
    쉽게 말해 File경로를 지정한다.

  4. summary자체도 tense이기 때문에 실행을 시켜준다.
    (summary에 data가 필요하다면 feed_dict으로 넘겨준다.)
    실행 결과값을 File에 Write한다.

  5. 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를 실행시킨다.


Comments

Content