수학/선형대수학

놈(Norm)의 정의와 활용

FedTensor 2025. 10. 2. 12:17

1. 놈의 도입 배경: '거리'와 '크기'의 일반화

우리는 초중고 수학 과정에서 피타고라스 정리를 이용해 2차원 또는 3차원 공간에서 두 점 사이의 거리나 화살표(벡터)의 길이를 구하는 법을 배웠습니다. 예를 들어, 좌표평면 위의 점 (3, 4)에서 원점 (0, 0)까지의 거리는 $\sqrt{3^2+4^2}=5$ 라고 쉽게 계산할 수 있죠.

수학자들은 이러한 '거리' 또는 '크기'라는 직관적인 개념을 우리가 일상적으로 다루는 2차원, 3차원 공간을 넘어 훨씬 더 복잡하고 추상적인 '벡터 공간(Vector Space)'으로 확장하고 싶었습니다. 예를 들어, '함수'들도 하나의 벡터 공간을 이룰 수 있는데, "두 함수의 거리는 얼마일까?" 또는 "이 함수의 전체적인 크기는 얼마일까?"와 같은 질문에 답하기 위한 일관된 도구가 필요했습니다.

이처럼 벡터의 길이(length)나 크기(magnitude)라는 개념을 일반적인 벡터 공간에서 사용할 수 있도록 추상화하고 형식화한 것이 바로 '놈(Norm)'입니다. 놈 덕분에 우리는 복잡한 벡터 공간에서도 두 벡터가 얼마나 '가까운지' 또는 벡터의 '크기'가 얼마나 되는지를 측정하고 비교할 수 있게 되었습니다.

2. 놈의 정의

벡터 공간 $V$ 위의 함수 $||\cdot||:V\rightarrow\mathbb{R}$ 가 다음 세 가지 조건을 만족할 때, 이 함수를 놈이라고 정의합니다. (단, $\mathbf{x}, \mathbf{y} \in V$ 이고, 스칼라 $a \in  \mathbb{R}$ 입니다.)

 

  1. 비음수성 (Non-negativity)
    • $||\mathbf{x}||\geq0$ 이며, $||\mathbf{x}||=0$ 일 필요충분조건은 $\mathbf{x}=0$ (영벡터)이다.
    • (벡터의 크기는 항상 0 이상이며, 크기가 0인 벡터는 영벡터뿐입니다.)
  2. 동차성 (Homogeneity)
    • $||a\mathbf{x}||=|a|\cdot||\mathbf{x}||$
    • (벡터에 스칼라배를 한 것의 크기는, 원래 벡터 크기의 스칼라 절대값 배와 같습니다.)
  3. 삼각 부등식 (Triangle Inequality)
    • $||\mathbf{x}+\mathbf{y}||\leq||\mathbf{x}||+||\mathbf{y}||$
    • (두 벡터의 합의 크기는 각 벡터 크기의 합보다 작거나 같습니다. 이는 두 변의 길이의 합이 나머지 한 변의 길이보다 항상 크거나 같다는 삼각형의 원리와 같습니다.)

3. 대표적인 놈의 종류

벡터 $\mathbf{x}=(x_1​,x_2​,...,x_n​)$ 에 대해 가장 널리 쓰이는 놈은 Lp-놈입니다.

  • L1 놈 (맨해튼 놈, Manhattan Norm)
    • 정의: $||x||_1​=\sum_{i=1}^{n}​|x_i​|=|x_1​|+|x_2​|+⋯+|x_n​|$
    • 의미: 각 성분의 절댓값의 합입니다. 마치 뉴욕 맨해튼처럼 격자 모양의 길을 따라 이동하는 최단 거리를 구하는 것과 같다고 해서 '맨해튼 거리' 또는 '택시 거리(Taxicab distance)'라고도 불립니다.
  • L2 놈 (유클리드 놈, Euclidean Norm)
    • 정의: $||x||_2​=\sqrt{\sum_{i=1}^n​x_i^2}​​=\sqrt{x_1^2​+x_2^2​+⋯+x_n^2​​}$
    • 의미: 우리가 일상적으로 사용하는 '거리'의 개념입니다. 원점(0,0,...,0)에서 벡터가 가리키는 점까지의 직선거리를 의미합니다. 가장 직관적이고 널리 사용됩니다.
  • L-무한대 놈 (최대 놈, Maximum Norm)
    • 정의: $||x||_\infty=\max_i​|x_i​|=\max(|x_1​|,|x_2​|,…,|x_n​|)$
    • 의미: 벡터 성분 중에서 절댓값이 가장 큰 값입니다.

4. 놈의 활용 사례

놈은 이론 수학을 넘어 다양한 공학 및 데이터 과학 분야에서 핵심적인 역할을 합니다.

  1. 머신러닝 (Machine Learning)
    • 정규화 (Regularization): 모델이 훈련 데이터에 과적합(Overfitting)되는 것을 방지하기 위해 사용됩니다. 손실 함수(Loss function)에 가중치(weight) 벡터의 놈을 더해줌으로써 가중치가 너무 커지지 않도록 제한합니다.
      • L1 정규화 (Lasso): 가중치의 L1 Norm을 사용합니다. 특정 가중치를 0으로 만드는 경향이 있어, 모델의 변수를 선택(feature selection)하는 효과를 가집니다.
      • L2 정규화 (Ridge): 가중치의 L2 Norm을 사용합니다. 가중치들을 전반적으로 작게 만들어 모델을 더 부드럽게 만듭니다.
    • 오차 측정: 모델의 예측값과 실제값 사이의 차이(오차)를 측정하는 데 사용됩니다.
      • 평균 제곱 오차 (MSE)는 오차 벡터의 L2 Norm 제곱과 관련이 깊습니다.
      • 평균 절대 오차 (MAE)는 오차 벡터의 L1 Norm과 관련이 있습니다.
  2. 데이터 과학 및 통계
    • 거리 측정: 데이터 포인트 간의 유사성이나 거리를 측정하는 데 놈이 사용됩니다.
      • k-최근접 이웃 (k-NN) 알고리즘이나 클러스터링 (Clustering)에서 데이터 간의 거리를 계산할 때 유클리드 놈(L2 Norm)이 표준적으로 사용됩니다.
  3. 이미지 처리 및 컴퓨터 비전
    • 두 이미지의 차이를 측정하여 이미지 유사도를 비교하거나, 원본 이미지와 압축된 이미지 간의 손실을 계산하는 데 놈이 사용됩니다. 이미지를 거대한 벡터로 간주하고 픽셀 값의 차이에 대한 놈을 계산하는 방식입니다.
  4. 최적화 (Optimization)
    • 경사 하강법(Gradient Descent)과 같은 반복적 최적화 알고리즘에서, 그래디언트(gradient) 벡터의 놈 크기를 통해 수렴 여부를 판단하는 종료 조건으로 사용될 수 있습니다. 놈이 특정 임계값보다 작아지면 최적점에 충분히 가까워졌다고 판단합니다.

이처럼 놈은 벡터의 '크기'라는 단순한 개념에서 출발하여, 현대 과학과 공학의 여러 분야에서 데이터의 특성을 파악하고 알고리즘의 성능을 제어하는 필수적인 수학적 도구로 활용되고 있습니다.