Plocha pod krivkou (AUC)
Plocha pod krivkou (AUC) je základná metrika v strojovom učení, ktorá sa používa na hodnotenie výkonnosti binárnych klasifikačných modelov. Kvantifikuje celkovú...
Kros-entropia meria rozdiel medzi predikovanými a skutočnými pravdepodobnostnými rozdeleniami, široko využívaná ako stratová funkcia v strojovom učení na optimalizáciu presnosti klasifikačných modelov.
Kros-entropia je kľúčový pojem v informačnej teórii aj strojovom učení. Slúži ako metrika na meranie rozdielu medzi dvoma pravdepodobnostnými rozdeleniami nad rovnakou množinou udalostí. V strojovom učení je toto meranie obzvlášť dôležité ako stratová funkcia na kvantifikáciu nesúladu medzi predikovanými výstupmi modelu a skutočnými značkami v dátach. Toto kvantifikovanie je nevyhnutné pri trénovaní modelov, najmä pri klasifikačných úlohách, pretože pomáha upravovať váhy modelu na minimalizáciu chýb v predikciách, čo v konečnom dôsledku zvyšuje výkon modelu.
Pojem kros-entropia, označovaný ako H(p, q), zahŕňa výpočet rozdielu medzi dvoma pravdepodobnostnými rozdeleniami: p (skutočné rozdelenie) a q (modelom odhadnuté rozdelenie). Pre diskrétne rozdelenia je kros-entropia matematicky vyjadrená ako:
$$ H(p, q) = -\sum_{x} p(x) \log q(x) $$
Kde:
Kros-entropia v podstate vypočíta priemerný počet bitov potrebných na identifikáciu udalosti z množiny možností pomocou kódovacej schémy optimalizovanej pre odhadované rozdelenie (q), namiesto skutočného rozdelenia (p).
Kros-entropia je úzko prepojená s Kullback-Leiblerovou (KL) divergenciou, ktorá hodnotí, ako sa jedno pravdepodobnostné rozdelenie líši od iného očakávaného rozdelenia. Kros-entropia H(p, q) môže byť vyjadrená pomocou entropie skutočného rozdelenia H(p) a KL divergencie D_{KL}(p || q) nasledovne:
$$ H(p, q) = H(p) + D_{KL}(p \parallel q) $$
Tento vzťah zdôrazňuje základnú úlohu kros-entropie pri kvantifikovaní chýb v predikciách a prepája štatistickú teóriu s praktickým využitím v strojovom učení.
V strojovom učení, najmä pri klasifikačných problémoch, slúži kros-entropia ako stratová funkcia, ktorá hodnotí, ako dobre sa predikované pravdepodobnostné rozdelenie zhoduje so skutočným rozdelením značiek. Je mimoriadne efektívna pri viactriednych úlohách, kde cieľom je priradiť najvyššiu pravdepodobnosť správnej triede a tým usmerňovať optimalizačný proces počas trénovania modelu.
Táto funkcia sa používa pri binárnych klasifikačných úlohách so dvoma možnými triedami (napr. pravda/nepravda, pozitívne/negatívne). Binárna kros-entropická stratová funkcia je opísaná ako:
$$ L = -\frac{1}{N} \sum_{i=1}^N [y_i \log(p_i) + (1-y_i) \log(1-p_i)] $$
Kde:
Používa sa pri viactriednych klasifikačných úlohách s viacerými triedami. Kategóriová kros-entropická strata sa počíta ako:
$$ L = -\frac{1}{N} \sum_{i=1}^{N} \sum_{j=1}^{C} y_{ij} \log(p_{ij}) $$
Kde:
Predstavme si klasifikačný scenár s tromi triedami: mačky, psy a kone. Ak je skutočná značka pre obrázok pes, reprezentované one-hot vektorom [0, 1, 0], a model predikuje [0.4, 0.4, 0.2], kros-entropická strata sa vypočíta ako:
$$ L(y, \hat{y}) = – (0 \times \log(0.4) + 1 \times \log(0.4) + 0 \times \log(0.2)) = 0.92 $$
Nižšia kros-entropia znamená lepšie zladenie predikovaných pravdepodobností modelu so skutočnými značkami, čo odráža lepší výkon modelu.
Kros-entropia je neoddeliteľnou súčasťou trénovania AI modelov, najmä v prostredí učenia s učiteľom. Široko sa využíva v:
import numpy as np
def cross_entropy(y_true, y_pred):
y_true = np.float_(y_true)
y_pred = np.float_(y_pred)
return -np.sum(y_true * np.log(y_pred + 1e-15))
# Example usage
y_true = np.array([0, 1, 0]) # True label (one-hot encoded)
y_pred = np.array([0.4, 0.4, 0.2]) # Predicted probabilities
loss = cross_entropy(y_true, y_pred)
print(f"Cross-Entropy Loss: {loss}")
V tomto príklade v Pythone funkcia cross_entropy
vypočíta stratu medzi skutočnými značkami a predikovanými pravdepodobnosťami a umožňuje tak hodnotenie a optimalizáciu modelu.
Kros-entropia je metrika, ktorá meria rozdiel medzi dvoma pravdepodobnostnými rozdeleniami. Bežne sa používa ako stratová funkcia na posúdenie, ako dobre predikcie modelu zodpovedajú skutočným značkám.
V strojovom učení kros-entropia kvantifikuje chybu medzi predikovanými pravdepodobnosťami a skutočnými značkami a usmerňuje optimalizačný proces na zlepšenie presnosti modelu, najmä pri klasifikačných úlohách.
Binárna kros-entropia sa používa pri binárnej klasifikácii (dve triedy), zatiaľ čo kategóriová kros-entropia je určená pre viactriednu klasifikáciu. Obe vypočítavajú stratu medzi skutočnými a predikovanými pravdepodobnosťami, prispôsobené počtu tried.
Kros-entropia súvisí s Kullback-Leiblerovou (KL) divergenciou, pretože ju možno vyjadriť ako súčet entropie skutočného rozdelenia a KL divergencie medzi skutočným a predikovaným rozdelením.
Áno. Príklad: import numpy as np def cross_entropy(y_true, y_pred): y_true = np.float_(y_true) y_pred = np.float_(y_pred) return -np.sum(y_true * np.log(y_pred + 1e-15))
Začnite budovať vlastné AI riešenia s intuitívnou platformou FlowHunt. Optimalizujte svoje modely a efektívne automatizujte pracovné postupy.
Plocha pod krivkou (AUC) je základná metrika v strojovom učení, ktorá sa používa na hodnotenie výkonnosti binárnych klasifikačných modelov. Kvantifikuje celkovú...
Krížová validácia je štatistická metóda používaná na vyhodnocovanie a porovnávanie modelov strojového učenia delením dát na trénovacie a validačné sady viackrát...
Logaritmická strata, alebo logaritmická/kros-entropická strata, je kľúčová metrika na hodnotenie výkonnosti modelov strojového učenia—najmä pri binárnej klasifi...