Machine Learning

면접 질문 정리

WakaraNai 2022. 2. 12. 22:00
728x90
반응형

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

 

728x90
반응형