선형대수학을 배우다 보면 Norm에 대한 말을 듣습니다. 때로는 딥러닝 Loss Function, Regularization을 익히면서 이 Norm이 사용됨을 느끼는 것 또한 사실입니다. 때문에 오늘 이 모든것들의 기초가 될 Norm에 대해 자세히 알아봅시다.
Norm 때로는 Normed Space라고 표현되는 이 단어는 한글로 "노름 공간"이라는 말로 번역되기도 합니다. 이는 벡터의 크기, 길이를 뜻하는 것으로 아래와 같은 표현식을 가집니다.
이 때 p의 값에 따라 우리는 아래와 같이 표기가 가능합니다.
https://en.wikipedia.org/wiki/Norm_(mathematics)
https://en.wikipedia.org/wiki/Norm_(mathematics)
단, 여기서 p는 실수이며 1보다 크거나 같습니다.
또한 벡터 x의 norm은 원점에서 점 x까지의 거리를 의미합니다.
위 p에 따른 3가지의 종류 설명에 앞서 공통적으로 적용되는 성질 3가지에 대해 미리 언급하고 넘어가고자 합니다.
성질 3가지는 다음과 같습니다.
(삼각부등식)
이 모든 것들을 만족시켜야 Norm이라 정의할 수 있다는 의미이기도 합니다.
위에서 이야기한 것처럼 Norm의 성질을 모두 만족시키고 p=1인 값을 의미하는 Norm으로 다음과 같이 표현할 수 있습니다. 이렇게 표현함으로써
딥러닝에서는 L1 Regularization으로 혹은 L1 Loss로 사용되는 경우를 확인할 수 있는데 이것이 때로는 Blur Image를 만들 수 있는 약점으로 작용되기도 합니다.
문제에 따라 다르겠지만 8-puzzle 문제, packman에서 A* Algorithm방식으로 풀고자 할 때 heuristic 값을 구하기위한 방식으로 사용되기도 합니다.
이 방식을 Taxicab Norm이라한 이유는 사각형 격자모양의 길에서 처음 위치로부터 도달 위치 x까지의 거리를 택시를 태우고 가는 거리라고 하여 붙여졌다고 wiki에서는 설명하는데 맞는지는 아래 URL을 참조하시길 바랍니다.
https://en.wikipedia.org/wiki/Taxicab_geometry
https://en.wikipedia.org/wiki/Taxicab_geometry
이 문제에서 L1 norm의 값은 모두 12입니다.
위와 마찬가지로 Norm의 성질들이 다 적용되며 p=2인 경우를 의미하는 norm으로 Euclidean Distance로 정의할 수 있는 Euclidean Space에서 거리에 대응하는 norm을 가르킵니다.
Euclidean Distance에서 많이 봤던 것처럼 이 것은 원점과 특정 점x 사이의 거리를 나타낸 모양과 같습니다. 이를 통해 Euclidean metric 혹은 Pythagorean metric을 표현가능한데 단순히 두 점간의 거리라고 이해해도 무방한 식.
물론 Euclidean Space는 L2 Norm에서만 사용하는 것이 아니라 p가 1보다 크거나 같은 모든 norm에 대해서 설명가능한 공간입니다.
이 식은 L2 Regularization, L2 Loss, 그 외 pixelwise feature map Loss에서 등장합니다.
이 부분은 상한 노름으로 벡터 성분의 최댓값을 구하는 norm입니다.
행렬의 크기를 구해야하는 경우에도 Frobenius norm을 사용하기도 합니다.
https://en.wikipedia.org/wiki/Norm_(mathematics)
https://ko.wikipedia.org/wiki/%EB%85%B8%EB%A6%84_%EA%B3%B5%EA%B0%84
https://namu.wiki/w/%EB%85%B8%EB%A6%84(%EC%88%98%ED%95%99)