1. Norm
norm is a "function that assigns a strictly positive length or size to each vector in a vector space".
여기선 L1 Norm 과 L2 Norm 을 알아본다.
L1 은 taxicab geometry 라고도 하듯이, grid의 선을 따라 p점에서 q 점으로의 거리이다. 여러가지 경우의 수가 가능하다.
L2 는 p점에서 q점으로 가는 직선(대각선) 거리이다. Unique 한 값이다.
2. Loss
실제값과 측정값의 오차를 따질 때도 L1, L2 norm 의 개념을 이용할 수 있다.
L1 을 이용한 Loss 는 Absolute Loss,
L2 를 이용한 Loss 는 Squared Loss 라고 한다.
여기서, L1 Loss, L2 Loss 중 어떤 게 더 Outliers 에 robust 할까? (덜 민감할까?)
L1 Loss 이다.
이유는,
https://www.quora.com/When-is-square-loss-not-good-for-loss-function-for-regression 요기 (<-LATER!)
3. Regularization
Overfitting 과적합 문제를 해결하기 위한 방법 중 하나로 regularization 이 있다.
위 수식처럼 가중치값을 cost 에 더해준다.
앞의 람다 값을 조정해서 람다값이 크다면 w를 더 0에 가까워지게 하는 반면 training set 의 정확도는 떨어진다.
람다값이 상대적으로 작다면, 조금 더 training set에서의 정확도는 올라갈 것이다.
이때, L1 regularization 을 사용하면 LASSO regression,
L2 regularization 을 사용하면 Ridge Regression 이라고 한다.
L1 regularization 과 L2 regularization 의 차이를 보자.
L1은 특정 feature 들이 다른 feature 들보다 더 중요할 때 적합하고, L2는 data 의 feature 들이 다 고르게 중요할 때 적합하다.
L1 - feature 중 일부분 중요
L2 - feature 다 고르게 중요
왜??? 그럴까???
L1 의 경우, feature 들의 가중치를 일부 0으로 설정하는게 가능하다. 즉, 불필요한 feature 는 무시할 수 있도록 한다.
이는 L1이 sparse model, convex optimization 에 적합한 이유라고 하는데,
나중에 더 공부해봐야겠다.
L1 norm 은 그림에서 볼 수 있 듯, 특정한 점들을 거치지 않고 가도 그 값이 나올 수 있다. 노란색이나, 파란색이나,빨간색이나 모두 같은 거리다.
빨간색 같은 경우, data 에서 한 feature 값만 가중치를 주고 다른 가중치들을 모두 0으로 설정했다고도 볼 수 있을 것이다.
하나 더,
L1 norm은 미분불가능이고 L2는 미분가능이다.
https://light-tree.tistory.com/125
https://ratsgo.github.io/machine%20learning/2017/10/12/terms/
'Computer Science > TIL-Today I Learned' 카테고리의 다른 글
Image Segmentation (0) | 2019.09.16 |
---|---|
Virtualenv 에 tensorflow install ERROR ! (2) | 2019.09.11 |
CNN에서의 Deconvolution (0) | 2019.09.09 |
Linux bash shell on Windows 10 (0) | 2019.09.08 |
python 에서 JSON parsing (0) | 2019.09.07 |