2021. 5. 22. 10:57ㆍDeep Learning/개념
Norm [선형대수학]
벡터의 크기(magnitude) 또는 길이(length)를 측정하는 방법
(주의) 차원 != 길이
L1, L2 Norm
이 식에서 p=1이면 L1 Norm, p=2이면 L2 Norm
s.sum(dim=1, keepdim=True) # L1
s.pow(2).sum(dim=1, keepdim=True).sqrt() # L2
L1 Norm
L1 Norm 은 벡터 p, q 의 각 원소들의 차이의 절대값의 합
L2 Norm
L2 Norm 은 벡터 p, q 의 유클리디안 거리(직선 거리)
위 식은 p = (x_1, x_2, ... , x_n), q = (0, 0, ... , 0) 일 때라고 할 수 있음.
검정색 두 점사이의
L1 Norm : 빨간색, 파란색, 노란색
L2 Norm: 초록색
L2 Norm 은 Unique shortest path 를 가짐.
L1 Loss
y_i = 실제 값
f(x_i) = 예측값
실제 값과 예측값 사이의 차이(오차) 값의 절대값의 합 = L1 Loss
= Least absolute deviations(LAD), Least absolute Errors(LAE), Least absolute value(LAV), Least absolute residual(LAR), Sum of absolute deviations
L2 Loss
y_i = 실제 값
f(x_i) = 예측값
실제 값과 예측값 사이의 차이(오차) 값의 제곱의 합= L2 Loss
= Least squares error(LSE)
L2 Loss가 제곱의 합이다 보니 Outlier값에 더 영향을 많이 받음 = L1 Loss가 L2 Loss에 비해 Outlier 에 대해 더 Robust함
L1 Loss 는 0인 지점에서 미분이 불가능하다.
- weight regularization (정규화) (overfitting 방지)
L1 Regularization = Lasso
기존 Cost function 뒤에 L1 항을 추가해준 것
일반적인 cost function에 여기에 가중치 절대값을 더해준다.
편미분 을 하면 w값은 상수값이 되어버리고, 그 부호에 따라 +-가 결정됨
가중치가 너무 작은 경우는 상수 값에 의해서 weight가 0이 되어버림.
==> 결과적으로 몇몇 중요한 가중치 들만 남게되는 효과
L2 Regularization = Ridge
기존 Cost function 뒤에 L2 항을 추가해준 것
Cost function에 제곱한 가중치 값을 더해줌으로써
편미분 을 통해 back propagation 할 때
Cost 뿐만 아니라 가중치 또한 줄어드는 방식으로 학습을 한다.
위 식을 미분하여 GD 에서 사용하면, 전체적으로 W 값이 작아지도록 한다.
특정 weight가 비이상적으로 커지는 상황을 방지하고, Weight decay 가능해짐
= 전체적으로 가중치를 작아지게 하여 overfitting을 방지
일반 GD 에서 (1-a*(lambda)/m)이 추가 되어 가중치가 일정 비율 더 감소하는 것을 식으로도 알 수 있음.
Lasso처럼 일부 항 계수를 0으로 만들어버리진 않지만 전체적인 weight의 절댓값을 감소시켜 그래프가 덜 구불구불하게만들어 과적합을 방지하게 됨.
'Deep Learning > 개념' 카테고리의 다른 글
ResNet (0) | 2021.06.15 |
---|---|
stochastic function(확률함수) (0) | 2021.06.08 |
Receptive Field (0) | 2021.05.06 |
Batch Normalization (0) | 2021.04.02 |
여러가지 Convolution연산 (0) | 2021.03.19 |