상호정보량 (Mutual Information)

수학 컴퓨터과학·AI
한 줄 정의: 한 변수를 알면 다른 변수에 대한 불확실성이 얼마나 줄어드는지를 정보이론의 관점에서 측정한 값입니다.

쉽게 풀면

친구의 우산 소지 여부를 맞혀야 한다고 해봅시다. 아무 정보가 없으면 반반 확률로 헷갈리지만, "오늘 비가 온다"는 사실을 알게 되면 우산을 챙겼을 가능성이 확 높아져 예측이 훨씬 쉬워집니다. 이렇게 한 정보(날씨)를 알았을 때 다른 정보(우산 소지)에 대한 불확실성이 얼마나 줄어드는지를 숫자로 나타낸 것이 상호정보량입니다. 두 변수가 완전히 무관하면 상호정보량은 0이 되고, 하나를 알면 다른 하나가 거의 결정될수록 값이 커집니다. 상관관계와 달리 선형 관계뿐 아니라 복잡하고 비선형적인 관계까지 포착할 수 있습니다.

왜 중요한가

상호정보량은 변수 간 관계를 선형성 가정 없이 포착할 수 있어, 머신러닝의 특징 선택부터 신경과학의 신경 신호 분석, 통신 이론의 채널 용량 계산까지 폭넓게 활용됩니다. 특히 딥러닝 표현학습 연구에서는 입력과 은닉층 표현 사이의 상호정보량을 정보 압축과 일반화 성능을 설명하는 이론적 도구로 삼기도 합니다. 이런 범용성 때문에 여러 분야의 논문에서 변수 간 의존성을 정량화하는 표준 지표로 반복해서 등장합니다.

논문에서는 이렇게 쓰입니다

"입력 변수와 목표 변수 간의 상호정보량(mutual information)을 계산하여 특징 선택(feature selection)의 기준으로 사용하였다."

이 문장은 여러 입력 변수 중에서 목표 변수를 예측하는 데 실제로 도움이 되는 변수를 고르기 위해, 각 변수와 목표 변수 사이의 상호정보량을 계산했다는 뜻입니다. 값이 클수록 그 변수가 예측에 유용한 정보를 담고 있다고 해석합니다.

"두 뇌 영역 간 신경 신호의 상호정보량을 추정하여 영역 간 기능적 연결성(functional connectivity)을 정량적으로 평가하였다."

이 문장은 신경과학 연구에서 상호정보량이 서로 다른 뇌 영역의 활동 신호가 얼마나 밀접하게 연동되어 있는지를 나타내는 척도로 쓰인다는 것을 보여줍니다.

"통신 채널의 입력 신호와 수신 신호 간 상호정보량의 최댓값으로 채널 용량(channel capacity)을 정의하였다."

이 문장은 정보통신 이론에서 상호정보량이 채널이 오류 없이 전달할 수 있는 최대 정보량을 정의하는 핵심 개념으로 쓰인다는 것을 보여줍니다.

조금 더 깊게 보면

상호정보량은 두 변수의 결합확률분포와 각 변수의 주변확률분포를 비교하는 결합확률분포와 주변확률분포으로 정의되며, 이는 상호정보량이 왜 비선형 관계까지 포착할 수 있는지를 설명해 줍니다. 실제 데이터에서는 확률분포를 정확히 알기 어렵기 때문에, 이산화(binning)나 커널밀도추정, 또는 신경망 기반 추정기 등을 이용해 상호정보량을 근사적으로 계산하는 경우가 많습니다. 논문에서 "정규화된 상호정보량(normalized mutual information)"이라는 표현이 나온다면, 서로 다른 변수 쌍 간의 상호정보량 값을 비교하기 쉽도록 0에서 1 사이로 스케일을 조정한 것이라고 이해하면 됩니다.

주의할 점

상호정보량이 0이라는 것은 두 변수가 통계적으로 완전히 독립적이라는 뜻이지만, 상관관계가 0이라고 해서 상호정보량도 반드시 0인 것은 아닙니다. 상관관계는 선형 관계만 포착하므로, 비선형적이지만 뚜렷한 관계가 있는 두 변수는 상관계수가 0에 가까워도 상호정보량은 클 수 있습니다.

관련 용어