Zadanie 3bPodúloha: California Housing regresný model Úloha:Vyviniete neurónovú sieť na vykonanie regresie na súbore údajov o bývaní v Kalifornii. Cieľom je predpovedať strednú hodnotu ceny domu pre okresy Kalifornie na základe niekoľkých údajov, ako sú údaje o obyvateľstve, príjme a polohe. Dátová množina obsahuje 20 640 prípadov s 8 údajmi, ako napríklad stredný príjem, vek nehnuteľnosti a priemerná obsadenosť a tiež cieľovú hodnotu, ktorou je stredná hodnota ceny domu. Táto úloha vám pomôže pochopiť, ako aplikovať neurónové siete na regresné problémy, kde výstupom je spojitá hodnota. Zadanie:Na riešenie úlohy použite doprednú neurónovú sieť (viacvrstvový perceptrón), kde vyskúšate viacero modelov a môžete sa snažiť nájsť ten najmenší, ale stále úspešný. Natrénujte ju pomocou algoritmov SGD, SGD s momentom a ADAM. Odmerajte trénovaciu a testovaciu chybu. V úlohe určite použite knižnicu PyTorch (stačí verzia pre CPU), iné knižnice podľa svojho uváženia. Náčrt modelu:
Dokumentácia:Dokumentácia má obsahovať popis architektúry a tabuľku hyperparametrov (experiment popíšte tak, aby ho bolo na základe textu možné zopakovať), grafy z priebehu tréningu (trénovacia a testovacia chyba). Na záver napíšte stručné zhodnotenie, ako úspešné boli optimalizačné algoritmy a architektúry, ktoré ste vyskúšali. Podúloha: Backpropagation algoritmus Úloha:V tejto úlohe budete implementovať plne funkčný algoritmus backpropagation, ktorý je kľúčovým komponentom tréningu neurónovej siete. Umožňuje jej učiť sa pomocou minimalizácie zadanej chybovej funkcie. Treba implementovať doprednú aj spätnú časť pre jednotlivé operátory a funkcie, ako aj aktualizácie parametrov siete. Algoritmus overíte natrénovaním jednoduchej doprednej neurónovej siete (viacvrstvového perceptrónu). Zadanie:
Na riešenie úlohy použite knižnicu NumPy pre maticové a vektorové operácie.
Použitie knižníc ako PyTorch a TensorFlow, ktoré obsahujú Náčrt modelu:
Dokumentácia:Dokumentácia má obsahovať jednoduchý popis vašej implementácie algoritmu backpropagation. Vyskúšajte sieť s 1 a 2 skrytými vrstvami pre problémy AND, OR a XOR, k dokumentácii priložte grafy z priebehu tréningu (trénovacia chyba). Vyskúšajte rôzne nastavenia tréningu s momentom a bez momentu a aspoň 2 hodnoty rýchlosti učenia pre problém XOR. |