기계학습, machine learning을 공부하게 되면, 선형대수 지식이 필수적으로 필요한데, 그 중에서도 norm이 쉬운 것이면서도 아주 자주 만나게 되는 애다.
선형대수에서 linear equation, inverse, vector space, decomposition 등도 중요하지만, 얘네들은 항상 사용되는 개념들은 아니다. norm보다 조금 더 시간을 들여서 공부해야하는 것들이기도 해서 일단 norm에 대한 이해를 먼저 하는 것이 가성비가 좋다고 할 수 있겠다.
위키백과에 따르면
'norm space는 원소들에 일종의 '길이' 또는 '크기'가 부여된 vector space이다'
라고 되어있다.
어려운 개념들은 차치하고 간단히 말해보면, '원소의 길이를 계산한다' 라는 것.
원소 $x$에 대해 norm을 구하는 함수 $f$가 있으면, $f(x)$가 뱉어주는 값이 norm이 된다.
이 때 원소 $x$는 벡터이고, $\mathbb{R}^{n}$이라고 크기를 가정한다.
저런 $f$를 만드는 방법들은 무한히 많이 있겠지만,
특정 몇가지 조건을 만족하는 것을 norm이라고 하기로 했다는 것이다.
이 조건들의 예를 들어보면,
$f(x)$은 항상 0보다 크거나 같다.
$f(x)$가 0일 때는 $x$가 0일때 뿐이다.
이런 조건들은 찾아봐도 좋지만 수학적인 명확한 조건일 뿐, 단순히 사용만 하는 보통의 공돌이 입장에서는 아주 필요한 조건은 아니다.
아무튼 이런 조건을 만족하는 norm들도 여러가지가 있는데, $l_p$-norm 이란 게 대표적으로 잘 쓰인다는 것이다.
$l_p = ||x||_p = ( \sum_i |x_i|^p )^{1/p}$
$p$에 대해 $1 \leq p \leq \infty$라는 조건이 있고,
일반적으로 $p$가 1, 2, $\infty$인 norm들이 자주 쓰인다.
$p$가 1, 2일 때는 저 식을 그대로 쓰면 되는데,
특별히 $p$가 1일때를 Manhattan norm, $p$가 2일때를 Euclidean norm이라 부른다.
$p$가 $\infty$일 때가 좀 특이한데, $\max \{|x_1|, \ldots, |x_n|\}$가 된다.
즉, 주어진 원소들의 절대 값들 중에서 가장 큰 값이 norm이 된다.
얘를 supremum norm 혹은 max norm이라고 부르기도 한다.
여러가지 조건이나 식들이 있었는데, 자주 쓰이는 내용만 정리하면
$l_2$-norm, $l_1$-norm, $l_{\infty}$-norm, 이 3가지 일 것이다.
'공부 > 기계학습' 카테고리의 다른 글
| 간단한 Vector calculus 3 (0) | 2023.04.17 |
|---|---|
| 간단한 Vector calculus 2 (1) | 2023.04.16 |
| 간단한 Vector calculus 1 (0) | 2023.04.15 |
| matrix norm에 대하여 (1) | 2023.04.14 |