Lineární regrese
Lineární regrese je matematická metoda používaná pro proložení souboru bodů v grafu přímkou. O bodech reprezentujících měřená data se předpokládá, že jejich x-ové souřadnice jsou přesné, zatímco ypsilonové souřadnice mohou být zatíženy náhodnou chybou, přičemž předpokládáme, že závislost y na x lze graficky vyjádřit přímkou. Pokud měřené body proložíme přímkou, tak při odečítání z grafu bude mezi ypsilonovou hodnotou měřeného bodu a ypsilonovou hodnotou ležící na přímce odchylka. Podstatou lineární regrese je nalezení takové přímky, aby součet druhých mocnin těchto odchylek byl co nejmenší. Lineární regresi lze zobecnit i pro prokládání jinou funkcí než přímkou. Termín lineární regrese proto může označovat dvě částečně odlišné věci:
- Lineární regrese představuje aproximaci daných hodnot přímkou metodou nejmenších čtverců. Pokud tuto přímku vyjádříme rovnicí , jedná se o nalezení optimálních hodnot koeficientů a .
- V obecnějším případě může lineární regrese znamenat aproximaci daných hodnot takovou funkcí , kterou lze vyjádřit jako lineární kombinaci funkcí f1 až fk: . Koeficienty se opět určují metodou nejmenších čtverců.
Homoskedasticita (homogenita ve varianci) dat je běžným jevem. Avšak její předpoklad může vést k přecenění[zdroj?!] korelačního koeficientu. V jistých případech je tedy nutné uvážit heteroskedasticitu a použít váženou regresi.
Aproximace přímkou
editovatUvažujme funkční závislost:
Součet čtverců pak bude vypadat takto:
kde jsou souřadnice aproximovaných bodů.
Abychom našli minimum součtu (našli koeficienty , tak, aby nalezená závislost vhodně aproximovala daná data), položíme obě parciální derivace součtu čtverců rovny nule:
Úpravami obdržíme soustavu:
Lze ukázat, že matice této soustavy je regulární pro všechna , a má tedy právě jedno řešení. Obecně lze také ukázat, že v tomto bodě má součet čtverců minimum.
Jejím řešením pro konkrétní hodnoty a dostaneme konečně hledané hodnoty parametrů a .
Podobný postup lze aplikovat na jakýkoliv druh závislosti i více proměnných.
Pokud je každá hodnota zatížena jinou chybou (např. měříme několika různými přístroji), je výhodné zahrnout i toto do aproximace. Označíme-li , potom dostáváme
Přímka procházející počátkem
editovatPokud je požadováno, aby přímka procházela počátkem, hledá se aproximace . Pro konstantu lze odvodit následující vztah:
Máme-li závislost a hodnoty jsou zatíženy chybami , pak pro odhad parametru platí (je užito označení a značí chybu (směrodatnou odchylku) -tého měření).
Dále pro rozptyl parametru platí .
Výpočet na počítači
editovatMatlab umožňuje použít funkci P = POLYFIT(X, Y, 1), kde poslední parametr 1 udává, že hledáme koeficienty polynomu prvního řádu. [1] [2][nedostupný zdroj]
V Excelu a Calcu (LibreOffice a OpenOffice.org) lze koeficient a zjistit funkcí SLOPE(Y; X) [3] [4] a konstantu b funkcí INTERCEPT(Y; X) [5] [6]. Případně lze oba koeficienty zjistit maticově zadanou funkcí {=LINEST(Y;X)}. [7] [8] V českém Excelu se tato funkce nazývá LINREGRESE. [9]
Obecná lineární regrese
editovatV obecnějším případě je možné danými hodnotami , proložit funkci sestavenou jako lineární kombinaci funkcí , kde jsou libovolné (zpravidla lineárně nezávislé) funkce. Regrese se nazývá lineární, neboť funkční předpis je lineární v proměnných , tedy v koeficientech, které podrobujeme regresi. Jinými slovy, úlohu lze formulovat algebraicky jako (lineární) metoda nejmenších čtverců.
Lineární regresí je tedy i výše popsané proložení bodů přímkou ( , , ), ale také parabolou ( , , , ) nebo obecným polynomem. Poznamenejme, že s proložením množiny bodů parabolou, resp. obecným polynomem se můžeme v literatuře setkat pod pojmem kvadratická, resp. polynomická (či polynomiální) regrese.[1]
Koeficienty jsou vypočteny metodou nejmenších čtverců, tedy tak, aby součet druhých mocnin odchylek modelu od daných dat, tj.
byl minimální.
1. způsob výpočtu: parciální derivace
editovatPro koeficienty, které minimalizují výše uvedené kritérium , musí platit, že všechny první parciální derivace kritéria podle těchto koeficientů musí být rovny nule.
Dalšími úpravami se lze dostat k soustavě lineárních rovnic:
Kde jednotlivé prvky a znamenají:
Výše uvedenou soustavu rovnic lze řešit některou z metod uvedených v článku Soustava lineárních rovnic.
2. způsob výpočtu: přeurčená soustava rovnic
editovatJiným způsobem, jak vypočítat hledané koeficienty, je sestavení přeurčené soustavy rovnic a její vyřešení, opět metodou nejmenších čtverců, ale poněkud odlišným postupem. Přeurčená soustava rovnic může vypadat následovně:
Hledané koeficienty, umístěné ve vektoru , lze, za předpokladu lineární nezávislosti sloupců matice , vyjádřit vztahem:
Výpočet na počítači
editovatMatlab umožňuje soustavu rovnic Ax=b řešit velmi snadno pomocí operátoru \ (zpětné lomítko), tedy x = A \ b. Ekvivalentní je funkce MLDIVIDE, tedy x = mldivide(A, b). [10]
V Excelu a Calcu (LibreOffice a OpenOffice.org) lze výše sestavenou přeurčenou soustavu rovnic řešit použitím maticové funkce {=LINEST(known_y's; known_x's; const)} [11] [12] (v českém Excelu LINREGRESE(pole_y; pole_x; b) [13]), kde první parametr known_y's (česky pole_y) je svislá oblast buněk obsahující složky vektoru b a druhý parametr known_x's (česky pole_x) je oblast obsahující prvky matice A. Výsledný vektor x se nachází ve vodorovné oblasti, přičemž jeho složky jsou umístěny v buňkách v opačném pořadí, tedy bk je v buňce nejvíce vlevo a b1 je nejvíce vpravo. Třetí parametr const (česky b) musí být v tomto příkladu roven nule, správné použití tedy je: {=LINEST(b; A; 0)}.
Ovšem nejjednodušším způsobem odhadu parametrů metodou nejmenších čtverců je použití ekonometrického softwaru jako např. STATA, Gretl, Eviews nebo R, kde existují obecné příkazy pro jejich výpočet. Zároveň i tyto programy umožňují jednoduše testovat předpoklady daného modelu.
Převod mocninné a exponenciální regrese na lineární
editovatNa lineární problém lze transformovat i aproximaci mocninnou funkcí nebo aproximaci funkcí exponenciální .
Mocninná funkce
editovatProblém, jak aproximovat původní data křivkou lze převést na podobný problém zlogaritmováním rovnice křivky.
- ,
přičemž místo lze psát .
Vznikl tak problém, jak aproximovat logaritmovaná původní data přímkou , který již problémem není. Koeficient v mocninné funkci lze z koeficientu vypočítat jako .
Exponenciální funkce
editovatProblém, jak aproximovat původní data křivkou lze převést na podobný problém zlogaritmováním rovnice křivky.
- ,
přičemž místo konstant a lze psát a .
Na rozdíl od aproximace mocninnou funkcí, stačí z původních dat logaritmovat pouze hodnoty a řešit problém, jak aproximovat data přímkou . Koeficienty a v exponenciální funkci lze z koeficientů a vypočítat jako , .
Reference
editovat- ↑ Jiří Likeš, Josef Machek, Matematická statistika, SNTL Praha 1988, s. 165-169
Související články
editovatExterní odkazy
editovat- Obrázky, zvuky či videa k tématu lineární regrese na Wikimedia Commons
- Lineární regrese tak nebo jinak: https://web.archive.org/web/20061002153201/http://www.kolej.mff.cuni.cz/%7Elmotm275/skripta/sbirka/html/node49.html
- Lineární regrese v Microsoft Excel: http://praktika.kvalitne.cz/index.php?clanek=text_navod&text=22 Archivováno 29. 6. 2020 na Wayback Machine.
- Aproximace obecnou funkcí, přímkou, polynomem, statistika: http://amper.ped.muni.cz/…