AI 기본 지식

invariant vs equivariant

study_love 2026. 1. 20. 16:41

오늘은 invariantequivariant라는 두 가지 중요한 개념에 대해 정리해보려고 한다.

 

우선 하나의 이미지 x가 있다고 하자. 여기에 어떤 변환(transformation) T를 적용한 이미지 **T(x)**가 있다.
그리고 이 두 이미지를 딥러닝 네트워크 f에 통과시켜 latent space로 보낸다고 생각해보자.
즉, 우리는 **f(x)**와 **f(T(x))**를 비교하게 된다.

Invariant (불변성)

Invariant란, 입력에 특정 변환이 가해지더라도 latent space에서의 표현이 변하지 않아야 하는 성질을 의미한다.

MNIST를 예시로 들어보자.
x가 정자세로 쓰여 있는 숫자 7의 이미지이고, **T(x)**가 이를 좌우로 flip한 이미지라고 하자.
비록 픽셀 수준에서는 두 이미지가 다르지만, 두 이미지 모두 **“나는 숫자 7이다”**라는 동일한 의미를 담고 있다.

이처럼 숫자의 정체성(identity)과 같은 정보는, 변환 여부와 상관없이 latent space에서 동일하게 표현되어야 한다.
즉, **f(x)**와 **f(T(x))**는 같아야 한다.

이러한 정보가 바로 invariant한 정보이다. 

Equivariant (등변성)

반면 equivariant는 조금 다른 개념이다.
입력에 가해진 변환이 latent space에서도 일정한 규칙에 따라 그대로 반영되는 성질을 의미한다.

앞선 예시를 다시 생각해보자.
이미지 x가 flip되었다면, 단순히 “여전히 7이다”라는 정보만 남기는 것이 아니라,
“어떤 방향으로, 어떤 방식으로 변형되었는지” 역시 latent에서 구조적으로 표현되어야 한다.

즉, 입력 이미지에 T라는 변환이 가해졌다면,
latent에서도 **f(T(x))**는 **f(x)**에 T에 대응되는 변화가 적용된 형태가 되어야 한다.

다시 말해, rotation이나 flip과 같은 변환이 발생했을 때
latent space에서도 그 변환이 일관된 규칙을 따라 반영되는 것이 바로 equivariant한 표현이다.

 

정리하면,

  • Invariant: 변환이 있어도 의미는 변하지 않아야 하는 정보
  • Equivariant: 변환이 있으면 그 변환 자체가 latent에 구조적으로 반영되어야 하는 정보

이 두 성질을 어떻게 설계하고 조합하느냐에 따라,
모델이 무엇을 “의미”로 보고 무엇을 “변화”로 인식하는지가 결정된다.