1. 최적화 알고리즘 1-1. 미니 배치 경사하강법(Mini-Batch Gradient Descent) 배치 경사하강법(Batch Gradient Descent)는 모든 전체 훈련세트를 한번에 처리하기에 매우 오래걸린다. 한 단계의 업데이트를 위해 전체 훈련세트를 고려해야 한다. 이때 훈련 샘플을 작은 '미니배치' 라는 훈련 세트로 나눈다. 예를들어 5000000개의 훈련 세트에서 사이즈가 1000인 미니배치이면면 5000개의 미니배치가 생긴다. 1-2. 미니 배치 경사하강법 이해하기 Batch Gradient Descent에서의 비용함수 J는 모든 iteration에 대해 감소해야 한다. 증가하면 잘못된 것이다. 하지만 Mini-Batch Gradient Descent에서는 비용함수 J가 감소되는 경향..
Deep Learning/Andrew Ng Deep Learning
1. 머신러닝 어플리케이션 설정하기 1-1. Train/Dev/Test 신경망의 층 수, Hidden Unit 등 사용자가 지정해야하는 하이퍼파라미터는 여러번 반복해 신경망을 학습시켜야 한다. 전통적으로 Train set 으로 학습 후 Dev set으로 검증 후 Test set로 Score를 확인한다 하지만 딥러닝, 예를 들어 100만개 이상의 데이터에서는 Dev/Test를 전통적이 아닌 약 1%/1%가 되도록 적게 하는것이 좋다. 또한 딥러닝에서는 Train과 Test가 다른 분포에서 나오는 경우도 많다. 이때는 Dev와 Test set이 같은 분포에서 나와야 한다. 1-2. 편향과 분산(Bias & Variance) 높은 편향 >>>> 과소적합(Under Fitting: Train set 조차 잘 학..
1-1 신경망 네트워크의 구성 1-2 신경망 네트워크의 출력의 계산 1-3 많은 샘플에 대한 벡터화 1-4 Activation Funcation 신경망에서 은닉층과 출력층에 어떤 함수를 써야 할지 결정을 해야한다. 대표적인 4개의 함수는 다음과 같다. Sigmoid와 Tanh는 Z의 값이 너무 크거나 작아지면 기울기가 0에 수렴하는 단점이 있다. 또한 이진분류 출력층을 제외하고는 대부분 Sigmoid 보다 Tanh함수가 효율적이다. 이진분류의 출력층을 제외하고선 대부분 Relu 함수를 사용한다. + 위와 같은 비선형 함수를 써야하는 이유: 선형함수 사용 시 은닉층을 쌓아도 아무런 혜택이 없을 수 있다. 1-5 신경망 네트워크와 경사 하강법 또한 신경망을 훈련시킬 때 W의 초기값이 0이 아닌 랜덤 변수로 ..
1. 신경망이란? 신경망: Input X 로부터 Hidden units를 지나 출력값 Y를 도출하는 과정. 데이터가 많을수록 X에서 Y로 가는 함수를 알아내기 용이하다. Deep Learning 덕분에 비정형데이터(Audio, Image, Text etc..)의 처리가 더욱 용이해졌다. Deep Learning의 성장 동력: 신경망이 커지거나 데이터가 커지면 성능이 매우 좋아진다. 또한 알고리즘의 개선(Sigmoid >> Relu) 역시 큰 동력이 된다. 2. 신경망과 로지스틱 회귀 2.1 이진분류 로지스틱회귀란? 이진분류를 위한 알고리즘 해당 챕터에서는 표기법을 정의하였다. n_x = 전체 차원의 특성벡터 2.2 로지스틱 회귀 0 또는 1로 판단하는 이진분류 지도학습에 사용된다. ŷ는 Weight(W..