Thing's by Actruce

모두를 위한 Deep Leaning 강좌(Sung Kim) 리뷰 08 본문

IT/Deep Learning

모두를 위한 Deep Leaning 강좌(Sung Kim) 리뷰 08

Actruce 2017. 12. 17. 19:19

이 포스트는 유명한 홍콩 과기대 김성훈 교수의 "모두를 위한 딥러닝 강좌 시즌 1" 의 내용 중 Convolution Neural Network 이전

특히, 29강 까지의 내용을 중점적으로 리뷰해 보고자 한다. (리뷰01, 02, 03, 04, 05, ...)


CNN 은 별도의 포스트를 구성할 예정이다.


본 포스트의 내용은 김성훈 교수의 Lecture Note 의 내용 및 Lab File 을 활용했음을 알려둔다.


Sung Kim “모두를 위한 딥러닝 강좌 시즌 1”

  > 강의 동영상 :  https://goo.gl/2cqKLz

  > 강의 웹사이트 : http://hunkim.github.io/ml/

  > Lecture 슬라이드 : https://goo.gl/4373zL

  > Lab 슬라이드 : https://goo.gl/WwCu4U

  > 강의 소스코드 : https://goo.gl/T2fuYi




리뷰08 TensorBoard (Lab 09)




1. TensorBoard


- TensorFlow 에서 제공하는 웹 기반의 모니터링 및 시뮬레이션 도구이다.

- TensorFlow 학습에 대한 학습 결과로그를 실시간/학습후 모두 확인 가능하다.

- Learning Rate 등을 조정해 학습을 Simulation 해 볼 수 있다.

- 학습 모델의 그래프 (노드간 연결관계) 를 시각적으로 확인 가능하다.

- 학습 결과물에 대해 다양한 결과 Plot 을 얻을 수 있다.



TensorBoard 의 실행단계를 보면,


  1. TensorFlow graph 중에서 어떤 그래프를 로그로 남길지 결정한다.

  2. Summary 결과를 합친다.

  3. writer 를 작성한 뒤, 그래프를 등록한다.

  4. Summary 를 수행하고 writer 에 summary 를 등록한다.

  5. TensorBoard 를 실행한다.






원격 머신으로 작업할 경우 SSH 를 통해서는 웹 접근이 안 되므로, 원격 머신의 로그를 가져와 Local Machine 으로 디스플레이도 가능하다.


ssh -L local_port:127.0.0.1:remote_port username@server.com






다음으로 TensorBoard 의 웹 페이지 내용을 살펴보자.


SCALAR 탭을 보면 정확도와 cost 값 등의 Scalar 값이 학습 진행 중에 어떻게 변했는지 확인할 수 있다.




GRAPH 탭을 보면 Graph(노드) 들을 연결하고 각 Graph 들은 input, output, attribute 와 어떤 Layer 에 속해있는지 등의 정보가 표시된다.

자유롭게 확대, 축소나 이동이 가능하고, expand 과 collapse 하며 내용을 확인 하게 되어 있다.





DISTRIBUTIONS 탭을 보면 각 변수 값의 분포의 변화를 확인 할 수 있다.




HISTOGRAMS 탭을 보면 각 변수 값들을 히스토그램으로 나타내어 수렴하는 방향성을 좀 더 다이나믹하게 확인 가능하다.

OFFSET Mode 와 OVERLAY Mode 를 지원한다.





Comments