Metoda nejmenších čtverců Michal Čihák
26. listopadu 2012
Metoda nejmenších čtverců
• Matematicko-statistická metoda používaná zejména při zpracování
nepřesných dat (typicky experimentálních empirických dat získaných například měřením). • S nejjednodušší aplikací metody nejmenších čtverců se setkáváme
například při prokládání (aproximaci) naměřených dvojrozměrných dat přímkou. • Nepatrně složitější aplikací je proložení dat parabolou, obecným
polynomem předem daného stupně, nebo obecnou lineární kombinací předem daných bázových funkcí.
Metoda nejmenších čtverců
• Matematicko-statistická metoda používaná zejména při zpracování
nepřesných dat (typicky experimentálních empirických dat získaných například měřením). • S nejjednodušší aplikací metody nejmenších čtverců se setkáváme
například při prokládání (aproximaci) naměřených dvojrozměrných dat přímkou. • Nepatrně složitější aplikací je proložení dat parabolou, obecným
polynomem předem daného stupně, nebo obecnou lineární kombinací předem daných bázových funkcí.
Metoda nejmenších čtverců
• Matematicko-statistická metoda používaná zejména při zpracování
nepřesných dat (typicky experimentálních empirických dat získaných například měřením). • S nejjednodušší aplikací metody nejmenších čtverců se setkáváme
například při prokládání (aproximaci) naměřených dvojrozměrných dat přímkou. • Nepatrně složitější aplikací je proložení dat parabolou, obecným
polynomem předem daného stupně, nebo obecnou lineární kombinací předem daných bázových funkcí.
Prokládání dvojrozměrných dat přímkou
Jako motivační úlohu si podrobně prostudujeme ukázku na adrese: http://user.mendelu.cz/marik/prez/mnc-cz.pdf
Proložení dat obecnou polynomickou funkcí
Nyní zobecníme postup z předchozí motivační úlohy. Představme si, že chceme měřením získaná data v podobě m dvojic hodnot (x1 , y1 ), (x2 , y2 ), . . . , (xm , ym ) aproximovat polynomem n-tého stupně Pn (x) = an xn + an−1 xn−1 + · · · + a1 x + a0 , kde n < m − 1.
Proložení dat obecnou polynomickou funkcí Nyní zobecníme postup z předchozí motivační úlohy. Představme si, že chceme měřením získaná data v podobě m dvojic hodnot (x1 , y1 ), (x2 , y2 ), . . . , (xm , ym ) aproximovat polynomem n-tého stupně Pn (x) = an xn + an−1 xn−1 + · · · + a1 x + a0 , kde n < m − 1. Použijeme-li stejný princip jako v předchozí motivační úloze, pak nám půjde o nalezení konstant a0 , a1 , . . . , an , které minimalizují následující výraz (součet čtverců odchylek naměřených hodnot yi od aproximovaných hodnot Pn (xi )): S(a0 , a1 , . . . , an ) =
m X i=1
(yi − Pn (xi ))2 .
Proložení dat obecnou polynomickou funkcí Nyní zobecníme postup z předchozí motivační úlohy. Představme si, že chceme měřením získaná data v podobě m dvojic hodnot (x1 , y1 ), (x2 , y2 ), . . . , (xm , ym ) aproximovat polynomem n-tého stupně Pn (x) = an xn + an−1 xn−1 + · · · + a1 x + a0 , kde n < m − 1. Použijeme-li stejný princip jako v předchozí motivační úloze, pak nám půjde o nalezení konstant a0 , a1 , . . . , an , které minimalizují následující výraz (součet čtverců odchylek naměřených hodnot yi od aproximovaných hodnot Pn (xi )): S(a0 , a1 , . . . , an ) =
m X
(yi − Pn (xi ))2 .
i=1
Pro nalezení minima tohoto výrazu vypočteme postupně parciální derivace ∂S(a0 , a1 , . . . , an )/∂aj pro j = 0, 1, . . . , n a všechny je položíme rovny nule.
Proložení dat obecnou polynomickou funkcí Nyní zobecníme postup z předchozí motivační úlohy. Představme si, že chceme měřením získaná data v podobě m dvojic hodnot (x1 , y1 ), (x2 , y2 ), . . . , (xm , ym ) aproximovat polynomem n-tého stupně Pn (x) = an xn + an−1 xn−1 + · · · + a1 x + a0 , kde n < m − 1. Použijeme-li stejný princip jako v předchozí motivační úloze, pak nám půjde o nalezení konstant a0 , a1 , . . . , an , které minimalizují následující výraz (součet čtverců odchylek naměřených hodnot yi od aproximovaných hodnot Pn (xi )): S(a0 , a1 , . . . , an ) =
m X
(yi − Pn (xi ))2 .
i=1
Pro nalezení minima tohoto výrazu vypočteme postupně parciální derivace ∂S(a0 , a1 , . . . , an )/∂aj pro j = 0, 1, . . . , n a všechny je položíme rovny nule. Tím získáme soustavu n + 1 tzv. normálních rovnic o n + 1 neznámých a0 , a1 , . . . , an .
Proložení dat obecnou polynomickou funkcí
Tím získáme soustavu n + 1 tzv. normálních rovnic o n + 1 neznámých a0 , a1 , . . . , an .
Proložení dat obecnou polynomickou funkcí Tím získáme soustavu n + 1 tzv. normálních rovnic o n + 1 neznámých a0 , a1 , . . . , an .
Proložení dat obecnou polynomickou funkcí Tím získáme soustavu n + 1 tzv. normálních rovnic o n + 1 neznámých a0 , a1 , . . . , an .
Tato soustava má právě jedno řešení v případě, že hodnoty x1 , x2 , . . . , xm jsou navzájem různé.
Příklad – proložení dat kvadratickou funkcí
Daty v následující tabulce proložíme polynom druhého stupně (kvadratickou funkci) pomocí metody nejmenších čtverců. i
1
2
3
4
5
xi
0
0,25
0,50
0,75
1,00
yi
1,0000
1,2840
1,6487
2,1170
2,1170
Příklad – proložení dat kvadratickou funkcí Daty v následující tabulce proložíme polynom druhého stupně (kvadratickou funkci) pomocí metody nejmenších čtverců. i
1
2
3
4
5
xi
0
0,25
0,50
0,75
1,00
yi
1,0000
1,2840
1,6487
2,1170
2,1170
Ze zadání vidíme, že n = 2 a m = 5, tomu odpovídá soustava tří normálních rovnic 5 5 5 X X X 5a0 + a1 xi + a2 x2i = yi , a0
5 X
xi + a1
i=1
a0
5 X i=1
i=1
i=1
5 X
5 X
x2i + a2
i=1
x2i + a1
5 X i=1
i=1
x3i =
i=1
x3i + a2
5 X i=1
5 X
yi xi ,
i=1
x4i =
5 X i=1
yi x2i .
Příklad – proložení dat kvadratickou funkcí Ze zadání vidíme, že n = 2 a m = 5, tomu odpovídá soustava tří normálních rovnic 5 5 5 X X X 2 5a0 + a1 xi + a2 xi = yi , a0
5 X
xi + a1
i=1
a0
5 X i=1
i=1
i=1
5 X
5 X
x2i + a2
i=1
x2i + a1
5 X i=1
i=1
x3i =
i=1
x3i + a2
5 X i=1
5 X
yi xi ,
i=1
x4i =
5 X
yi x2i .
i=1
Ze zadání příkladu postupně vypočteme jednotlivé sumy a po dosazení obdržíme soustavu tří rovnic o třech neznámých 5a0 + 2,5a1 + 1,875a2 = 8, 7680, 2,5a0 + 1,875a1 + 1,5625a2 = 5,4514, 1,875a0 + 1,5625a1 + 1,3828a2 = 4,4015.
Příklad – proložení dat kvadratickou funkcí
Ze zadání příkladu postupně vypočteme jednotlivé sumy a po dosazení obdržíme soustavu tří rovnic o třech neznámých 5a0 + 2,5a1 + 1,875a2 = 8, 7680, 2,5a0 + 1,875a1 + 1,5625a2 = 5,4514, 1,875a0 + 1,5625a1 + 1,3828a2 = 4,4015.
Tato soustava má právě jedno řešení a0 = 1,0051, a1 = 0,86468 a a2 = 0,84316 (přesnost na 6 platných číslic). Hledaný polynom druhého stupně má proto tvar P2 (x) = 1,0051 + 0,86468x + 0,84316x2 .
Příklad – proložení dat kvadratickou funkcí
Příklad – proložení dat kvadratickou funkcí
Pro posouzení kvality proložení zvolené funkce danými daty se využívá tzv. reziduální součet čtverců m X i=1
(yi − Pn (xi ))2 .
Příklad – proložení dat kvadratickou funkcí
Pro posouzení kvality proložení zvolené funkce danými daty se využívá tzv. reziduální součet čtverců m X
(yi − Pn (xi ))2 .
i=1
Pro právě získaný polynom P2 (x) v našem příkladu vychází 5 X (yi − P2 (xi ))2 = 0,000276. i=1
Příklad – proložení dat kvadratickou funkcí
Pro posouzení kvality proložení zvolené funkce danými daty se využívá tzv. reziduální součet čtverců m X
(yi − Pn (xi ))2 .
i=1
Pro právě získaný polynom P2 (x) v našem příkladu vychází 5 X (yi − P2 (xi ))2 = 0,000276. i=1
Polynom P2 (x) aproximuje data v našem příkladu „nejlépeÿ ze všech polynomů druhého stupně ve smyslu metody nejmenších čtverců, tj. reziduální součet čtverců je pro něj minimální (nejmenší možný).