【사내 공부회】Tensorflow 튜토리얼(Deep MNIST for Experts)을 시험해 보세요

전제 지식



  • MNIST For ML Beginners 내용


  • 참고 사이트


  • Deep MNIST for Experts(공식)

  • TensorFlow 튜토리얼 일본어 번역 (Deep MNIST for Experts)
  • 번역 사이트는 몇개인가 있지만, 다른 사이트라면 Tensorflow의 버젼이 낡고, 샘플 코드에 차이가 있다. Tensorflow 버전 업 너무 격렬.

  • '0으로 만든 Deep Learning'오라일리


  • "Deep MNIST for Experts"는 어렵습니다.


  • 첫 번째 튜토리얼 'MNIST for ML Beginners'와 비교하면 어렵습니다
  • 특히 "Build a Multilayer Convolutional Network"장에서 갑자기 어려워진다
  • CNN을 알고 있다고 가정하거나 모르는 용어가 많이 나옵니다


  • 「Deep MNIST for Experts」에서 새롭게 나온 용어・내용



    CNN(컨벌루션 신경망)


  • ReLU
  • Convolution (컨벌루션)
  • pooling(max pooling)
  • stride size

  • 학습


  • 초기화 방법 (미소 양의 초기 바이어스)
  • Dropout
  • ADAM 옵티마이저

  • Tensorflow


  • tf.truncated_normal
  • tf.nn.conv2d
  • tf.nn.max_pool
  • tf.summary.FileWriter (TensorBoard용)


  • MNIST for ML Beginners 문제



    종횡의 2차원 데이터를 1차원의 데이터로 변환함으로써,
    형상에 관한 정보(공간적으로 가까운 값은 픽셀값도 가깝다)가 무시되고 있다

    ⇒ 컨벌루션을 사용하여 형상을 유지한다!

    ※ 『제로부터 만드는 Deep Learning』 7.2.1장 참고

    CNN에 대한 참고 사이트



  • 스테디셀러 Convolutional Neural Network를 처음부터 이해
  • 컨벌루션과 같은 애니메이션이 있습니다

  • Convolutional Neural Network란 무엇인가?
  • 사진 가공(필터 확인)

  • 상기 사이트를 알기 쉽기 때문에 설명은 생략합니다.

    TensorBoard



    Tensorflow 시각화 도구
  • TensorBoard: Visualizing Learning(공식)
  • 모든 데이터를 시각화하는 TensorBoard 철저한 입문
  • TensorBoard에서 초보자용 MNIST 튜토리얼 시각화


  • mnist_deep.py에서 Tensorboard 용 코드



    m에 st_로 p. py의 다음 코드는 Tensorboard가 참조하는 데이터를 출력합니다.

    mnist_deep.py
      graph_location = tempfile.mkdtemp()
      print('Saving graph to: %s' % graph_location) 
      #⇒ Saving graph to C:\Users\yuji3\AppData\Local\Temp\tmps8xk5yjw
      train_writer = tf.summary.FileWriter(graph_location)
      train_writer.add_graph(tf.get_default_graph())
    


    Tensorboard 시작


  • 다음 명령을 실행합니다
  • > tensorboard --logdir=C:\Users\yuji3\AppData\Local\Temp\tmps8xk5yjw
    
  • localhost:6006 방문
  • "Graph"로 계산 그래프 확인

  • 좋은 웹페이지 즐겨찾기