Křížová entropie

Z testwiki
Skočit na navigaci Skočit na vyhledávání

Křížová entropie mezi dvěma rozděleními pravděpodobnosti p a q se stejnou podkladovou množinou událostí míry je v teorii informace průměrný počet bitů potřebných pro identifikaci události vybrané z množiny, jestliže kódovací schéma používané pro množinu je optimalizované pro odhadnuté rozdělení pravděpodobnosti q místo skutečného rozdělení p.

Definice

Křížová entropie rozdělení q vůči rozdělení p na dané množině je definovaná takto:

H(p,q)=Ep[logq].

Jiná definice používá Kullbackovu–Leiblerovu divergenci DKL(pq) rozdělení p z q (neboli relativní entropie rozdělení q vzhledem k p):

H(p,q)=H(p)+DKL(pq),

kde H(p) je entropie rozdělení p.

Pro diskrétní pravděpodobnostní distribuce p a q se stejným nosičem 𝒳 to znamená

H(p,q)=x𝒳p(x)logq(x) (rovnice 1)

Pro spojité distribuce je situace analogická. Musíme předpokládat, že p a q jsou absolutně spojité vzhledem k nějaké referenční míře r (obvykle je r Lebesgueova míra na Borelovské σ-algebře). Nechť P a Q jsou hustoty pravděpodobností rozdělení p a q vzhledem k r. Pak

𝒳P(x)logQ(x)dr(x)=Ep[logQ]

a tedy

H(p,q)=𝒳P(x)logQ(x)dr(x) (rovnice 2)

Poznámka: Notace H(p,q) se používá také pro jinou veličinu, sdruženou entropii rozdělení p a q.

Motivace

Kraftova–McMillanova věta v teorii informace říká, že jakékoli přímo dekódovatelné kódovací schéma pro kódování zprávy identifikující jednu hodnotu xi ze sady možností {x1,...,xn} můžeme považovat za reprezentaci implicitního rozdělení pravděpodobnosti q(xi)=(12)li pro {x1,...,xn}, kde li je délka kódu pro xi v bitech. Proto lze křížovou entropii interpretovat jako očekávanou délku zprávy pro zakódování jedné položky, když předpokládáme nějaké rozdělení q, zatímco data mají ve skutečnosti rozdělení p. To znamená, že očekávané hodnoty se berou ze skutečného rozdělení pravděpodobnosti p místo z q. Očekávaná délka zprávy při skutečném rozdělení p je

Ep[l]=Ep[lnq(x)ln(2)]=Ep[log2q(x)]=xip(xi)log2q(xi)=xp(x)log2q(x)=H(p,q)

Odhad

Je mnoho situací, kdy by bylo třeba měřit křížovou entropii, ale rozdělení p je neznámé. Příkladem je jazykové modelování, kde model je vytvořen na trénovací množině T a jeho křížová entropie je pak měřena na testovací množině pro zhodnocení, jak je model přesný v predikci testovacích dat. V tomto příkladě je p skutečné rozdělení slov v nějakém korpusu a q je rozdělení slov predikované modelem. Protože skutečné rozdělení je neznámé, nelze křížovou entropii přímo spočítat. V takovém případě se odhad křížové entropie počítá pomocí vzorce:

H(T,q)=i=1N1Nlog2q(xi)

kde N je velikost testovací množiny a q(x) je pravděpodobnost události x odhadnuté z trénovací množiny. Suma se počítá přes N. Toto je pravděpodobnostní (Monte Carlo) odhad skutečné křížové entropie, při kterém testovací množinu považujeme za vzorek z p(x).

Vztah k logaritmické věrohodnosti

U klasifikačních problémů chceme odhadnout pravděpodobnost jednotlivých výsledků. Pokud odhadnutá pravděpodobnost výsledku i je qi, zatímco frekvence (empirická pravděpodobnost) výsledku i v trénovací množině je pi a v trénovací množině je N vzorků, pak věrohodnost trénovací množiny je

iqiNpi

a logaritmická věrohodnost vydělená N je

1NlogiqiNpi=ipilogqi=H(p,q)

takže maximalizace věrohodnosti je totéž jako minimalizace křížové entropie.

Minimalizace křížové entropie

Minimalizace křížové entropie se často používá při optimalizaci a odhadu pravděpodobnosti řídkých událostí; viz metoda křížové entropie.

Při porovnávání rozdělení q s pevným referenčním rozdělením p jsou křížová entropie a KL divergence identické až na aditivní konstantu (protože p je pevné): obě nabývají pro p=q své minimální hodnoty, která je 0 pro KL divergenci a H(p) pro křížovou entropii[1]. V inženýrské literatuře se postup minimalizace KL divergence (Kullbackův "Princip minimální diskriminace informace") často nazývá Princip minimální křížové entropie (MCE, z anglického Šablona:Cizojazyčně) nebo Minxent.

Jak je však diskutováno v článku Kullbackova–Leiblerova divergence, někdy je rozdělení q fixováno před referenčním rozdělením a rozdělení p je optimalizováno, aby bylo co nejbližší k q, při platnosti určitých omezení. V takovém případě obě minimalizace nejsou ekvivalentní. To vedlo k určité nejednoznačnosti v literatuře, protože někteří autoři usilovali vyřešit nekonzistenci tím, že termínem křížová entropie označují DKL(pq) místo H(p,q).

Nákladová funkce křížové entropie a logistická regrese

Křížovou entropii lze použít pro definování nákladové funkce při strojovém učení a optimalizaci. Skutečná pravděpodobnost pi je skutečný popisek a dané rozdělení qi je predikovanou hodnotou současného modelu.

Konkrétněji uvažujme logistickou regresi, kterou lze (mimo jiné) použít pro klasifikaci pozorování do dvou možných tříd (často značených 0 a 1). Výstup modelu pro určité pozorování dané vektorem vstupních vlastností x lze interpretovat jako pravděpodobnost, což slouží jako základ pro klasifikaci pozorování. Pravděpodobnost je znázorněna pomocí logistické funkce g(z)=1/(1+ez) kde z je nějaká funkce vstupního vektoru x, obvykle pouze lineární funkce. Pravděpodobnost výstupu y=1 je

qy=1 = y^  g(𝐰𝐱) =1/(1+e𝐰𝐱),

kde vektor vah 𝐰 je optimalizován pomocí nějakého vhodného algoritmu, jako například metodou gradientního spádu. Podobně komplementární pravděpodobnost hledání výstup y=0 je

qy=0 = 1y^

Při použití notace p{y,1y} a q{y^,1y^} můžeme používat křížovou entropii pro získání míry odlišnosti mezi p a q:

H(p,q) = ipilogqi = ylogy^(1y)log(1y^)

Typická nákladová funkce, kterou používáme v logistické regresi, se počítá jako průměr všech křížových entropií ve vzorku. Pokud například máme N vzorků indexovaných n=1,,N, bude nákladová funkce

J(𝐰) = 1Nn=1NH(pn,qn) = 1Nn=1N [ynlogy^n+(1yn)log(1y^n)],

kde y^ng(𝐰𝐱n)=1/(1+e𝐰𝐱n) a g(z) je logistická funkce stejně jako výše.

Logistická ztráta se někdy nazývá ztráta křížové entropie nebo logaritmická ztráta (V tomto případě se třídy zpravidla označují hodnotami {-1,+1})[2].

Odkazy

Reference

Šablona:Překlad

Související články

Externí odkazy

Šablona:Autoritní data