Improving Deep Neural Networks/3주차

1. Hyperparameter tuning, Batch Normalization, Programming Frameworks hyperparameters의 숫자가 적으면 grid search를 해도 될까? 아니다. hyperparameter 숫자가 적다고 하더라도 특정 parameter가 다른 parameter에 비해 지배적인 영향력을 줄 수 있기 때문이다. 우선순위가 높은 hyperparameter 두 개를 고르시오 learning rate alpha, momentum의 beta(학습 속도에 영향을 주게 됨) hyperparameter search를 baby sit(판다 버전) 스타일로 할 것인가? 여러 모델을 parallel(캐비어 버전)하게 돌릴 것인가? 가지고 있는 자원(컴퓨터)에 달린 문제! 최..
1. Deep Learning Frameworks 이 강의가 제작되던 시기에도 이미 딥러닝 분야에서 활용할 수 있는 다양한 프레임워크들이 존재했다. 어떤 프레임워크를 사용할 것인지는 사용자의 선호에 따라 달라질 수 있다. 하지만 현재 오픈 소스인 것이 이후에는 어떤 이유에 의해서든지 아니게 될 수가 있으므로 장기적으로는(개인의 관점은 아닌듯하다) 어떤 프레임워크를 선택할 것인지에 대해 보다 신중한 판단이 요구된다. 2. TensorFlow Motivating problem Cost Function이 위와 같다고 했을 때 TensorFlow를 사용하면 W와 b를 간편하게 구할 수 있다. import numpy as np import tensorflow as tf w = tf.Variable(0, dtype..
1. Softmax Regression Recognizing cats, dogs, and baby chicks 이전에 다룬 내용은 두 개의 class로 분류하는 것이었습니다. 이를 테면 고양이인지 아닌지를 구분하는 binary classification이라고 할 수 있습니다. 이번에는 두 개의 class가 아닌 여러 개의 class로 구분하는 상황을 가정해보겠습니다. 위 예시에서는 cat, dog, chick, others로 구분합니다. 따라서 neural network의 output layer는 [4,1]의 shape을 갖게 되고 이 벡터는 입력 x가 주어졌을 때 각 class에 해당될 확률을 뜻하게 됩니다. Softmax layer 여러 개의 class가 존재할 때 이를 분류하는 학습을 하는 netw..
1. Normalizing Activation in a Network Normalizing inputs to speed up learning gradient descent 과정에서 빠르게 local minima에 도달하는데 normalization이 도움이 된다는 것은 이전에 배웠다. 그렇다면 neural network에서, 즉 hidden layer가 여러 개인 경우에는 normalization을 언제언제 적용해야 할까? 다시 말하자면 input만 normalization을 해야할까? 아니면 activation function을 통해 나온 결과값에도 적용을 해야할까? 교수님은 둘 다 하는 것을 default로 생각하라고 하셨다. activation function의 결과가 어떻게 나올지는 확실히 예측할..
1. Tuning Process Hyperparameters 모델을 학습할 때 정해야 하는 여러 가지 hyperparameter가 존재한다. 교수님이 이 중 가장 중요하게 생각하는 것은 learning rate(alpha)이고, 나머지는 사용하는 optimizer 등에 따라 달라진다. 그렇다면 이 hyperparameters를 어떤 값으로 tuning하는 것이 좋은 방법일까? Try random values : Don't use a grid 예를 들어 두 개의 hyperparameter가 존재하는 경우 이를 격자처럼 딱딱 정해진 값으로 테스트 해보는 것은 바람직하지 않다. 위 그림에서 만약 hyperparameter 1이 hyperparameter 2에 비해 지배적인 영향력을 가지고 있다고 가정한다면, ..
chanmuzi
'Improving Deep Neural Networks/3주차' 카테고리의 글 목록