# Přednáška - neuronová síť je model popisující výpočet výstupů na základě vstupů - vrací pravděpodobnostní distribuci - https://ufal.mff.cuni.cz/courses/npfl138/2526-summer - když se nám nedaří vyřešit úlohu, potřebujeme prodloužit termín apod., tak můžeme napsat na Piazzu - očekává se, že s úlohami budeme mít potíže – to je to učení, že jo - jsou připravení kdykoliv nám poradit, navést nás - když vyřešíme všechny úlohy, tak nemusíme na zkoušku - ale možná je jednodušší se naučit na zkoušku - konzultace jsou další možnost, jak získat zpětnou vazbu - self-information - míra překvapení, když se dozvíme hodnotu náhodné veličiny (když ji samplujeme) - měla by být nulová pro jevy s pravděpodobností 1 - méně pravděpodobné jevy by měly mít větší míru překvapení - překvapení u nezávislých jevů by se mělo sčítat - $I(x)=-\log P(x)$ - rozšíříme to na celou náhodnou veličinu - spočteme střední hodnotu self-information - tak dostaneme (Shannonovu) entropii - $H(P)=\mathbb E_{x\sim P}[I(x)]=-\mathbb E[\log P(x)]$ - „kolik budeme potřebovat komunikační kapacity, abychom dokázali přenést informace samplované z dané distribuce“ - pro $P(x)=0$ uvažujeme $P(x)\log P(x)=0$ - cross-entropy (křížová entropie) - $H(P,Q)=-\mathbb E_{x\sim P}[\log Q(x)]$ - Gibbsova nerovnost - $H(P,Q)\geq H(P)$ - $H(P)=H(P,Q)\iff P=Q$ - cross-entropy není symetrická - Kullback-Leibler Divergence - „relativní entropie“ - $D_{KL}(P\|Q)=H(P,Q)-H(P)=\mathbb E_{x\sim P}[\log P(x)-\log Q(x)]$ - taky není symetrická - má nějakou horní mez – z té se dá někdy vykoukat, jak se model chová (že třeba vůbec netrénuje) - normální distribuce - platí CLV (viz opilci před hospodou) - princip maximální entropie - když máme sadu omezujících podmínek a chceme řešení, které je co nejobecnější, tak to bude distribuce s největší entropií - např. když známe část náhodného rozdělení a neznáme zbytek, tak nejobecnější je tu distribuci doplnit pomocí uniformní distribuce - no a když známe střední hodnotu a rozptyl, tak ze spojitých distribucí je nejobecnější ta normální - strojové učení - základní úlohy: klasifikace (u diskrétních veličin), regrese (u spojitých veličin) - název *regrese* vychází z paperu *Regression Towards Mediocrity in Hereditary Stature* - učení s učitelem, bez učitele, … - datasety - obrázkové: MNIST, CIFAR-10, CIFAR-100, ImageNet, ImageNet-ILSVRC, COCO (obsahuje segmentaci) - řeč: TIMIT, CommonVoice - text: Penn Treebank, Prague Dependency Treebank, Universal Dependencies - neuron - aktivační funkce, která dostane součet vstupů a rozhodne, jaký bude výstup - bias – hodnota, která na vstupu neuronu je pořád (dovolí mi posouvat, kdy k té aktivaci dojde) - optimalizace vs. ML - cíl optimalizace: co nejlíp popsat trénovací data - cíl ML: zároveň zajistit, abychom uměli generalizovat - No free lunch theorem - kdybychom uvažovali všechny možné distribuce, které existujou, tak všechny klasifikátory budou stejně úspěšné (v průměru) - co se může pokazit - underfitting – máme slabý model, už ta optimalizace selže - extrémně silný model si může zapamatovat data a jejich odpovídající výsledky - overfitting (přeučení) – model se naučí příliš specifická pravidla - např. při klasifikaci obrázků se naučí první řádky testovací sady nazpaměť - jak s tím pracovat – měníme kapacitu modelu - reprezentační kapacita – co model vůbec může zachytit (např. přímka vs. polynom; závisí na velikosti modelu) - efektivní kapacita – co se model reálně naučí (závisí na tréninku, regularizaci, …) - jak bojovat s overfittingem - mít víc dat - regularizovat - ztrátové funkce - MSE pro regresi - obecně – maximum likelihood principle (princip maximální věrohodnosti) - maximum likelihood estimation (MLE) je postup, který nám řekne, jak by ta funkce měla vypadat - MLE - máme empiric data distribution - model nám pro fixní parametry $\theta$ dává taky nějakou distribuci - když místo toho zafixujeme $x$ (přičemž s $\theta$ se dá hýbat), dostaneme likelihood - není to distribuce, nenasčítá se na jedna - „jak moc se modelu líbí trénovací data“ - vede na NLL / cross-entropy / KL divergence - je to vlastně to samé (všechno se to odvozuje stejně) - estimator („odhadce“) - má systematickou chybu? / je vychýlený? (biased) - je nevychýlený (unbiased), když jeho střední hodnota odpovídá hodnotě, co má říct - vychýlení … $\text{bias}(\hat\theta)=\mathbb E(\hat\theta)-\theta$ - MLE je konzistentní odhadce (konverguje v pravděpodobnosti k $\theta$) - taky je statisticky efektivní - MSE jako MLE - ze sítě padá nějaká hodnota $f(x;\theta)$, my ji interpretujeme jako normální distribuci se střední hodnotou v $f(x;\theta)$ a nějakým fixním rozptylem - *všude stejně velký rozptyl* je docela silný předpoklad - SGD s Nesterovým momentem je lepší