Otázka:
Může stromová regrese fungovat horší než čistá lineární regrese?
amityaffliction
2017-06-21 09:10:32 UTC
view on stackexchange narkive permalink

Ahoj, studuji regresní techniky.

Moje data mají 15 funkcí a 60 milionů příkladů (regresní úkol).

Když jsem vyzkoušel mnoho známých regresních technik (gradient boosted tree, Decision Tree regression, AdaBoostRegressor atd.), lineární regrese fungovala skvěle.

Mezi těmito algoritmy dosáhl téměř nejlepšího skóre.

Jaký může být důvod?Protože moje data mají tolik příkladů, takže metoda založená na DT se může dobře hodit.

  • regularizovaný lineární regresní hřeben, laso fungovalo horší

Může mi někdo říct něco o dalších regresních algoritmech s dobrým výkonem?

  • Je Factorization Machine and Support vector regression dobrá regresní technika k vyzkoušení?
To má mnohem více společného s vašimi daty než s algoritmem.Struktura lineární regrese je pro vaše data vhodná.
děkuji za odpověď na @MatthewDrury.pozorováním těchto charakteristik se snažím najít vlastnosti svých dat.Je zřejmé, že má malé funkce a spoustu příkladů.a pracovat nejlépe na regrese prosté neuronové sítě.a tím, že neparametrické modely, jako je podpora gradientu, fungují o něco horší než parametrická regrese (za předpokladu tvaru funkce), mohu říci, že moje data nemohou poskytnout mnoho poznatků neznámým datům bez ohledu na to, kolik příkladů mám?Mám potíže s odečtením charakteristiky mých údajů z výsledku.
Nejprve pracujte s několika lineárními žebry a poté prostudujte zbytkové grafy a takové, abyste skutečně rozuměli.Pak můžete ** zjistit, ** jak je špatné přizpůsobení.Nepoužívejte jen házení dat na různé algoritmy, tvrdě pracujte, abyste porozuměli záchvatům.
@kjetilbhalvorsen děkuji za odpověď.Mám 15 nezávislých proměnných.tak jak mohu vykreslit nebo získat vhled ze zbytkového přizpůsobení.můžeš mi pomoci?
čtyři odpovědi:
kjetil b halvorsen
2017-06-21 18:02:09 UTC
view on stackexchange narkive permalink

Měli byste not jednoduše hodit data různými algoritmy a podívat se na kvalitu předpovědí. Musíte lépe porozumět svým datům a způsob, jak toho dosáhnout, je nejprve vizualizovat svá data (okrajové distribuce). I když vás konečně zajímají pouze předpovědi, budete mít lepší pozici pro vytváření lepších modelů, pokud lépe porozumíte datům. Nejprve se tedy pokuste lépe porozumět datům (a jednoduchým modelům přizpůsobeným datům) a pak budete v mnohem lepší pozici pro vytváření složitějších a snad i lepších modelů.

Poté vložte modely lineární regrese se svými 15 proměnnými jako preciktory (později se můžete podívat na možné interakce). Poté z toho uložení spočítejte zbytky, tj. $$ r_i = Y_i - \ hat {Y} _i, \ qquad i = 1, 2, \ tečky, n $$ Pokud je model adekuate, to znamená, že byl schopen extrahovat signál (strukturu) z dat, zbytky by neměly vykazovat žádné vzory. Box, Hunter & Hunter: „Statistika pro experimentátory“ (na kterou byste se měli podívat, je to jedna z vůbec nejlepších knih o statistice) to srovnává s analogií z chemie: Tento model je „filtrem“ určeným k zachycení nečistot z voda (data). To, co zbylo a které prošlo filtrem, by mělo být „čisté“ a jeho analýza (analýza reziduí) může ukázat, že pokud neobsahuje nečistoty (struktura). Viz Kontrola normálnosti zbytků v zobecněných lineárních modelech

Chcete-li vědět, co je třeba zkontrolovat, musíte pochopit předpoklady lineární regrese, viz Co je úplný seznam obvyklých předpokladů pro lineární regresi?

Jedním obvyklým předpokladem je homoskedasticita, tj. konstantní odchylka. Chcete-li to zkontrolovat, vykreslete zbytky $ r_i $ proti předpokládaným hodnotám, $ \ hat {Y} _i $. Chcete-li porozumět tomuto postupu, podívejte se na: Proč jsou zbytkové grafy konstruovány pomocí zbytkových vs predikovaných hodnot?.

Další předpoklady jsou linearita . Chcete-li je zkontrolovat, vykreslete zbytky proti každému z prediktorů v modelu. Pokud na těchto grafech vidíte nějakou křivku, je to důkaz proti linearitě. Pokud zjistíte nelinearitu, můžete zkusit některé transformace nebo (modernější přístup) zahrnout tento nelineární prediktor do modelu nelineárním způsobem, možná pomocí splajnů (máte 60 milionů příkladů, takže by to mělo být docela možné! ).

Pak musíte zkontrolovat možné interakce. Výše uvedené myšlenky lze použít také pro proměnné not v přizpůsobeném modelu. Jelikož se hodí model bez interakcí, které zahrnují proměnné interakce, jako je produkt $ x_i \ cdot z_i $ pro dvě proměnné $ x $, $ z $. Nakreslete tedy zbytky proti všem těmto proměnným interakce. Příspěvek na blogu s mnoha ukázkovými obrázky je http://docs.statwing.com/interpreting-residual-plots-to-improve-your-regression/

Ošetření v délce knihy je R Dennis Cook & Sanford Weisberg: „Rezidua a vliv v regresi“, Chapman & Hall. Modernějším zpracováním v délce knihy je Frank Harrell: „Strategie regresního modelování“.

A v souvislosti s otázkou v nadpisu: „Může stromová regrese fungovat horší než čistá lineární regrese?“ Ano, samozřejmě, že může. Stromové modely mají jako regresní funkci velmi složitou krokovou funkci. Pokud data skutečně pocházejí (chovají se jako simulované z) lineárního modelu, mohou být krokové funkce špatnou aproximací. A jak ukazují příklady v jiné odpovědi, stromové modely by mohly špatně extrapolovat mimo rozsah pozorovaných prediktorů. Můžete také zkusit randomforrest a zjistit, o kolik je to lepší než jediný strom.

Jen pro objasnění: Když řeknete „marginální distribuce“, dalo by se také říci, že se podíváte na univariační distribuce každé proměnné, správně?Jsou „okrajové“ v tom smyslu, že distribuce by se objevily na okrajích scatterplotu nebo tak něco.
Další otázka: Říkáte: „Neměli byste data házet jen na různé algoritmy a dívat se na kvalitu předpovědí.“Moje otázka zní: Proč?Pokud kontrolujete přesnost údajů o testu, je to tak.Pokud nás více zajímá predikce, nemusíme si dělat starosti s chybou typu I nebo s něčím podobným, což by bylo problémem, pokud bychom se zajímali o statistickou významnost a vícenásobné testování.
I když vás konečně zajímají pouze předpovědi, budete mít lepší pozici pro lepší modely, pokud lépe porozumíte datům.Nejprve se tedy pokuste lépe porozumět datům (a jednoduchým modelům přizpůsobeným datům) a pak budete v mnohem lepší pozici pro vytváření složitějších a snad i lepších modelů.
Andy W
2017-06-21 18:49:24 UTC
view on stackexchange narkive permalink

Peter Ellis velmi jednoduchý příklad

Image uploaded from linked site

kde lineární regrese funguje lépe než regresní stromy, extrapoluje nad sledované hodnoty ve vzorku.

Na tomto obrázku jsou černé body pozorovanými hodnotami a barevné body předpovídanými hodnotami.Skutečná data jsou generována podle jednoduché linie s určitým šumem, takže lineární regrese a neurální síť dělají dobrou práci při extrapolaci nad pozorovaná data.Stromové modely nikoli.

Nyní se 60 miliony datových bodů se toho nemusíte obávat.(Budoucnost mě však vždy dokáže překvapit!) Je to však intuitivní ukázka jedné situace, kdy stromy selžou.

děkuji za intuitivní odpověď.i když mám mnoho datových bodů, vzhledem k charakteristikám mých dat si myslím, že se to nepodaří extrapolovat!
protože model založený na NN funguje lépe než lineární regrese.
ještě jedna otázka.Je ‚těžké extrapolovat 'běžný problém neparametrických regresních technik?
Neparametrický je široká síť.Chcete-li extrapolovat, musíte určit nějakou základní nepřetržitou funkci.Stromové modely jsou spíš jako identifikace mnoha malých kroků, proto nenásledují linii mimo doménu pozorovaného vzorku v tomto příkladu.
Markus Loecher
2017-07-02 18:23:10 UTC
view on stackexchange narkive permalink

Je dobře známou skutečností, že stromy nejsou vhodné pro modelování skutečně lineárních vztahů.Zde je ilustrace (obr. 8.7) z knihy ISLR: Fig. 8.7

Horní řádek: Dvojrozměrný příklad klasifikace, ve kterém skutečná hranice rozhodnutí je lineární a je označena stínovanými oblastmi. Klasický přístup, který předpokládá lineární hranici (vlevo), překoná rozhodnutí strom, který provádí rozdělení paralelně s osami (vpravo).

Takže pokud vaše závislá proměnná závisí na regresorech víceméně lineárním způsobem, očekávali byste, že „lineární regrese funguje skvěle“.

Rafa_Mas
2017-06-28 11:24:22 UTC
view on stackexchange narkive permalink

Jakýkoli přístup založený na rozhodovacím stromě (CART, C5.0, náhodné lesy, zesílené regresní stromy atd.) identifikuje ve vašich datech homogenní oblasti a přiřazuje střední hodnotu dat obsažených v této oblasti odpovídajícímu „dovolené“. Jsou tedy granulární a poté musí ve výstupech ukázat řadu kroků. Ti, kteří jsou založeni na „lesích“, tento jev výrazně neukazují, ale stále tam jsou. Agregace velkého počtu stromů ji nuance. Pokud je daná hodnota mimo původní rozsah, je nulovému bodu přiřazen „odchod“, který zahrnuje extrémní stav nalezený v datové sadě pro výcvik, a výstupem je tedy střední hodnota hodnot obsažených v tomto odchodu. Extrapolace tedy není možná. Mimochodem, ANN jsou špatné extrapolátory. Můžete zkontrolovat: Pichaid Varoonchotikul - předpovědi povodní pomocí Artificial Neural a Hettiarachchi et al. Extrapolace umělých neuronových sítí pro modelování srážek - odtokové vztahy jsou velmi ilustrativní a lze je snadno najít v síti! Hodně štěstí!



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...