Proč vědci místo testování na ověřovací sadě používají desetinásobnou křížovou validaci?
On 30 listopadu, 2020 by adminPřečetl jsem mnoho výzkumných prací o klasifikaci sentimentu a souvisejících tématech.
Většina z nich používá k trénování a testování klasifikátorů desetinásobnou křížovou validaci. To znamená, že se neprovádí žádné samostatné testování / ověřování. Proč?
Jaké jsou výhody / nevýhody tohoto přístupu, zejména pro ty, kteří provádějí výzkum?
Komentáře
- Opravdu ne bylo provedeno samostatné testování?
- +1. Všiml jsem si totéž. Konečným hlášeným výsledkem je mnohokrát desetinásobná křížová validace.
Odpověď
Toto není problém, pokud je životopis vnořený , tj. všechny optimalizace, výběry funkcí a výběry modelů, ať už CV používají nebo ne, jsou zabaleno v jednom velkém životopisu.
Jak to porovná s extra sadou ověření? Zatímco validační sada je obvykle jen víceméně náhodně vybraná část celých dat, je to prostě ekvivalent jedné iterace CV. Za tímto účelem je to vlastně horší metoda, protože ji lze snadno ovlivnit (doufejme) naštěstí / nešťastně vybranou nebo sadou ověřených třešní.
Jedinou výjimkou jsou časové řady a další údaje, na kterých záleží na objednávce objektu; ale v obou případech vyžadují zvláštní zacházení.
Odpověď
Hlavním důvodem je, že odhad křížové validace k-fold má nižší rozptyl než jeden odhadovaný set-out set, což může být velmi důležité, pokud je omezené množství dostupných dat. Pokud máte jedinou sadu pro zadržení, kde se 90% dat používá k trénování a 10% se používá k testování, je testovací sada velmi malá, takže v odhadu výkonu u různých vzorků dat budou velké rozdíly, nebo pro různé oddíly dat pro vytvoření tréninkových a testovacích sad. ověření k-fold snižuje tuto odchylku průměrováním přes k různých oddílů, takže odhad výkonu je méně citlivý na rozdělení dat. Můžete jít ještě dále opakovanou křížovou validací k-násobku, kdy se křížová validace provádí pomocí různých rozdělení dat za účelem vytvoření k podmnožin k, a poté také přečíst průměr.
Všimněte si však, že všechny kroky postupu přizpůsobení modelu (výběr modelu, výběr prvku atd.) Musí být provedeny nezávisle v každém záhybu postupu křížové validace, jinak bude výsledný odhad výkonu optimisticky zkreslený.
Odpověď
[EDITOVÁNO ve světle komentáře]
Domnívám se, že je problém, pokud používáte výsledky CV k výběru mezi více modelů.
CV vám umožňuje použít celou datovou sadu k trénování a testování jednoho modelu / metody a zároveň mít přiměřenou představu o tom, jak dobře to zobecní. Ale pokud porovnáváte více modelů, můj instinkt spočívá v tom, že srovnání modelů využívá extra úroveň izolace vlakových testů, kterou vám CV poskytne, takže konečný výsledek nebude přiměřeným odhadem přesnosti zvoleného modelu.
Takže bych hádal, že pokud vytvoříte několik modelů a vyberete jeden na základě jeho životopisu, budete příliš optimističtí ohledně toho, co jste našli. K ověření toho, jak dobře vítěz zobecňuje.
Komentáře
- Děkuji. To je pravda. Ale moje otázka se týkala zejména toho, proč v průzkumných příspěvcích chybí konečné ověření? Existuje správný důvod? Chystá se méně dat nebo proto, že životopis dělá dobrou práci a není potřeba samostatné ověření ‚?
- Přístup rozdělení dat je vysoce neefektivní. Dokud nebudou tréninkové i testovací sady enormní, je průměrná čtvercová chyba pro odhad pravděpodobného budoucího výkonu prediktivního modelu menší při bootstrappingu nebo vtipu h 100 opakování 10násobné křížové validace za předpokladu, že postupy převzorkování měly přístup ke všem krokům modelování, které zahrnovaly $ Y $. Rozdělení dat použijte, když také potřebujete ověřit proces měření, měřicí přístroj nebo jiné postupy týkající se významu dat. Rozdělení dat se dobře využívá, když se vybavení liší podle země.
Odpověď
-
Podle mých zkušeností je hlavním důvodem obvykle to, že nemáte dostatek vzorků.
V mém oboru (klasifikace biologických / lékařských vzorků) je někdy testovací sada oddělena, ale často obsahuje jen několik případů. intervaly spolehlivosti tohoto případu jsou obvykle příliš široké na to, aby je bylo možné použít. -
Další výhodou opakované / iterované křížové validace nebo ověření mimo bootstrap je, že vytvoříte spoustu „náhradní“ modely. Předpokládá se, že jsou rovnocenné. Pokud tomu tak není, jsou režimy nestabilní.Tuto nestabilitu můžete skutečně měřit (s ohledem na výměnu několika tréninkových případů) porovnáním buď samotných náhradních modelů, nebo předpovědí, které různé náhradní modely vytvářejí pro stejný případ.
-
Tento dokument Esbensen & Geladi poskytuje pěknou diskusi o některých omezeních křížové validace.
Můžete se postarat většiny z nich, ale jedním důležitým bodem, který nelze vyřešit ověřením převzorkování, je drift, který souvisí s bodem mbq:Jedinou výjimkou k tomu jsou časové řady a další data, kde záleží na pořadí objektů.
Drift znamená, že např. odezva / skutečná kalibrace přístroje se v průběhu času pomalu mění. Chyba generalizace pro neznámé případy tedy nemusí být stejná jako pro neznámé budoucí případy. Pokyny, jako je „opakovaná kalibrace denně / týdně / …“, najdete-li během ověřování drift, je však třeba systematicky získávat testovací sady získané později než tréninková data.
(Můžete provést „speciální“ rozdělení, která zohlední čas pořízení účtu, pokud je váš experiment naplánován podle očekávání, ale obvykle to nebude trvat tolik času, kolik byste chtěli otestovat na detekci úletu)
Odpověď
Proč bychom měli provádět křížové ověřování namísto použití samostatné sady ověřování?
Aurélien Géron o tom mluví ve své knize
Aby nedocházelo k „plýtvání“ příliš velkým množstvím tréninkových dat v sadách ověřování, běžnou technikou je použití křížového ověřování.
Místo jiných hodnot k, proč bychom mohli při křížovém ověřování upřednostňovat použití k = 10?
Odpověď na je, nejprve bych rád poděkoval Jason Brownlee, PhD za jeho skvělý tutoriál na křížové ověření k-fold. Cituji jednu z jeho citovaných knih.
Kuhn & Johnson hovořil o volbě hodnoty k ve své knize .
Volba k je obvykle 5 nebo 10, ale neexistuje žádné formální pravidlo. Jak se k zvětšuje, zmenšuje se rozdíl ve velikosti mezi tréninkovou sadou a podmnožinami převzorkování. Jak se tento rozdíl zmenšuje, zkreslení techniky se zmenšuje (tj. zkreslení je menší pro k = 10 než k = 5 ). V této souvislosti je zkreslení rozdíl mezi odhadovanými a skutečnými hodnotami výkonu.
Potom lze říci, že proč nepoužíváme leave-one -out křížová validace (LOOCV), protože hodnota k je tam maximální, a proto tam bude zkreslení nejméně. V této knize také hovořili o tom, proč můžeme upřednostňovat desetinásobné CV místo upřednostňování LOOCV.
Z praktického hlediska jsou větší hodnoty k více výpočetně zatěžující. V extrémním případě je LOOCV výpočetně nejnáročnější, protože vyžaduje tolik modelů, kolik se hodí datových bodů, a každý model používá podmnožinu, která má téměř stejnou velikost výcvikové sady. Molinaro (2005) zjistil, že ponechání-jedna-ven a k = 10-násobná křížová validace přinesly podobné výsledky, což naznačuje, že k = 10 je více atraktivní z hlediska výpočetní účinnosti. Také malé hodnoty k, řekněme 2 nebo 3, mají vysoké zkreslení, ale jsou velmi výpočetně efektivní.
Přečetl jsem mnoho výzkumných prací o klasifikaci sentimentu a souvisejících tématech. Většina z nich používá k trénování a testování klasifikátorů desetinásobnou křížovou validaci. To znamená, že se neprovádí žádné samostatné testování / ověřování. Proč je to tak?
Pokud nepoužíváme křížové ověření (CV) k výběru jednoho z více modelů (nebo nepoužíváme CV k vyladění hyperparametrů) , nemusíme provádět samostatný test. Důvodem je, že účel provedení samostatného testu je zde splněn v CV (jedním z k záhybů v každé iteraci). Různá vlákna SE o tom hodně mluvili. Můžete zkontrolovat.
Nakonec se mě neváhejte zeptat, jestli vám něco, co jsem napsal, není jasné.
Napsat komentář