면접 질문 정리
Loss Function
모델의 성능 판단에 사용
loss가 클 수록 실제값 y와 예측값 y^의 차이가 커진다
Cost Function
오차가 최대로 줄어들 수 있는 함수식 : J(w,b)
hypothesis로도 쓰는 듯
Gradient Descent (Optimize)
J(w,b)를 최소화하는 w,b 찾기
여기서 알파는 learning rate
Computation Graph
J(a,b,c)를 어떻게 표현하냐면...
Back Propagation
위의 계산식을 거꾸로 통과하면 back propagation ( 빨강)
back propagation을 이용하여 Loss 함수를 최적화하기 위해
gradient를 계산
Logistic Regression Gradient Descent
이를 위의 Computation Graph 형식으로 표현하면...
Vectorization
for loop 없이 z = W.T*x+b를 계산하기 위해
z = np.dot(W.T, x)+b 로 표현
Neural Network
2 Layer Neural Network
a는 activation을 상징
서로 다른 신경망의 층에서 다음의 층으로 전달되는 값을 의미
Hidden Layer의 Dimension
Activation Functions
sigmoid는 binary로 산출(두 개로 구분)해야할 때 사용
+) softmax
sigmoid와 달리 다차원으로 일반화
class 별로 분류해야할 때
마지막 레이어의 activation fucntion은 softmax를 써야 함
non-linear Activation function을 사용하는 이유는
linear만 사용하면 층을 여러 개 두어도 결국 하나인 것처럼 계산되어서
Derivatives of Activation Functions
Regularization
정규화를 통해 계수를 줄여서 모델을 단순하게 만들기
어떻게 regularization은 overfitting을 해소하는가?
L1 Regularization (Lasso) : 가중치를 1 또는 0으로 할당하는 변수가 많도록 (binary하게) 하거나 ..?
= cost function + L1 Norm
W가 업데이트할 때마다 특정 상수를 뺄셈.
어떤 W가 0이 되도록하여 중요 영향을 끼치는 값들만 반영되도록함
L2 Regularization (Ridge) : 모든 항에서 오차를 계산
= cost function + L2 Norm
L1처럼 일부 값을 0으로 만들지 않고
전체적으로 W값이 작아지도록 하여 덜 구불거리게 함
Dropout Regularization : 각 layer 별로 unit을 제거하는 확률을 설정
+) Augmentation, Early Stopping(비추천), 입력값 자체를 정규화 (0,0에 몰리도록...)
Batch Normalization
평균과 분산을 조정하는 과정이
별도로 있는 것이 아니라
신경망 안에 포함되어 학습 시 평균과 분산을 조정하게 함.
mini-batch의 평균과 분산을 이용하여 정규화를 하면 분포가 -1 ~ 1이 된다.
이 다음으로 scale and shift 연산을 위해 학습 가능한 변수인 감마와 베타가 추가되었다.
이들은 Back propagation을 통해 학습된다.
감마는 scale에 대한 값이며, 베타는 shift transform에 대한 값으로
데이터를 계속 정규화하면 activation function의 non-linear 성질을 잃게 되는 문제를 완화하기 위함이다
sigmoid의 중간 부분에 몰리면 선형이 될 수 밖에 없으니 이를 방지하기 위해 작은 숫자를 덧셈하는 것
보통 BN은 activation layer 전에 배치
inference(추론) 시에 mini-batch의 평균과 분산을 이용하면 입력값이 이상해져서 의미가 없어짐
그래서 이 때는 이전에 구했던 평균과 분산을 그대로 불러와서 이용해 정규화를 수행
참고 : https://eehoeskrap.tistory.com/430 , https://m.blog.naver.com/laonple/220808903260
Optimize for Better Gradient Descent
Momentum
Gradient Descent에 현실 물리계에서처럼 관성을 덧셈하여
local minimum에서 벗어날 수 있도록 함
RMSprop
root mean square propagation : Gradient Descent의 속도를 높임
변동이 있는 곳에서 미분의 제곱의 가중 평균 값이 커져서
결과적으로 변동을 무디게 함
Adam
= RMSprop + Momentum
Adaptive stands for adaptive momentum estimation