AI 기본 지식

cosine similarity vs L2

study_love 2026. 1. 26. 22:57

 

 Representation learning에서 loss나 similarity metric을 고를 때 가장 자주 등장하는 선택지가 cosine similarityL2 distance다. 오늘 이 글에서는 두 metric이 만드는 representation의 자유도 차이, collapse 방지, noise sensitivity라는 관점에서 cosine과 L2의 차이를 정리해본다.

Cosine similarity 

 Cosine similarity는 두 벡터의 방향(angle)만을 비교한다. 이 말은 다르게 표현하면, 사실상 모든 representation을 unit hypersphere 위로 투영해서 비교하는 것과 같다.

 

👉 모델은 “얼마나 멀리 갔는가”가 아니라
👉 “어느 방향을 가리키는가”만 신경 쓰게 된다.

👉  이 말은 feature들 사이에 크기의 비율만 보겠다는 말과 같다 

  • 즉, [1,2,3]과 [100,200,300]은 같은 vector이다. 

L2 distance

L2 distance는 우리가 가장 익숙한 유클리드 거리다.

여기서는

  • 방향 차이
  • norm 차이

모두 의미를 가진다.

같은 방향을 가리키더라도, 크기가 다르면 멀다고 판단한다.

 

---------------------------------------------------------------------------------------------------------------------------------------------------------------

자유도 관점

  • cosine: D−1 자유도 (반지름 제거)
  • L2: D 자유도 (전체 공간 사용)

즉, L2는 cosine보다 더 많은 자유도를 가진 공간을 다룬다고 볼 수 있다.

 

Collapse 관점

L2를 사용하면, 모든 representation이 0으로 붕괴해버리는 collapse가 발생할 수 있는 반면, cos을 사용하면 적어도 모든 representation이 0 벡터로 collapse되는 상황은 구조적으로 불가능하다.

왜냐하면:

  • cosine은 norm으로 나누기 때문에
  • 0 벡터는 정의 자체가 되지 않는다

그래서 실제로 cosine 기반 objective는

  • trivial zero-solution을 자연스럽게 배제하고
  • “적어도 방향은 달라야 한다”는 최소한의 구조를 강제한다

이 점은 self-supervised learning에서 cosine이 자주 쓰이는 중요한 이유 중 하나다.

 

반면 L2 distance를 사용할 경우,

  • 모든 representation이 동일한 상수 벡터 (심지어 0 벡터)로 collapse되는 해가
  • 수학적으로 유효한 최소값이 되는 경우가 많다

물론 실제 시스템에서는

  • normalization
  • variance regularization
  • negative samples
  • architectural constraints

등으로 이를 막지만, L2 자체는 0-collapse를 구조적으로 방지하지는 않는다.

 

Noise sensitivity 관점

Cosine은 norm 정보를 제거하기 때문에:

  • feature 전체 스케일이 흔들리는 noise
  • activation magnitude의 불안정성

에 덜 민감하다.

 

작은 잡음이 representation의 길이만 흔들고 방향은 유지한다면,
cosine similarity는 거의 변하지 않는다.

 

👉 그래서 cosine 기반 표현은

  • 스케일 노이즈
  • activation drift

에 대해 상대적으로 안정적이다.

 

반면 L2는 norm 차이까지 그대로 거리로 반영한다.

즉,

  • 작은 magnitude noise
  • channel-wise scale 변화

도 곧바로 distance 증가로 이어진다.

이 때문에 L2 기반 학습은:

  • 더 많은 표현력을 허용하는 대신
  • 더 정교한 regularization과 안정화가 필요하다

한 문장 요약

  • Cosine은 representation을 ‘방향의 공간’으로 제한해 안정성을 얻고, L2는 ‘전체 공간’을 사용해 표현력을 얻는다.
  • 둘 중 무엇이 더 좋다기보다는, 어떤 자유도를 모델에게 허용할 것인가의 선택에 가깝다.