====== Optimalizace parametrů modelu ====== Vytváříme-li model pro nějaká data, musíme obvykle specifikovat několik parametrů pro model samotný nebo pro algoritmus, který model vytváří. Např.: * u SVM je třeba určit typ jádra, regularizační konstantu C, ... * u metody nejbližších sousedů je třeba určit počet sousedů * u klasifikačních stromů je třeba určit maximální hloubku stromu, minimální počet příkladů v listu, ... Obvykle ale předem nevíme, jaké hodnoty by pro naše data byly nejlepší. Pak nám nezbývá, než vyzkoušet několik (mnoho) různých konfigurací a vybrat tu nejlepší. RapidMiner má pro tyto účely několik operátorů ve skupině ''Process Control/Parameters''. Liší se způsobem, jakým vybírají jednotlivé kombinace hodnot parametrů k testování. Podívejme se blíže na operátor ''Optimize Parameters (Grid)''. Tento operátor systematicky zkouší všechny kombinace hodnot parametrů a spuští svůj vnitřní proces s touto kombinací hodnot. Pěkný příklad je v repozitáři RapidMineru ve skupině ''Samples/Processes/05_Visualisation/05_ParameterValuePlot''. Operátor ''Optimize Parameters'' obsahuje jako svůj vnitřní proces řetězec operátorů ''Validation'' a ''Log''. V operátoru ''Validation'' se učí a testuje SVM model, jemuž se operátorem ''Optimize Parameters'' mění parametry ''C'' (regularizační konstanta) a ''degree'' (stupeň polynomiálního jádra). Pro oba parametry se vyzkouší 5 hodnot, celkem tedy 25 konfigurací. Vypočtený odhad přesnosti se pro každou konfiguraci zaznamenává pomocí operátoru ''Log''. Po spuštění procesu a přepnutí do výsledkové perpektivy si lze obsah ''Log''u prohlédnout a vizualizovat. Zvolíme-li ''Scatter 3D'' graf, a dáme-li na osu X parametr ''C'', na osu Y parametr ''degree'' a na osu z přesnost model (zde nazvaná ''absolute''), uvidíme, že zatímco parametr C má pro naši datocou sadu vliv jen minimální, tak stupeň polynomu má vliv zcela zásadní. Rozmyslete-si, co vlastně tento graf vyjadřije a jaké hodnoty parametrů byste zvolili.