콘텐츠로 바로가기

Information Theory & Entropy

정보량을 불확실성의 감소량으로 정의하고, 통신 채널의 한계와 데이터 압축의 수학적 토대를 다루는 정보 이론 학습 노드입니다.

Article
M

Me

hyunyoun's Blog

mathematics-computing-logicmathematicscomputing-logicprobabilitystatisticsinformationinformation-theoryentropy9 min read

1. Overview

정보 이론과 엔트로피(Information Theory & Entropy, ITE)는 컴퓨터 공학의 신 클로드 섀넌(Claude Shannon)이 창시한 분야로, 우리가 다루는 모든 데이터(텍스트, 이미지, 영상) 속에 "도대체 '진짜 정보'가 몇 비트나 들어있는가?"를 측정하고 한계치까지 압축하는 우주적 한계 공학입니다.

학습자는 사건의 불확실성과 무질서도를 수학적으로 측정하는 **엔트로피(Entropy)**의 물리적 의미를 뜯어보고, 불필요한 패턴을 깎아내어 파일 용량을 극한으로 줄이는 데이터 압축(Data Compression) 알고리즘을 해부합니다. 나아가 머신러닝에서 AI가 두 개의 확률 분포가 얼마나 다르게 생겼는지 거리를 재는 **크로스 엔트로피(Cross-Entropy)**와 쿨백-라이블러 발산(KL Divergence)을 통달하여, 손실 압축과 최적화의 심연을 제어하는 아키텍트 역량을 확보합니다.

2. Scope & Boundaries

In-Scope

  • 정보와 무질서도 (Information Physics): 정보량(Self-Information, I(x)=log2P(x)I(x) = -\log_2 P(x)), 섀넌 엔트로피(Shannon Entropy, H(X)=P(x)log2P(x)H(X) = - \sum P(x) \log_2 P(x)).
  • 정보의 전송과 채널 용량 (Channel Dynamics): 결합 엔트로피(Joint Entropy), 조건부 엔트로피(Conditional Entropy), 상호 정보량(Mutual Information, I(X;Y)I(X;Y)), 섀넌-해틀리 정리(채널 용량 한계).
  • 정보 압축 코딩 (Source Coding): 허프만 코딩(Huffman Coding), 섀넌-파노 코딩(Shannon-Fano), 무손실 압축의 이론적 한계.
  • 분포 간 거리 측정 (Divergence & ML): 크로스 엔트로피(Cross-Entropy), 쿨백-라이블러 발산(Kullback-Leibler Divergence, DKL(PQ)D_{KL}(P||Q)).

Out-of-Scope

  • 네트워크 레이어의 구체적 패킷 설계: TCP/IP가 노이즈를 어떻게 재전송(Retransmission)으로 복구하는지 \rightarrow 08-02. TCP, UDP & Reliability 영역.
  • 이미지/비디오 코덱의 하드웨어 스펙: H.264나 JPEG의 이산 코사인 변환(DCT) 상세 최적화 로직 \rightarrow 12-08. Multimedia & Audio Engineering 영역.

Boundaries

  • ITE vs. Probability (01-04-01): 확률(01-04-01)이 "어떤 문자가 나올 확률이 0.1이다"를 정의한다면, ITE는 "그 0.1짜리 문자가 튀어나왔을 때, 우리가 얻게 되는 '깜짝 놀람(Surprisal)의 비트 수'가 정확히 3.32비트다"라고 정보의 절대적 질량을 측정하는 상위 물리입니다.

3. Counterexample

  • 압축률 무한 맹신 (Infinite Compression Fallacy): "ZIP 파일 압축 알고리즘을 여러 번 돌리면, 1GB 파일을 1KB로 무한 압축할 수 있겠지"라는 수리적 무지. 섀넌의 소스 코딩 정리(Source Coding Theorem)에 따르면 무손실 압축의 극한은 데이터의 엔트로피 H(X)H(X)에 물리적으로 막혀 있습니다. 이미 엔트로피 한계까지 압축된 난수(Random Noise) 데이터를 억지로 또 압축하려 들면, 오히려 파일에 헤더가 붙으며 용량이 늘어나는 역스케일링 붕괴를 맞이합니다.
  • KL 발산의 대칭성 착각 (KL Divergence Symmetry Fallacy): AI 모델을 학습시킬 때, 원본 분포 PP와 모델 분포 QQ 사이의 거리(DKLD_{KL})를 재면서 "서울에서 부산 가는 거리나 부산에서 서울 가는 거리는 같지"라고 생각해 DKL(PQ)=DKL(QP)D_{KL}(P||Q) = D_{KL}(Q||P)라고 멍청하게 코드를 짜는 행위. KL 발산은 정보의 비대칭적 손실을 묘사하기 때문에 대칭성이 성립하지 않으며(거리 공간이 아님), 수식을 거꾸로 뒤집으면 모델이 정답을 완전히 빗맞히는 대참사가 발생합니다.

4. Prerequisites

  • 확률 공간과 분포 (Basic): 엔트로피 공식의 시발점인 기댓값(E[logP(x)]E[-\log P(x)])과 확률 질량 함수를 조작하려면 기초 확률론을 호흡처럼 구사해야 합니다. (01-04-01 PSR)

5. Learning Map

Sequence Core Cluster Objective & Description Evidence (BoK)
1 Entropy Physics "뻔한 뉴스는 정보량이 0이고, 개가 사람을 물면 정보량이 터진다"는 역설을 로그 기호로 수식화합니다. P1
2 Source Coding 섀넌의 엔트로피 한계점까지 데이터를 무자비하게 욱여넣어 압축하는 허프만 트리의 알고리즘을 쥡니다. P5
3 Mutual Information 송신기(X)에서 보낸 비트가 노이즈(Y)를 뚫고 수신기까지 얼마나 살아남는지(상호 정보) 통신 한계를 뜯어봅니다. Industry
4 Cross-Entropy in ML 진짜 정답지(P)와 AI의 예측치(Q) 사이의 괴리감을 크로스 엔트로피 공식으로 찢어발겨 딥러닝 비용 함수를 설계합니다. Industry

6. Learning Topics

Basic

Core Topic 01: 자기 정보량과 섀넌 엔트로피 (Self-Information & Entropy)

  • Why to Learn: 넷플릭스 영상이나 AWS S3에 쌓인 로그 파일들이 아무리 커 보여도, 그 안에 진짜 "의미 있는 데이터 덩어리"는 몇 비트밖에 안 되는지 본질적 용량을 재기 위함입니다.
  • What to Learn:
    • Concepts: 자기 정보량(Self-Information, I(x)=log2P(x)I(x) = -\log_2 P(x)), 섀넌 엔트로피(H(X)=P(x)I(x)H(X) = \sum P(x) I(x)).
    • Skills: 불확실성(Uncertainty) 측정, 비트(Bit)와 섀넌(Shannon) 단위.
    • Tools: 확률 분포 그래프.
    • Trade-offs: 어떤 문자가 99% 확률로 나오는 극단적 분포(엔트로피 거의 0, 정보 없음)의 압도적 압축률 vs 모든 문자가 동일한 확률로 등장하는 균등 분포(엔트로피 최대, 무질서도 폭발)의 압축 절대 불가 한계.
  • How to Learn:
    • 1단계: "내일 해가 동쪽에서 뜬다(확률 1)"는 뉴스의 정보량은 log2(1)=0-\log_2(1) = 0비트이고, "내일 외계인이 침공한다(확률 1/1024)"는 뉴스는 log2(210)=10-\log_2(2^{-10}) = 10비트의 폭발적 정보량(깜짝 놀람)을 가짐을 수식과 일상어로 매핑해 봅니다.
    • 2단계: 주사위 조작을 통해 1만 나올 확률을 100%로 땡기면 전체 엔트로피가 0이 되어 주사위를 굴릴 필요조차 없어지는 무질서도의 증발 물리를 뜯어봅니다.
  • Implement: 알파벳 A(0.9), B(0.05), C(0.05) 확률 분포 딕셔너리를 입력받으면 각 문자의 정보량(Bit)을 계산하고, 이들을 가중 평균 내어 파일의 한 글자당 평균적으로 필요한 최소 비트 수(Shannon Entropy)를 도출하는 엔진 작성.

Core Topic 02: 무손실 압축과 허프만 코딩 (Lossless Compression)

  • Why to Learn: 쓸데없이 모든 문자를 8비트(ASCII)로 고정해서 저장하는 바보 같은 짓을 버리고, 자주 나오는 놈은 1비트, 안 나오는 놈은 10비트로 차등 배분하여 디스크 I/O를 우주 방어하기 위해서입니다.
  • What to Learn:
    • Concepts: 소스 코딩 정리(Source Coding Theorem), 가변 길이 인코딩(Variable-length Encoding).
    • Skills: 접두어 코드(Prefix Code), 허프만 트리(Huffman Tree) 구축, 무손실 압축 한계.
    • Tools: 우선순위 큐(Priority Queue).
    • Trade-offs: 디코딩 시 구분이 애매해지는 걸 막기 위해 글자의 끝을 표시하는 특수 기호를 넣는 낭비 vs 어떤 코드도 다른 코드의 접두사(Prefix)가 되지 않게 트리를 짜서 식별 기호 없이 0과 1을 연속으로 읽어버리는 파싱의 극한 효율.
  • How to Learn:
    • 1단계: 글자 A, B, C, D의 출현 빈도를 큐에 넣고, 가장 작은 확률 두 개를 묶어서 부모 노드를 올리는 상향식(Bottom-up) 허프만 트리를 손으로 그려보며 최적의 비트맵 할당 역학을 해부합니다.
    • 2단계: 허프만 코딩으로 짜낸 평균 비트 길이가 절대로 섀넌 엔트로피 H(X)H(X) 밑으로는 내려갈 수 없다는 열역학 제2법칙에 버금가는 정보 이론의 절대 한계선을 뜯어봅니다.
  • Implement: 셰익스피어의 텍스트 소스를 밀어 넣으면 각 알파벳의 빈도를 세어 허프만 트리를 구축하고, 원본 텍스트를 0과 1의 바이너리 문자열로 변환(압축)한 뒤, (원래 용량 - 압축 용량) / 원래 용량 압축률(%)을 찍어내는 커스텀 ZIP 라이브러리.

Practical

Core Topic 03: 상호 정보량과 통신 채널 (Mutual Information & Channel Capacity)

  • Why to Learn: 번개가 치는 노이즈(Noise) 환경에서 송신기(Client)가 보낸 데이터가 수신기(Server)에 얼마나 살아남아 도달할 수 있는지, 대역폭의 물리적 한계를 계산하기 위함입니다.
  • What to Learn:
    • Concepts: 상호 정보량(Mutual Information, I(X;Y)I(X;Y)), 조건부 엔트로피(H(XY)H(X|Y)).
    • Skills: 노이즈 채널 정리(Noisy-channel Coding Theorem), 섀넌-해틀리 정리(C=Blog2(1+S/N)C = B \log_2(1 + S/N)).
    • Tools: 채널 전이 행렬(Transition Matrix).
    • Trade-offs: 데이터 전송 속도를 한계치 이상으로 높이려다 노이즈를 맞고 데이터가 다 찢어져 버리는 붕괴 vs 속도를 채널 용량(CC) 아래로 맞추고 에러 정정 코드(ECC)를 붙여 완벽한 신뢰성을 확보하는 통신 공학의 딜레마.
  • How to Learn:
    • 1단계: I(X;Y)=H(X)H(XY)I(X;Y) = H(X) - H(X|Y) 공식을 통해, "내가 YY(결과)를 알게 됨으로써 XX(원본)에 대한 불확실성(H(X)H(X))이 얼마나 깎여 나갔는가?"라는 상호 정보의 우아한 벤 다이어그램 물리를 해부합니다.
    • 2단계: 와이파이(Wi-Fi)나 5G 스펙을 볼 때, 대역폭(BB)을 넓히거나 신호 대 잡음비(S/NS/N)를 미친 듯이 올려야만 초당 전송 비트 수(CC)가 올라간다는 섀넌-해틀리의 대자연 법칙을 뜯어봅니다.
  • Implement: 송신 비트 0이 1로 뒤집힐 확률이 10%인 비대칭 노이즈 채널 행렬을 입력받아, 조건부 엔트로피를 계산하여 이 채널이 살려낼 수 있는 최대 상호 정보량(Bit/s) 한계치를 수학적으로 선고하는 스크립트.

Advanced

Core Topic 04: 크로스 엔트로피와 KL 발산 (Cross-Entropy & KL Divergence)

  • Why to Learn: 인공지능 모델이 내놓은 헛소리 확률 분포(QQ)를 진짜 정답 분포(PP)로 강제로 끌고 오기 위한 강력한 수학적 멱살잡이(Loss Function)를 설계하기 위해서입니다.
  • What to Learn:
    • Concepts: 크로스 엔트로피(Cross-Entropy, H(P,Q)H(P, Q)), 쿨백-라이블러 발산(Kullback-Leibler Divergence, DKL(PQ)D_{KL}(P||Q)).
    • Skills: 딥러닝 분류기 로스 최적화, 비대칭성(Asymmetry).
    • Tools: Softmax + Cross-Entropy 역전파.
    • Trade-offs: 두 분포의 오차를 잴 때 흔히 쓰는 MSE(Mean Squared Error)의 미적지근한 미분 기울기(학습 정체) vs 정답(P=1P=1)인데 0.001로 틀리게 예측(QQ)하면 로그(logQ-\log Q)를 태워 무한대의 패널티 몽둥이질을 가하는 크로스 엔트로피의 극단적 학습 효율성.
  • How to Learn:
    • 1단계: H(P,Q)=H(P)+DKL(PQ)H(P, Q) = H(P) + D_{KL}(P||Q) 공식을 해체하여, 크로스 엔트로피는 결국 "원본 데이터의 내재적 짐(H(P)H(P))에다가, 내 모델이 멍청해서 발생한 잉여 비트 짐(DKLD_{KL})을 더한 것"이라는 딥러닝의 물리적 해석을 증명합니다.
    • 2단계: P(x)P(x)는 0이 아닌데 내 모델 Q(x)Q(x)가 0.0이라고 절대 확신해버리면 DKLD_{KL} 값이 무한대(\infty)로 터져버리는 로그 분모의 치명적 속성을 통해, 소프트맥스 연산에 1e91e-9 엡실론(Epsilon)을 섞어줘야 하는 엔지니어링 방어 물리를 뜯어봅니다.
  • Implement: 진짜 원-핫 라벨 배열 P = [0, 1, 0]과 딥러닝 예측 배열 Q = [0.1, 0.8, 0.1]을 받아 크로스 엔트로피 값과 KL 발산 값을 각각 뱉어내고, PPQQ의 위치를 바꿨을 때 값이 달라지는 비대칭성(Non-symmetric)을 경고창으로 띄우는 커스텀 로스 함수 모듈.

7. Terminology

Term (EN / ko, abbr) 1문장 정의 단계(기본/권장/실무/심화) 역할/맥락 관련 개념 유사/대비/함께 사용 오해 포인트 Evidence(Primary/Secondary/Industry) Flags(core)
Entropy 확률 변수의 평균적인 불확실성 혹은 정보를 나타내는 물리적 수치입니다. 기본 척도 정의 Probability Disorder '에너지 소모'와 혼동 P1:CS2023/Probability core
Redundancy 정보의 손실을 막기 위해 원본 데이터에 추가적으로 덧붙여진 물리적 여유분입니다. 추천 에러 방지 Parity Checksum '단순한 중복'으로 오해 Industry std core
KL Divergence 두 확률 분포 간의 차이를 정보론적 관점에서 수치화한 거리 유사도 물리입니다. 실무 거리 측정 Cross-Entropy Loss Function 대칭적인 '거리'로 오해 P4 core
Channel Capacity 노이즈가 섞인 통신로를 통해 정보를 오류 없이 보낼 수 있는 물리적 최고 속도입니다. 심화 한계 규정 SNR Bandwidth 단순히 '하드웨어 스펙'으로 오해 Industry std core

8. References

Primary

Secondary

  • [Elements of Information Theory] Cover & Thomas — The "Standard Bible" of information theory.
  • [A Mathematical Theory of Communication] Claude Shannon — The original 1948 seminal paper.

Industry

  • [Shannon-Hartley Theorem in LTE/5G] — Industry application of channel capacity.
  • [Lossless Compression Standards Guide (Zlib/Gzip)] — Practical source coding.

9. Final Checklist

Primary

  • 사건의 확률 P(x)P(x)가 낮을수록 정보량 I(x)I(x)가 지수적으로 증가하는 물리적 필연성을 설명할 수 있는 가? (P1)
  • 엔트로피 수식 P(x)log(1/P(x))\sum P(x) \log (1/P(x))의 기댓값 구조를 분석하여 무질서도를 수치화할 수 있는 가? (P1)

Secondary

  • 엔트로피와 교차 엔트로피의 차이가 KL-발산임을 수식으로 전개하고 그 기하학적 의미를 소통 가능한가?
  • 기호의 빈도가 다를 때 고정 길이 부호(Fixed-length)보다 가변 길이 부호가 왜 더 효율적인지 물리적으로 입증 가능한가?

Industry

  • 마이크로서비스 간 데이터 전송 시, 페이로드의 엔트로피를 분석하여 추가적인 압축 알고리즘 도입 여부를 결정할 수 있는 가? (SFIA)
  • 딥러닝 모델의 손실 함수로 Cross-Entropy를 사용할 때, 예측 분포가 실제 분포와 일치해지는 지점의 수리적 특성을 분석할 수 있는 가?

Math Logic / Probability, Statistics & Information

3 / 5