Az információ nem csupán adat. Az információelmélet, Claude Shannon úttörő munkája, matematikai keretet ad az információ kvantifikálására, tárolására és kommunikációjára. Egy Red Teamer számára ezek a fogalmak nem pusztán elméleti érdekességek; ezek adják a kulcsot a modellek bizonytalanságának, döntési folyamatainak és sebezhetőségeinek megértéséhez. Amikor egy modellt támadunk, valójában az információáramlást és -feldolgozást manipuláljuk.
Entrópia (Shannon-entrópia)
Az entrópia egy valószínűségi változó kimenetelének átlagos bizonytalanságát, „meglepetésszerűségét” méri. Minél nagyobb az entrópia, annál kevésbé vagyunk biztosak a következő kimenetelben. A gépi tanulásban ez a fogalom alapvető, például a döntési fák építésénél, ahol minden lépésben azt a jellemzőt választjuk, amely a legjobban csökkenti az entrópát (azaz a legnagyobb információnyereséget adja).
Egy diszkrét \(X\) valószínűségi változó entrópiája, amely \(n\) lehetséges \(x_i\) értéket vehet fel \(p(x_i)\) valószínűséggel:
A logaritmus alapja általában 2, ekkor az entrópia mértékegysége a bit. Egy esemény, amelynek valószínűsége 1 (biztos esemény), 0 entrópiával rendelkezik, mivel nincs benne bizonytalanság.
| Forgatókönyv | Valószínűségek (Fej, Írás) | Számítás | Entrópia (bit) | Értelmezés |
|---|---|---|---|---|
| Szabályos érme | P(F) = 0.5, P(Í) = 0.5 | -(0.5 * log₂(0.5) + 0.5 * log₂(0.5)) | 1.0 | Maximális bizonytalanság. Egy bit információra van szükségünk a kimenetel megismeréséhez. |
| Cinkelt érme | P(F) = 0.9, P(Í) = 0.1 | -(0.9 * log₂(0.9) + 0.1 * log₂(0.1)) | ~0.469 | Alacsony bizonytalanság. Nagy valószínűséggel fejet fogunk dobni. Kevesebb mint fél bit információt hordoz egy dobás. |
| Kétfejű érme | P(F) = 1.0, P(Í) = 0.0 | -(1.0 * log₂(1.0) + 0 * log₂(0)) | 0.0 | Nincs bizonytalanság. A kimenetel biztos, így az esemény nem hordoz új információt. |
Keresztentrópia (Cross-Entropy)
A keresztentrópia két valószínűségi eloszlás, egy „valós” eloszlás (P) és egy becsült eloszlás (Q) közötti különbséget méri. A gépi tanulásban, különösen a klasszifikációs feladatoknál, ez az egyik leggyakoribb veszteségfüggvény. Azt méri, hogy a modellünk által jósolt valószínűségi eloszlás (Q) mennyire tér el a tényleges címkék eloszlásától (P).
A cél a keresztentrópia minimalizálása, ami arra kényszeríti a modellt, hogy a jóslatai (Q) a lehető legközelebb kerüljenek a valósághoz (P).
Tegyük fel, hogy egy 3 osztályos klasszifikációs problémánk van (kutya, macska, madár). A valós címke „macska”. A modellünk jóslata a következő:
- Valós eloszlás (P): [0, 1, 0] (one-hot kódolás)
- Modell jóslata (Q): [0.1, 0.7, 0.2] (softmax kimenet)
# Pszeudokód a keresztentrópia számítására
import numpy as np
# Valós eloszlás (a kép valójában egy macska)
P = np.array([0, 1, 0])
# A modell által jósolt valószínűségek
Q = np.array([0.1, 0.7, 0.2])
# Keresztentrópia számítása
# H(P, Q) = -(0*log(0.1) + 1*log(0.7) + 0*log(0.2)) = -log(0.7)
cross_entropy_loss = -np.sum(P * np.log(Q))
print(f"Keresztentrópia veszteség: {cross_entropy_loss:.4f}") # Eredmény kb. 0.3567
Ahogy a modell a helyes osztályra (macska) egyre nagyobb valószínűséget jósol (pl. 0.99), a `log(0.99)` értéke közelít a nullához, így a veszteség csökken.
Kullback-Leibler Divergencia (KL-Divergencia)
A KL-divergencia, más néven relatív entrópia, szintén két valószínűségi eloszlás (P és Q) közötti különbséget méri. Azt fejezi ki, hogy mennyi információt veszítünk, ha a valóságot (P eloszlás) egy egyszerűsített modellel (Q eloszlás) közelítjük.
Fontos tulajdonsága, hogy nem szimmetrikus, azaz \( D_{KL}(P || Q) \neq D_{KL}(Q || P) \). Ezért nem távolságmetrika, hanem „divergencia”.
A KL-divergencia szorosan kapcsolódik a keresztentrópiához és az entrópiához. A kapcsolat a következő:
H(P, Q) = H(P) + DKL(P || Q)
Mivel a tanítási adathalmaz eloszlása (P) adott és nem változik, H(P) konstans. Ezért a keresztentrópia minimalizálása ekvivalens a KL-divergencia minimalizálásával. Ez a felismerés az alapja számos generatív modell, például a Variációs Autoenkóderek (VAE) működésének.
KL(P || Q)
Kölcsönös Információ (Mutual Information)
A kölcsönös információ két valószínűségi változó (X és Y) közötti statisztikai függőség mértéke. Azt számszerűsíti, hogy mennyi információt nyerünk az egyik változóról a másik megfigyelésével. Másképpen: mennyivel csökken X bizonytalansága (entrópiája), ha ismerjük Y értékét.
Vagy a közös és marginális eloszlásokkal kifejezve:
Ha X és Y függetlenek, a kölcsönös információ nulla. Ha az egyik tökéletesen meghatározza a másikat, akkor a kölcsönös információ megegyezik a változó entrópiájával.
A Red Teaming kontextusában a kölcsönös információ releváns lehet a jellemzők fontosságának mérésében (egy bemeneti jellemző mennyi információt hordoz a kimeneti osztályról?), vagy a privacy leakage elemzésében (egy modell kimenete mennyi információt szivárogtat ki egy specifikus tanító adatpontról?).