Otázka:
Vyhodnocení a srovnání modelu pro výběr nejlepšího modelu
Gago-Silva
2012-02-15 23:11:29 UTC
view on stackexchange narkive permalink

Při porovnávání výsledků získaných s různými modely v R, co bych měl hledat, abych vybral ten nejlepší?

Pokud použiji například následující 4 modely aplikované na stejný vzorek přítomnosti / nepřítomnosti odebraný z datová sada druhů se stejnými proměnnými:

  • Zobecněný lineární model

  • Zobecněné aditivní modely Klasifikace

  • Regresní strom

  • Umělé neuronové sítě

Mám porovnat všechny metody AIC, Kappa nebo křížová validace?

Budu si někdy jistý, že vyberu nejlepší model?

Co se stane, když porovnám predikci těchto 4 modelů s Bayesovým faktorem? Mohu je porovnat?

Tři odpovědi:
gung - Reinstate Monica
2012-02-16 00:19:34 UTC
view on stackexchange narkive permalink

Používáte širokou škálu různých typů modelů, což z toho dělá zajímavou situaci. Když lidé řeknou, že se zabývají výběrem modelu, obvykle to znamená, že mají jeden typ modelu s různými sadami prediktorů (například model s více regresemi s proměnnými A, B, C & D, versus A, B & A * B atd.). Upozorňujeme, že abychom mohli určit nejlepší model, musíme určit, co znamená „nejlepší“; protože se zaměřujete na přístupy k dolování dat, předpokládám, že chcete maximalizovat prediktivní přesnost. Dovolte mi říci několik věcí:

  1. Můžete / měli byste je porovnat s Bayesovým faktorem? Mám podezření, že to lze provést, ale mám v tom málo zkušeností, takže bych to měl nechat vyřešit jiným přispěvatelem CV; je tu mnoho těch, kteří jsou na toto téma docela silní.
  2. Mám porovnat všechny metody podle AIC? Nepoužívám AIC ve vaší situaci. Obecně si velmi vážím AIC, ale není to vhodné pro každý úkol. Existují různé verze AIC, ale v podstatě fungují stejně: AIC upravuje míru dobré shody pro schopnost modelu vyrábět dobrou shodu. Dělá to penalizací modelu za počet parametrů, které má. To tedy předpokládá, že každý parametr přispívá stejně ke schopnosti modelu přizpůsobit data. Při porovnávání jednoho modelu vícenásobné regrese s jiným modelem vícenásobné regrese je to pravda. Není však vůbec jasné, že přidání dalšího parametru do modelu s více regresemi stejně zvyšuje schopnost modelu přizpůsobit data jako přidání dalšího parametru do velmi odlišného typu modelu (např. , model neuronové sítě nebo klasifikační strom).
  3. Mám porovnat všechny metody od Kappy? Také vím o používání Kappy pro tento cíl poněkud méně, ale zde je zdroj s některými dobrými obecnými informacemi o něm a zde je článek, na který jsem narazil používá to tímto způsobem a může vám být užitečné (poznámku, nečetl jsem to).
  4. Mám porovnat všechny metody křížovou validací? To je pravděpodobně vaše nejlepší sázka. Vybraný model je ten, který minimalizuje chybu predikce na zadržovací sadě.
  5. „Budu si někdy jistý, že vyberu nejlepší model?“ Ani náhodou. Hrajeme zde pravděpodobnostní hru a bohužel to tak prostě chodí. Jedním z přístupů, které pravděpodobně stojí za to, je bootstrapování dat a použití výběru modelu podle vašeho výběru na každý příklad zavádění. To vám dá představu o tom, jak jasně je jeden model upřednostňován nad ostatními. To bude výpočetně nákladné (alespoň řečeno), ale pro vaše účely by měl stačit malý počet iterací, myslím, že 100 by stačilo.
[Optimální výběr klasifikátoru a negativní zkreslení v odhadu chybovosti: Empirická studie o vysokodimenzionální predikci] (http://bit.ly/wbGHSf) je zajímavý dokument pojednávající o přehnaně optimistických predikčních chybách při výběru „nejlepšího“ modelu několik, včetně těch, které nebyly uvedeny v závěrečné práci, autorem [AL Boulesteix] (http://bit.ly/wgsewg). (Při kontrole reference jsem narazil na tuto interní zprávu, kterou jsem neměl čas číst, [Oprava optimálně vybrané míry chyb založené na převzorkování: plynulá analytická alternativa k vnořené křížové validaci] (http://bit.ly) / wNTueQ).)
@gung Doporučili byste: 1) Nejprve nakreslete 100 bootstrapových vzorků z datové sady, 2) Najděte optimální sadu prediktorů pro každý ze 4 modelů pro každý bootstrapový vzorek, 3) Najděte nejvhodnější model pro každý bootstrap, 4) Nakonec se vyrovnejte na nejlepším modelu ze čtyř (což nemusí být tak přímočaré jako při výběru modelu, který zabírá většinu slotů č. 1 ze 100 vzorků bootstrapu).
@RobertF, něco takového může být způsob, jak jít. Pravděpodobně bych se však nemíchal s nalezením „optimální sady prediktorů“ se zbytkem. 1., který přidává * obrovskou * další složitost problému, a většina přístupů k tomu pravděpodobně povede k horším modelům, než jen k úplnému modelu (srov. Moje odpověď zde: [Algorithms-for-automatic-model-selection] (http://stats.stackexchange.com/questions/20836//20856#20856)). Jinými slovy, budete muset provést křížové ověření s vašimi křížovými ověřeními vedoucími ke kombinatorické explozi.
Kullback Liebler míry nesrovnalostí, z nichž AIC je pěkná forma, je silná a silná parametrická míra.To by byla naše nejlepší sázka, kdyby byly pravděpodobnosti srovnatelné.Informační teorie má něco, čemu se říká normalizovaná pravděpodobnost.S využitím normalizovaných pravděpodobností můžeme být schopni použít AIC napříč třídami modelů.V současné době pracuji na tomto tématu.
Mike Lawrence
2012-02-16 00:13:57 UTC
view on stackexchange narkive permalink

Podle mého názoru je křížová validace docela solidním zlatým standardem pro porovnávání zaměřená na schopnosti modelů předpovídat nová data. To znamená, že alespoň pro případ GLM bylo prokázáno, že AIC (Stone, 1977) je asymptoticky ekvivalentní křížové validaci, takže pokud jste v pořádku s asymptotickým předpokladem, můžete si nějaké ušetřit vypočítat čas přechodem na AIC namísto výpočtu úplné křížové validace.

Andrew Dempsey
2012-02-15 23:13:14 UTC
view on stackexchange narkive permalink

Za předpokladu, že používáte chybu klasifikace nebo něco podobného jako měřítko výkonu, tak proč nezkusit křížovou validaci všech modelů?

Rozdělte svá data například na 10 bloků a proveďte 10 kol sestavení a testování s použitím jednoho z těchto bloků jako testovací sady a dalších devíti jako tréninku (tj. Kolo 1: vlak 2-10, test 1. kolo 2: vlak 1 + 3-10, test 2. kolo 3: vlak 1-2 + 4-10, test 3).

Tento přístup vám pomůže zjistit, který algoritmus (a které parametry pro tyto modely) mají nejlepší výkon.

Jedna z věcí Zpočátku jsem se potýkal s tím, že nezáleží na skutečném modelu, na kterém je postaven, ale na funkci, kterou voláte, a na parametrech, které mu poskytujete, jsou důležité.

Na toto téma jsou napsány knihy. Ten, který používám, je Harrell „Regression Modeling Strategies“. Kritizuje křížovou validaci N-fold jako neefektivní využití dat a navrhuje (stejně jako nabídku softwaru k implementaci), abyste použili metody bootstrapped.


Tyto otázky a odpovědi byly automaticky přeloženy z anglického jazyka.Původní obsah je k dispozici na webu stackexchange, za který děkujeme za licenci cc by-sa 3.0, pod kterou je distribuován.
Loading...