기본 콘텐츠로 건너뛰기

ENTROPY-01. 정보 이론의 핵심 개념: 정보량과 엔트로피

정보 이론은 불확실성을 측정하고 정보를 정량화하는 방법을 다루는 학문입니다. 클로드 섀넌이 제안한 두 가지 핵심 개념, '정보량'과 '엔트로피'에 대해 알아보겠습니다.

1. 개별 사건의 정보량 (Self-Information)

정보량은 어떤 특정 사건이 발생했을 때 우리가 얻게 되는 정보의 양을 의미합니다. 직관적으로 생각해보면, 발생할 확률이 매우 낮은 사건이 실제로 일어났을 때 우리는 더 많은 정보를 얻었다고 느낍니다. 예를 들어, "내일 동쪽에서 해가 뜬다"는 소식보다 "내일 혜성이 지구와 충돌한다"는 소식이 훨씬 더 놀랍고 많은 정보를 담고 있는 것처럼 말이죠.

이러한 직관을 바탕으로, 한 사건 $x$의 정보량 $I(x)$는 해당 사건이 발생할 확률 $p(x)$에 반비례하며, 다음과 같이 정의됩니다.

$$ I(x) = -\log_2(p(x)) $$

여기서,

  • $I(x)$: 사건 $x$의 정보량 (단위: 비트(bit))
  • $p(x)$: 사건 $x$가 발생할 확률
  • $\log_2$​: 밑이 2인 로그를 사용하는 것은 정보의 단위를 '비트'로 표현하기 위함입니다. 1비트는 두 가지 불확실한 경우의 수 중 하나를 특정하는 데 필요한 정보량입니다.

예시: 동전 던지기

  • 공정한 동전 (앞면이 나올 확률 0.5)
    • 앞면이 나왔을 때의 정보량: $I(앞면)=−\log_2​(0.5)=−\log_2​(2^{-1})=1 비트$
  • 조작된 동전 (앞면이 나올 확률 0.9)
    • 앞면이 나왔을 때의 정보량: $I(앞면)=−\log_2​(0.9)≈0.15 비트$
    • 뒷면이 나왔을 때의 정보량: $I(뒷면)=−\log_2​(0.1)≈3.32 비트$
    • 결과에서 볼 수 있듯이, 발생 확률이 낮은 '뒷면'이 나왔을 때 얻는 정보량이 훨씬 큰 것을 확인할 수 있습니다.

2. 엔트로피 (Entropy)

엔트로피는 어떤 정보원(Random Variable)으로부터 얻을 수 있는 정보량의 기댓값(평균)을 의미합니다. 즉, 특정 사건 하나가 아니라, 해당 정보원에서 발생할 수 있는 모든 사건들의 평균 정보량을 나타냅니다. 엔트로피는 그 정보원의 불확실성 또는 무작위성을 측정하는 척도로 사용됩니다.

확률 변수 $X$가 $x_1​,x_2​,...,x_n$​이라는 값을 가질 수 있고, 각각의 확률이 $p(x_1), p(x_2), ..., p(x_n)$일 때, 엔트로피 $H(X)$는 다음과 같이 계산됩니다.

$$ H(X) = \sum_{i=1}^{n} p(x_i)I(x_i) = -\sum_{i=1}^{n} p(x_i)\log_2(p(x_i)) $$

여기서,

  • $H(X)$: 확률 변수 $X$의 엔트로피
  • $p(x_i​)$: 각 사건 $x_i​$가 발생할 확률
  • $I(x_i​)$: 각 사건 $x_i$​의 정보량

엔트로피가 높다는 것은 결과가 어떻게 나올지 예측하기 어렵다는 뜻이고(불확실성이 높음), 엔트로피가 낮다는 것은 결과가 예측하기 쉽다는 의미입니다(불확실성이 낮음).

예시: 동전 던지기 (다시 보기)

  • 공정한 동전 (P(앞면)=0.5, P(뒷면)=0.5)
    • $H(X)=−[0.5\log_2​(0.5)+0.5\log_2​(0.5)]=−[0.5×(−1)+0.5×(−1)]=1 비트$
    • 결과를 전혀 예측할 수 없으므로 불확실성이 최대이며, 엔트로피 값도 최댓값인 1이 됩니다.
  • 조작된 동전 (P(앞면)=0.9, P(뒷면)=0.1)
    • $H(X)=−[0.9\log_2​(0.9)+0.1\log_2​(0.1)]≈−[0.9×(−0.15)+0.1×(−3.32)]≈0.47 비트$
    • 결과가 '앞면'으로 나올 가능성이 높아 예측이 쉬우므로 불확실성이 낮고, 엔트로피 값도 1보다 작게 나옵니다.

만약 동전의 앞면만 나온다면(P(앞면)=1, P(뒷면)=0), 엔트로피는 0이 되며, 이는 불확실성이 전혀 없음을 의미합니다.

요약

  • 정보량: 단일 사건에 대한 정보의 양. 희귀한 사건일수록 정보량은 크다.
  • 엔트로피: 확률 변수 전체에 대한 정보량의 평균(기댓값). 해당 정보원이 얼마나 불확실한지를 나타내는 척도이다.

이 두 개념은 데이터 압축, 통신 시스템, 그리고 머신러닝의 결정 트리(Decision Tree) 등 다양한 분야에서 핵심적인 역할을 합니다.

댓글

이 블로그의 인기 게시물

Windows에 AMP와 MediaWiki 설치하기

1. 들어가기     AMP는 Apache + MySQL +  Perl/PHP/Python에 대한 줄임말이다. LAMP (Linux + AMP)라고 하여 Linux에 설치하는 것으로 많이 소개하고 있지만 Windows에서도 간편하게 설치하여 사용할 수 있다.       이 글은 Windows 7에 Apache + MySQL + PHP를 설치하고 그 기반에서 MediaWiki를 설치하여 실행하는 과정을 간략히 정리한 것이다. 2. MySQL     * 버전 5.6.12     1) 다운로드         http://dev.mysql.com/downloads/installer/         MySQL Installer 5.6.12         Windows (x86, 32-bit), MSI Installer         (mysql-installer-web-community-5.6.12.0.msi)     2) 다운로드한 MSI 파일을 더블클릭하여 설치를 진행한다.           설치 위치:                   C:\Program Files\MySQL               선택 사항:                       Install MySQL Products             Choosing a Se...

MATLAB Rutime 설치하기

MATLAB Rutime 설치하기 미설치시 에러 MATLAB Runtime 을 설치하지 않은 환경에서 MATLAB 응용프로그램이나 공유 라이브러리를 사용하려고 하면 아래와 같은 에러 메시지가 표시될 것입니다. 처리되지 않은 예외: System.TypeInitializationException: 'MathWorks.MATLAB.NET.Utility.MWMCR'의 형식 이니셜라이저에서 예 외를 Throw했습니다. ---> System.TypeInitializationException: 'MathWorks.MATLAB.NET.Arrays.MWArray'의 형식 이니셜라이저에서 예외를 Throw했습니다. ---> System.DllNotFoundException: DLL 'mclmcrrt9_3.dll'을(를) 로드할 수 없습니다. 지정된 모듈을 찾을 수 없습니다. (예외가 발생한 HRESULT: 0x8007007E) 위치: MathWorks.MATLAB.NET.Arrays.MWArray.mclmcrInitialize2(Int32 primaryMode) 위치: MathWorks.MATLAB.NET.Arrays.MWArray..cctor() --- 내부 예외 스택 추적의 끝 --- 위치: MathWorks.MATLAB.NET.Utility.MWMCR..cctor() --- 내부 예외 스택 추적의 끝 --- 위치: MathWorks.MATLAB.NET.Utility.MWMCR.processExiting(Exception exception) 해결 방법 이 문제를 해결하기 위해서는 MATLAB Runtime 을 설치해야 합니다. 여러 가지 방법으로 MATLAB Runtime 을 설치할 수 있습니다. MATLAB 이 설치되어 있는 경우에는 MATLAB 설치 폴더 아래에 있는 MATLAB Runtime 설치 프로그램을 실행하여 설치합니다. ...

Wi-Fi 카드 2.4GHz로만 동작시키기

Wi-Fi 카드 2.4GHz로만 동작시키기 별도의 Wi-Fi AP 장치를 두지 않고 아래와 같은 기기들로만 Wi-Fi 네트워크를 구성하고자 할 때 주변 기기들이 2.4GHz만 지원하기 때문에 PC에서 실행하는 AP가 항상 2.4GHz를 사용하도록 Wi-Fi 카드를 설정해 주어야 합니다. 기기 Wi-Fi 카드 주파수 대역 Wi-Fi Direct 지원 PC (Windows 10) 2.4GHz, 5GHz O 주변 기기들 2.4GHz X Wi-Fi 카드별 주파수 대역 선택 방법 Windows 시작 메뉴에서 설정 을 클릭합니다. Windows 설정 화면에서 네트워크 및 인터넷 을 클릭합니다. 설정 화면의 왼쪽 메뉴바에서 Wi-Fi 를 클릭합니다. 화면 오른쪽 관련 설정 구역에 있는 어댑터 옵션 변경 을 클릭합니다. 설정을 바꾸고자 하는 Wi-Fi 카드 항목을 선택하고 마우스 오른쪽을 누른 다음 속성 메뉴를 클릭합니다. 대화상자의 네트워킹 탭 화면에 있는 구성 버튼을 클릭합니다. 장치 속성 대화상자의 고급 탭 화면으로 이동합니다. 제시되는 속성 항목들은 제품별로 다르며 자세한 사항은 아래의 제품별 설명을 참고하여 값을 설정하시기 바랍니다. Intel Dual Band Wireless-AC 7265 기술 사양 주파수 대역: 2.4GHz, 5GHz 무선 표준: 802.11ac 주파수 대역 선택 장치 속성 대화상자에서 아래와 같이 선택합니다. Wireless Mode 1. 802.11a => 5GHz 4. 802.11b/g => 2.4GHz (이 항목 선택) 6. 802.11a/b/g => 2.4GHz, 5GHz Intel Dual Band Wireless-AC 8265 기술 사양 주파수 대역: 2.4GHz, 5GHz 무선 표준: 802.11ac 주파수 대역 선택 장치 속성 대화상자에서 아래와 같이 ...