Mazāko kvadrātu metode programmā Excel. Regresijas analīze

KURSA DARBS

disciplīna: datorzinātnes

Tēma: Funkcijas aproksimācija, izmantojot mazāko kvadrātu metodi

Ievads

1. Problēmas izklāsts

2. Aprēķinu formulas

Aprēķins, izmantojot tabulas, kas izveidotas, izmantojot Microsoft Excel

Algoritma diagramma

Aprēķins programmā MathCad

Rezultāti, kas iegūti, izmantojot lineāro funkciju

Rezultātu prezentēšana grafiku veidā

Ievads

Kursa darba mērķis ir padziļināt zināšanas datorzinātnēs, attīstīt un nostiprināt prasmes darbā ar Microsoft Excel izklājlapu procesoru un MathCAD programmatūras produktu un izmantot tos problēmu risināšanā, izmantojot datoru no ar pētniecību saistītas mācību priekšmeta jomas.

Aproksimācija (no latīņu valodas "approximare" - "nākt tuvāk") ir aptuvens jebkuru matemātisku objektu (piemēram, skaitļu vai funkciju) izteiksme, izmantojot citus, kas ir vienkāršāki, ērtāk lietojami vai vienkārši labāk zināmi. Zinātniskajos pētījumos aproksimāciju izmanto, lai aprakstītu, analizētu, vispārinātu un turpmāk izmantotu empīriskos rezultātus.

Kā zināms, var būt precīza (funkcionāla) saikne starp lielumiem, kad vienai konkrētai vērtībai atbilst viena argumenta vērtība, un mazāk precīza (korelācijas) saikne, kad viena konkrēta argumenta vērtība atbilst aptuvenai vērtībai vai noteiktu funkciju vērtību kopu, vienā vai otrā pakāpē tuvu viena otrai. Veicot zinātniskus pētījumus, apstrādājot novērojuma vai eksperimenta rezultātus, parasti nākas saskarties ar otro iespēju.

Pētot dažādu rādītāju kvantitatīvās atkarības, kuru vērtības tiek noteiktas empīriski, parasti ir zināma mainība. Daļēji to nosaka pētīto nedzīvās un it īpaši dzīvās dabas objektu neviendabīgums, daļēji novērošanas un materiālu kvantitatīvās apstrādes kļūda. Pēdējo komponentu ne vienmēr var pilnībā novērst, to var samazināt tikai rūpīgi izvēloties atbilstošu pētījumu metodi un rūpīgi strādājot. Tāpēc, veicot jebkuru pētniecisko darbu, rodas problēma identificēt pētāmo rādītāju atkarības patieso raksturu, to vai citu pakāpi, ko maskē mainīguma neņemšana vērā: vērtības. Šim nolūkam tiek izmantota aproksimācija - aptuvens mainīgo korelācijas atkarības apraksts ar piemērotu funkcionālās atkarības vienādojumu, kas atspoguļo atkarības galveno tendenci (vai tās “tendenci”).

Izvēloties tuvinājumu, jāvadās no konkrētās pētījuma problēmas. Parasti, jo vienkāršāks ir tuvināšanai izmantotais vienādojums, jo aptuvenāks ir iegūtais attiecības apraksts. Tāpēc ir svarīgi izlasīt, cik nozīmīgas un kas izraisa konkrētu vērtību novirzes no iegūtās tendences. Aprakstot empīriski noteiktu vērtību atkarību, daudz lielāku precizitāti var panākt, izmantojot kādu sarežģītāku, daudzparametrisku vienādojumu. Tomēr nav jēgas censties ar maksimālu precizitāti nodot nejaušas vērtību novirzes konkrētās empīrisko datu sērijās. Daudz svarīgāk ir aptvert vispārējo modeli, kas šajā gadījumā visloģiskāk un ar pieņemamu precizitāti ir izteikts ar jaudas funkcijas divu parametru vienādojumu. Tādējādi, izvēloties aproksimācijas metodi, pētnieks vienmēr piekāpjas: viņš izlemj, cik lielā mērā šajā gadījumā ir ieteicams un lietderīgi “upurēt” detaļas un attiecīgi – cik vispārīgi jāizsaka salīdzināmo mainīgo atkarība. Līdztekus modeļu identificēšanai, ko maskē empīrisko datu nejaušas novirzes no vispārējā modeļa, aproksimācija ļauj atrisināt arī daudzas citas svarīgas problēmas: formalizēt atrasto atkarību; atrast nezināmas atkarīgā mainīgā vērtības, izmantojot interpolāciju vai, ja nepieciešams, ekstrapolāciju.

Katrā uzdevumā tiek formulēti uzdevuma nosacījumi, sākotnējie dati, rezultātu izsniegšanas forma un norādītas galvenās matemātiskās atkarības uzdevuma risināšanai. Atbilstoši problēmas risināšanas metodei tiek izstrādāts risinājuma algoritms, kas tiek attēlots grafiskā veidā.

1. Problēmas izklāsts

1. Izmantojot mazāko kvadrātu metodi, tuviniet tabulā norādīto funkciju:

a) pirmās pakāpes polinoms ;

b) otrās pakāpes polinoms;

c) eksponenciālā atkarība.

Katrai atkarībai aprēķiniet determinisma koeficientu.

Aprēķināt korelācijas koeficientu (tikai a gadījumā).

Katrai atkarībai izveidojiet tendenču līniju.

Izmantojot funkciju LINEST, aprēķiniet atkarības skaitliskos raksturlielumus.

Salīdziniet savus aprēķinus ar rezultātiem, kas iegūti, izmantojot funkciju LINEST.

Nosakiet, kura no iegūtajām formulām vislabāk atbilst funkcijai.

Uzrakstiet programmu vienā no programmēšanas valodām un salīdziniet aprēķinu rezultātus ar iepriekš iegūtajiem.

Variants 3. Funkcija ir dota tabulā. 1.

1. tabula.


2. Aprēķinu formulas

Bieži vien, analizējot empīriskos datus, ir jāatrod funkcionāla sakarība starp lielumiem x un y, kas iegūti pieredzes vai mērījumu rezultātā.

Xi (neatkarīgo vērtību) nosaka eksperimentētājs, un yi, ko sauc par empīriskām vai eksperimentālām vērtībām, iegūst eksperimenta rezultātā.

Starp lielumiem x un y pastāvošās funkcionālās attiecības analītiskā forma parasti nav zināma, tāpēc rodas praktiski svarīgs uzdevums - atrast empīrisku formulu.

, (1)

(kur ir parametri), kuru vērtības maz atšķirtos no eksperimentālajām vērtībām.

Saskaņā ar mazāko kvadrātu metodi labākie ir tie koeficienti, kuriem atrastās empīriskās funkcijas kvadrātu noviržu summa no dotajām funkcijas vērtībām būs minimāla.

Izmantojot vairāku mainīgo funkcijas ekstrēma nepieciešamo nosacījumu - daļējo atvasinājumu vienādību ar nulli, mēs atrodam koeficientu kopu, kas nodrošina ar (2) formulu definētās funkcijas minimumu un iegūst normālu sistēmu koeficientu noteikšanai. :

(3)

Tādējādi koeficientu atrašana tiek reducēta uz risināšanas sistēmu (3).

Sistēmas veids (3) ir atkarīgs no empīrisko formulu klases, no kuras mēs meklējam atkarību (1). Lineāras atkarības gadījumā sistēma (3) būs šāda:

(4)

Kvadrātiskās atkarības gadījumā sistēmai (3) būs šāda forma:

(5)

Dažos gadījumos funkcija, kurā nenoteiktie koeficienti tiek ievadīti nelineāri, tiek uzskatīta par empīrisku formulu. Šajā gadījumā dažreiz problēma var būt linearizēta, t.i. samazināt līdz lineāram. Šādas atkarības ietver eksponenciālo atkarību

kur a1 un a2 ir nedefinēti koeficienti.

Linearizāciju panāk, ņemot vienādības (6) logaritmu, pēc kura iegūstam sakarību

(7)

Apzīmēsim un attiecīgi ar un , tad atkarību (6) var ierakstīt formā , kas ļauj pielietot formulas (4), aizstājot a1 ar un ar .

Rekonstruētās funkcionālās atkarības y(x) grafiku, pamatojoties uz mērījumu rezultātiem (xi, yi), i=1,2,…,n sauc par regresijas līkni. Lai pārbaudītu konstruētās regresijas līknes atbilstību eksperimenta rezultātiem, parasti tiek ieviesti šādi skaitliskie raksturlielumi: korelācijas koeficients (lineārā atkarība), korelācijas koeficients un determinācijas koeficients.

Korelācijas koeficients ir lineārās attiecības mērs starp atkarīgiem gadījuma mainīgajiem: tas parāda, cik labi vidēji viens no mainīgajiem var tikt attēlots kā otra lineāra funkcija.

Korelācijas koeficientu aprēķina pēc formulas:

(8)

(9)

kur ir attiecīgi x, y vidējais aritmētiskais.

Korelācijas koeficients starp nejaušiem mainīgajiem absolūtā vērtībā nepārsniedz 1. Jo tuvāk 1, jo ciešāka ir lineārā sakarība starp x un y.

Nelineāras korelācijas gadījumā nosacītās vidējās vērtības atrodas netālu no izliektās līnijas. Šajā gadījumā kā savienojuma stipruma raksturlielumu ieteicams izmantot korelācijas koeficientu, kura interpretācija nav atkarīga no pētāmā atkarības veida.

Korelācijas koeficientu aprēķina pēc formulas:

(10)

Kur un skaitītājs raksturo nosacīto vidējo izkliedi ap beznosacījuma vidējo.

Vienmēr. Vienādība = atbilst nejaušām nekorelētām vērtībām; = tad un tikai tad, ja starp x un y pastāv precīzs funkcionāls savienojums. Gadījumā, ja y ir lineāra atkarība no x, korelācijas koeficients sakrīt ar korelācijas koeficienta kvadrātu. Vērtība tiek izmantota kā rādītājs, kas parāda regresijas novirzi no lineārās.

Korelācijas koeficients ir korelācijas mērs starp y un x jebkurā formā, taču tas nevar sniegt priekšstatu par empīrisko datu tuvināšanas pakāpi īpašai formai. Lai noskaidrotu, cik precīzi konstruētā līkne atspoguļo empīriskos datus, tiek ieviests vēl viens raksturlielums - determinācijas koeficients.

Determinisma koeficientu nosaka pēc formulas:

kur Sres = - atlikuma kvadrātu summa, kas raksturo eksperimentālo datu novirzi no teorētiskajiem, kopā - kvadrātu kopējā summa, kur vidējā vērtība ir yi.

- datu izplatību raksturojošo kvadrātu regresijas summa.

Jo mazāka ir atlikušā kvadrātu summa, salīdzinot ar kopējo kvadrātu summu, jo lielāks ir determinācijas koeficients r2, kas mēra, cik labi regresijas vienādojums izskaidro attiecības starp mainīgajiem. Ja tas ir vienāds ar 1, tad pastāv pilnīga korelācija ar modeli, t.i. nav atšķirības starp y faktiskajām un aprēķinātajām vērtībām. Pretējā gadījumā, ja determinācijas koeficients ir 0, tad regresijas vienādojums nav veiksmīgs, prognozējot y vērtības.

Determinisma koeficients vienmēr nepārsniedz korelācijas koeficientu. Gadījumā, ja vienlīdzība ir izpildīta, varam pieņemt, ka konstruētā empīriskā formula visprecīzāk atspoguļo empīriskos datus.

3. Aprēķins, izmantojot tabulas, kas izveidotas, izmantojot Microsoft Excel

Lai veiktu aprēķinus, datus vēlams sakārtot 2. tabulas veidā, izmantojot Microsoft Excel izklājlapu procesoru.

2. tabula












Paskaidrosim, kā tiek sastādīta 2. tabula.

Solis 1. Šūnās A1:A25 ievadām vērtības xi.

2. solis. Šūnās B1:B25 ievadām yi vērtības.

3. darbība. Šūnā C1 ievadiet formulu = A1^2.

4. darbība. Šī formula tiek kopēta šūnās C1:C25.

Solis 5. Šūnā D1 ievadiet formulu = A1 * B1.

6. darbība. Šī formula tiek kopēta šūnās D1:D25.

7. darbība. Šūnā F1 ievadiet formulu = A1^4.

8. darbība. Šī formula tiek kopēta šūnās F1:F25.

9. darbība. Šūnā G1 ievadiet formulu = A1^2*B1.

10. darbība. Šī formula tiek kopēta šūnās G1:G25.

11. darbība. Šūnā H1 ievadiet formulu = LN(B1).

12. darbība. Šī formula tiek kopēta šūnās H1:H25.

13. darbība. Šūnā I1 ievadiet formulu = A1*LN(B1).

14. darbība. Šī formula tiek kopēta šūnās I1:I25.

Mēs veicam turpmākās darbības, izmantojot automātisko summēšanu S.

15. darbība. Šūnā A26 ievadiet formulu = SUM(A1:A25).

16. darbība. Šūnā B26 ievadiet formulu = SUM(B1:B25).

17. darbība. Šūnā C26 ievadiet formulu = SUM(C1:C25).

18. darbība. Šūnā D26 ievadiet formulu = SUM(D1:D25).

19. darbība. Šūnā E26 ievadiet formulu = SUM(E1:E25).

20. darbība. Šūnā F26 ievadiet formulu = SUM(F1:F25).

21. darbība. Šūnā G26 ievadiet formulu = SUM(G1:G25).

22. darbība. Šūnā H26 ievadiet formulu = SUM(H1:H25).

23. darbība. Šūnā I26 ievadiet formulu = SUM(I1:I25).

Tuvināsim funkciju ar lineāru funkciju. Lai noteiktu koeficientus un mēs izmantosim sistēmu (4). Izmantojot 2. tabulas kopsummas, kas atrodas šūnās A26, B26, C26 un D26, mēs ierakstām sistēmu (4) formā

(11)

kuru atrisinot, mēs iegūstam Un .

Sistēma tika atrisināta, izmantojot Cramer metodi. Kuras būtība ir šāda. Apsveriet n algebrisku lineāru vienādojumu sistēmu ar n nezināmiem:

(12)

Sistēmas determinants ir sistēmas matricas determinants:

(13)

Apzīmēsim - determinantu, ko iegūst no sistēmas determinanta Δ, aizstājot j-to kolonnu ar kolonnu

Tādējādi lineārajai tuvināšanai ir forma

Sistēmu (11) risinām, izmantojot Microsoft Excel. Rezultāti ir parādīti 3. tabulā.

3. tabula











apgrieztā matrica






3. tabulā šūnās A32:B33 tiek ierakstīta formula (=MOBR(A28:B29)).

Šūnās E32:E33 tiek ierakstīta formula (=MULTIPLE(A32:B33),(C28:C29)).

Tālāk mēs aproksim funkciju ar kvadrātfunkciju . Lai noteiktu koeficientus a1, a2 un a3, mēs izmantojam sistēmu (5). Izmantojot 2. tabulas kopsummas, kas atrodas šūnās A26, B26, C26, D26, E26, F26, G26, mēs ierakstām sistēmu (5) formā

(16)

to atrisinot, iegūstam a1=10.663624, Un

Tādējādi kvadrātiskajam tuvinājumam ir forma

Sistēmu (16) risinām, izmantojot Microsoft Excel. Rezultāti ir parādīti 4. tabulā.

4. tabula














apgrieztā matrica







4. tabulā šūnās A41:C43 rakstīta formula (=MOBR(A36:C38)).

Šūnās F41:F43 tiek ierakstīta formula (=MULTIPLE(A41:C43),(D36:D38)).

Tagad tuvināsim funkciju ar eksponenciālu funkciju. Lai noteiktu koeficientus un, mēs ņemam vērtību logaritmu un, izmantojot 2. tabulas kopsummas, kas atrodas šūnās A26, C26, H26 un I26, mēs iegūstam sistēmu

(18)

Atrisinot sistēmu (18), iegūstam un .

Pēc potenciācijas mēs iegūstam .

Tādējādi eksponenciālajai tuvināšanai ir forma

Sistēmu (18) risinām, izmantojot Microsoft Excel. Rezultāti ir parādīti 5. tabulā.

5. tabula











apgrieztā matrica




Šūnās A50:B51 tiek ierakstīta formula (=MOBR(A46:B47)).

Šūnās E49:E50 tiek ierakstīta formula (=MULTIPLE(A50:B51),(C46:C47)).

Šūnā E51 ir ierakstīta formula =EXP(E49).

Aprēķināsim vidējo aritmētisko, izmantojot formulas:

Aprēķinu rezultāti, izmantojot Microsoft Excel, ir parādīti 6. tabulā.

6. tabula



Šūnā B54 tiek ierakstīta formula = A26/25.

Šūnā B55 formula ir rakstīta = B26/25

7. tabula


1. darbība. Šūnā J1 ievadiet formulu = (A1-$B$54)*(B1-$B$55).

2. darbība. Šī formula tiek kopēta šūnās J2:J25.

3. darbība. Šūnā K1 ievadiet formulu = (A1-$B$54)^2.

4. darbība. Šī formula tiek kopēta šūnās k2:K25.

5. darbība. Šūnā L1 ievadiet formulu = (B1-$B$55)^2.

6. darbība. Šī formula tiek kopēta šūnās L2:L25.

7. darbība. Šūnā M1 ievadiet formulu = ($E$32+$E$33*A1-B1)^2.

8. darbība. Šī formula tiek kopēta šūnās M2:M25.

9. darbība. Šūnā N1 ievadiet formulu = ($F$41+$F$42*A1+$F$43*A1^2-B1)^2.

10. darbība. Šī formula tiek kopēta šūnās N2:N25.

11. darbība. Šūnā O1 ievadiet formulu = ($E$51*EXP($E$50*A1)-B1)^2.

12. darbība. Šī formula tiek kopēta šūnās O2:O25.

Mēs veicam turpmākās darbības, izmantojot automātisko summēšanu S.

13. darbība. Šūnā J26 ievadiet formulu = SUM(J1:J25).

14. darbība. Šūnā K26 ievadiet formulu = SUM(K1:K25).

15. darbība. Šūnā L26 ievadiet formulu = CUM(L1:L25).

16. darbība. Šūnā M26 ievadiet formulu = SUM(M1:M25).

17. darbība. Šūnā N26 ievadiet formulu = SUM(N1:N25).

18. darbība. Šūnā O26 ievadiet formulu = SUM(O1:O25).

Tagad aprēķināsim korelācijas koeficientu, izmantojot formulu (8) (tikai lineārai tuvināšanai), un determinācijas koeficientu, izmantojot formulu (10). Aprēķinu rezultāti, izmantojot Microsoft Excel, ir parādīti 8. tabulā.

8. tabula


Korelācijas koeficients

Determinisma koeficients (lineāra tuvināšana)



Determinisma koeficients (kvadrātiskā tuvināšana)



Determinisma koeficients (eksponenciālā tuvināšana)



Šūnā E57 formula ir rakstīta =J26/(K26*L26)^(1/2).

Šūnā E59 ir ierakstīta formula = 1-M26/L26.

Šūnā E61 ir ierakstīta formula = 1-N26/L26.

Šūnā E63 ir ierakstīta formula = 1-O26/L26.

Aprēķinu rezultātu analīze parāda, ka kvadrātiskā aproksimācija vislabāk raksturo eksperimentālos datus.

Algoritma diagramma

Rīsi. 1. Algoritma diagramma aprēķinu programmai.

5. Aprēķins programmā MathCad

Lineārā regresija

· taisne (x, y) - divu elementu vektors (b, a) lineārās regresijas koeficienti b+ax;

· x - reālu argumentu datu vektors;

· y ir tāda paša izmēra reālu datu vērtību vektors.

2. attēls.

Polinoma regresija nozīmē datu (x1, y1) tuvināšanu ar k-tās pakāpes polinomu.K=i polinoms ir taisne, k=2 - parabola, k=3 - kubiskā parabola utt. Kā likums, praksē k<5.

· regress (x,y,k) - koeficientu vektors datu polinoma regresijas konstruēšanai;

· interp (s,x,y,t) - polinoma regresijas rezultāts;

· s=regress(x,y,k);

· x ir reālu argumentu datu vektors, kura elementi ir sakārtoti augošā secībā;

· y ir tāda paša izmēra reālu datu vērtību vektors;

· k - regresijas polinoma pakāpe (pozitīvs vesels skaitlis);

· t - regresijas polinoma argumenta vērtība.

3. attēls

Papildus apspriestajiem Mathcad ir iebūvēti vēl vairāki trīs parametru regresijas veidi, kuru ieviešana nedaudz atšķiras no iepriekš minētajām regresijas iespējām ar to, ka tiem papildus datu masīvam ir jānorāda dažas sākotnējās vērtības ​no koeficientiem a, b, c. Izmantojiet atbilstošu regresijas veidu, ja jums ir laba ideja par to, kāda veida atkarība raksturo jūsu datu kopu. Ja regresijas veids labi neatspoguļo datu secību, rezultāts bieži vien ir neapmierinošs un pat ļoti atšķirīgs atkarībā no sākotnējo vērtību izvēles. Katra no funkcijām rada precizētu parametru a, b, c vektoru.

Rezultāti, kas iegūti, izmantojot funkciju LINEST

Apskatīsim funkcijas LINEST mērķi.

Šī funkcija izmanto mazāko kvadrātu, lai aprēķinātu taisni, kas vislabāk atbilst pieejamajiem datiem.

Funkcija atgriež masīvu, kas apraksta iegūto rindu. Taisnas līnijas vienādojums ir:

M1x1 + m2x2 + ... + b vai y = mx + b,

tabulas algoritms Microsoft programmatūra

kur atkarīgā vērtība y ir neatkarīgās vērtības x funkcija. M vērtības ir koeficienti, kas atbilst katram neatkarīgajam mainīgajam x, un b ir konstante. Ņemiet vērā, ka y, x un m var būt vektori.

Lai iegūtu rezultātus, jums ir jāizveido tabulas formula, kas aizņems 5 rindas un 2 kolonnas. Šo intervālu var atrast jebkurā darblapas vietā. Šajā intervālā jums jāievada funkcija LINEST.

Rezultātā ir jāaizpilda visas intervāla A65:B69 šūnas (kā parādīts 9. tabulā).

9. tabula.



Paskaidrosim dažu 9. tabulā norādīto daudzumu mērķi.

Vērtības, kas atrodas šūnās A65 un B65, raksturo attiecīgi slīpumu un nobīdi. - determinācijas koeficients. - F-novērotā vērtība. - brīvības pakāpju skaits. - kvadrātu regresijas summa. - kvadrātu atlikuma summa.

Rezultātu prezentēšana grafiku veidā

Rīsi. 4. Lineārās aproksimācijas grafiks

Rīsi. 5. Kvadrātiskās aproksimācijas grafiks

Rīsi. 6. Eksponenciālās pielāgošanas grafiks

secinājumus

Izdarīsim secinājumus, pamatojoties uz iegūto datu rezultātiem.

Aprēķinu rezultātu analīze parāda, ka kvadrātiskā aproksimācija vislabāk raksturo eksperimentālos datus, jo tās tendences līnija visprecīzāk atspoguļo funkcijas uzvedību šajā jomā.

Salīdzinot rezultātus, kas iegūti, izmantojot funkciju LINEST, redzam, ka tie pilnībā sakrīt ar iepriekš veiktajiem aprēķiniem. Tas norāda, ka aprēķini ir pareizi.

Rezultāti, kas iegūti, izmantojot programmu MathCad, pilnībā sakrīt ar iepriekš norādītajām vērtībām. Tas norāda uz aprēķinu precizitāti.

Bibliogrāfija

1 B.P. Demidovičs, I.A. Maroon. Skaitļošanas matemātikas pamati. M: Valsts Fizikālās un matemātiskās literatūras apgāds.

2 Datorzinātne: mācību grāmata, izd. prof. N.V. Makarova. M: Finanses un statistika, 2007.

3 Datorzinātne: Seminārs par datortehnoloģiju, izd. prof. N.V. Makarova. M: Finanses un statistika, 2010.

4 V.B. Komjagins. Programmēšana programmā Excel, izmantojot Visual Basic. M: Radio un sakari, 2007.

5 N. Nikola, R. Albrehts. Excel. Izklājlapas. M: Ed. "ECOM", 2008.

6 Vadlīnijas datorzinātņu kursa darbu aizpildīšanai (visu specialitāšu neklātienes studentiem), izd. Žurova G. N., Sanktpēterburgas Valsts Hidroloģijas institūts (TU), 2011.g.

Kas atrod visplašāko pielietojumu dažādās zinātnes un praktiskās darbības jomās. Tā varētu būt fizika, ķīmija, bioloģija, ekonomika, socioloģija, psiholoģija utt., Un tā tālāk. Pēc likteņa gribas man bieži nākas saskarties ar ekonomiku, un tāpēc šodien es jums organizēšu ceļojumu uz pārsteidzošu valsti ar nosaukumu Ekonometrija=) ...Kā var negribēt?! Tur ir ļoti labi – jums tikai jāpieņem lēmums! ...Bet tas, ko jūs droši vien vēlaties, ir iemācīties risināt problēmas mazāko kvadrātu metode. Un īpaši čakli lasītāji iemācīsies tos atrisināt ne tikai precīzi, bet arī ĻOTI ĀTRI ;-) Bet vispirms vispārīgs problēmas izklāsts+ pavadošais piemērs:

Izpētīsim rādītājus noteiktā mācību jomā, kam ir kvantitatīvā izteiksme. Tajā pašā laikā ir pamats uzskatīt, ka rādītājs ir atkarīgs no rādītāja. Šis pieņēmums var būt vai nu zinātniska hipotēze, vai pamatots uz veselo saprātu. Tomēr atstāsim zinātni malā un izpētīsim apetītīgākas jomas, proti, pārtikas preču veikalus. Apzīmēsim ar:

– pārtikas preču veikala tirdzniecības platība, kv.m,
– pārtikas veikala gada apgrozījums, miljoni rubļu.

Ir pilnīgi skaidrs, ka jo lielāka veikala platība, jo lielāks vairumā gadījumu būs tā apgrozījums.

Pieņemsim, ka pēc novērojumu/eksperimentu/aprēķinu/dejošanas ar tamburīnu mūsu rīcībā ir skaitliski dati:

Ar pārtikas veikaliem, manuprāt, viss ir skaidrs: - šī ir 1. veikala platība, - tā gada apgrozījums, - 2. veikala platība, - tā gada apgrozījums utt. Starp citu, pieeja klasificētiem materiāliem nemaz nav nepieciešama - diezgan precīzu tirdzniecības apgrozījuma novērtējumu var iegūt, izmantojot matemātiskā statistika. Tomēr nenovērsīsimies, komerciālās spiegošanas kurss jau ir apmaksāts =)

Tabulas datus var rakstīt arī punktu veidā un attēlot pazīstamā formā Dekarta sistēma .

Atbildēsim uz svarīgu jautājumu: Cik punktu nepieciešams kvalitatīvam pētījumam?

Jo lielāks, jo labāk. Minimālais pieņemamais komplekts sastāv no 5-6 punktiem. Turklāt, ja datu apjoms ir mazs, “anomālus” rezultātus nevar iekļaut izlasē. Tā, piemēram, neliels elites veikals var nopelnīt par lielumu vairāk nekā “kolēģi”, tādējādi izkropļojot vispārējo modeli, kas jums jāatrod!

Ļoti vienkārši sakot, mums ir jāizvēlas funkcija, grafiks kas iet pēc iespējas tuvāk punktiem . Šo funkciju sauc tuvinot (tuvinājums - tuvinājums) vai teorētiskā funkcija . Vispārīgi runājot, šeit uzreiz parādās acīmredzams “pretendents” - augstas pakāpes polinoms, kura grafiks iet caur VISIEM punktiem. Bet šī iespēja ir sarežģīta un bieži vien vienkārši nepareiza. (jo grafiks visu laiku "cilpos" un slikti atspoguļos galveno tendenci).

Tādējādi meklētajai funkcijai ir jābūt diezgan vienkāršai un tajā pašā laikā adekvāti jāatspoguļo atkarība. Kā jūs varētu nojaust, viena no metodēm šādu funkciju atrašanai tiek izsaukta mazāko kvadrātu metode. Pirmkārt, aplūkosim tā būtību vispārīgi. Ļaujiet kādai funkcijai tuvināt eksperimentālos datus:


Kā novērtēt šī tuvinājuma precizitāti? Aprēķināsim arī atšķirības (novirzes) starp eksperimentālo un funkcionālo vērtību (mēs pētām zīmējumu). Pirmā doma, kas nāk prātā, ir novērtēt, cik liela ir summa, bet problēma ir tā, ka atšķirības var būt negatīvas (Piemēram, ) un novirzes šādas summēšanas rezultātā viena otru atslēgs. Tāpēc, lai novērtētu tuvinājuma precizitāti, ir jāizmanto summa moduļi novirzes:

vai sabruka: (ja kāds nezina: – šī ir summas ikona un – papildu “skaitītāja” mainīgais, kas ņem vērtības no 1 līdz ).

Aproksimējot eksperimentālos punktus ar dažādām funkcijām, mēs iegūsim dažādas vērtības, un acīmredzot, ja šī summa ir mazāka, šī funkcija ir precīzāka.

Tāda metode pastāv un to sauc mazākā moduļa metode. Tomēr praksē tas ir kļuvis daudz izplatītāks mazāko kvadrātu metode, kurā iespējamās negatīvās vērtības novērš nevis modulis, bet gan novirzes kvadrātā:

, pēc kura centieni ir vērsti uz tādas funkcijas atlasi, kas atbilst kvadrātu noviržu summai bija pēc iespējas mazāks. Faktiski no šejienes cēlies metodes nosaukums.

Un tagad mēs atgriežamies pie cita svarīga punkta: kā minēts iepriekš, atlasītajai funkcijai jābūt diezgan vienkāršai, taču ir arī daudz šādu funkciju: lineārs , hiperbolisks, eksponenciāls, logaritmisks, kvadrātveida utt. Un, protams, šeit es uzreiz gribētu “samazināt darbības jomu”. Kuru funkciju klasi man izvēlēties pētniecībai? Primitīva, bet efektīva tehnika:

– Vienkāršākais veids ir attēlot punktus uz zīmējuma un analizēt to atrašanās vietu. Ja tie mēdz skriet taisnā līnijā, tad jāmeklē līnijas vienādojums ar optimālām vērtībām un . Citiem vārdiem sakot, uzdevums ir atrast TĀDUS koeficientus, lai noviržu kvadrātā summa būtu vismazākā.

Ja punkti atrodas, piemēram, gar hiperbola, tad ir skaidrs, ka lineārā funkcija dos sliktu tuvinājumu. Šajā gadījumā mēs meklējam “labvēlīgākos” hiperbolas vienādojuma koeficientus – tie, kas dod minimālo kvadrātu summu .

Tagad ņemiet vērā, ka abos gadījumos mēs runājam par divu mainīgo funkcijas, kura argumenti ir meklētie atkarības parametri:

Un būtībā mums ir jāatrisina standarta problēma - jāatrod divu mainīgo minimālā funkcija.

Atcerēsimies mūsu piemēru: pieņemsim, ka “veikala” punkti mēdz atrasties taisnā līnijā un ir pamats uzskatīt, ka lineārā atkarība apgrozījums no tirdzniecības platībām. Atradīsim TĀDUS koeficientus “a” un “būt”, lai noviržu summa kvadrātā bija mazākais. Viss kā parasti – vispirms 1. kārtas daļēji atvasinājumi. Saskaņā ar linearitātes noteikums Jūs varat atšķirt tieši zem summas ikonas:

Ja vēlaties šo informāciju izmantot esejā vai kursa darbā, būšu ļoti pateicīgs par saiti avotu sarakstā, šādus detalizētus aprēķinus atradīsit dažās vietās:

Izveidosim standarta sistēmu:

Mēs samazinām katru vienādojumu par "diviem" un papildus "sadalām" summas:

Piezīme : neatkarīgi analizējiet, kāpēc “a” un “be” var izņemt aiz summas ikonas. Starp citu, formāli to var izdarīt ar summu

Pārrakstīsim sistēmu “lietotajā” formā:

pēc tam sāk parādīties mūsu problēmas risināšanas algoritms:

Vai mēs zinām punktu koordinātas? Mēs zinām. Summas vai mēs to varam atrast? Viegli. Pagatavosim vienkāršāko divu lineāru vienādojumu sistēma divos nezināmajos(“a” un “būt”). Mēs risinām sistēmu, piemēram, Krāmera metode, kā rezultātā iegūstam stacionāru punktu. Pārbauda pietiekams nosacījums ekstremitātei, mēs varam pārbaudīt, ka šajā brīdī funkcija sasniedz precīzi minimums. Pārbaude ir saistīta ar papildu aprēķiniem, tāpēc mēs to atstāsim aizkulisēs (ja nepieciešams, trūkstošo kadru var apskatīt). Mēs izdarām galīgo secinājumu:

Funkcija labākais veids (vismaz salīdzinājumā ar jebkuru citu lineāro funkciju) tuvina eksperimentālos punktus . Aptuveni runājot, tā grafiks iet pēc iespējas tuvāk šiem punktiem. Tradīcijās ekonometrija tiek saukta arī iegūtā aproksimējošā funkcija pārī lineārās regresijas vienādojums .

Apskatāmajai problēmai ir liela praktiska nozīme. Mūsu piemērā vienādojums. ļauj prognozēt, kāds tirdzniecības apgrozījums ("Igrek") veikalam būs tāda vai cita tirdzniecības platības vērtība (viena vai cita “x” nozīme). Jā, iegūtā prognoze būs tikai prognoze, taču daudzos gadījumos tā izrādīsies diezgan precīza.

Es analizēšu tikai vienu problēmu ar “reāliem” skaitļiem, jo ​​tajā nav nekādu grūtību - visi aprēķini ir 7.-8.klases skolas mācību programmas līmenī. 95 procentos gadījumu jums tiks lūgts atrast tikai lineāru funkciju, bet pašā raksta beigās es parādīšu, ka nav grūtāk atrast optimālās hiperbolas, eksponenciālās un dažu citu funkciju vienādojumus.

Patiesībā atliek vien izdalīt solītos labumus – lai šādus piemērus iemācītos atrisināt ne tikai precīzi, bet arī ātri. Mēs rūpīgi izpētām standartu:

Uzdevums

Pētot divu rādītāju attiecības, tika iegūti šādi skaitļu pāri:

Izmantojot mazāko kvadrātu metodi, atrodiet lineāro funkciju, kas vislabāk tuvina empīrisko (pieredzējis) datus. Izveidojiet zīmējumu, uz kura konstruēt eksperimentālos punktus, un aproksimējošās funkcijas grafiku Dekarta taisnstūra koordinātu sistēmā . Atrodiet noviržu summu kvadrātā starp empīrisko un teorētisko vērtību. Uzziniet, vai šī funkcija būtu labāka (no mazāko kvadrātu metodes viedokļa) tuvināt eksperimentālos punktus.

Lūdzu, ņemiet vērā, ka “x” nozīmes ir dabiskas, un tai ir raksturīga nozīmīga nozīme, par kuru es runāšu nedaudz vēlāk; bet tie, protams, var būt arī daļēji. Turklāt atkarībā no konkrētā uzdevuma satura gan “X”, gan “spēles” vērtības var būt pilnībā vai daļēji negatīvas. Nu, mums ir dots “bez sejas” uzdevums, un mēs to sākam risinājums:

Mēs atrodam optimālās funkcijas koeficientus kā sistēmas risinājumu:

Kompaktākas ierakstīšanas nolūkos mainīgo “skaitītājs” var izlaist, jo jau ir skaidrs, ka summēšana tiek veikta no 1 līdz .

Ērtāk ir aprēķināt nepieciešamās summas tabulas veidā:


Aprēķinus var veikt ar mikrokalkulatoru, taču daudz labāk ir izmantot Excel - gan ātrāk, gan bez kļūdām; noskatieties īsu video:

Tādējādi mēs iegūstam sekojošo sistēma:

Šeit jūs varat reizināt otro vienādojumu ar 3 un atņemt 2. no 1. vienādojuma locekļa pa vārdam. Taču tā ir veiksme – praksē sistēmas bieži vien nav dāvana, un šādos gadījumos tas ietaupa Krāmera metode:
, kas nozīmē, ka sistēmai ir unikāls risinājums.

Pārbaudīsim. Es saprotu, ka jūs to nevēlaties, bet kāpēc izlaist kļūdas, ja tās nevar palaist garām? Aizstāsim atrasto risinājumu katra sistēmas vienādojuma kreisajā pusē:

Tiek iegūtas atbilstošo vienādojumu labās puses, kas nozīmē, ka sistēma ir pareizi atrisināta.

Tādējādi vēlamā aproksimējošā funkcija: – no visas lineārās funkcijas Tieši viņa vislabāk tuvina eksperimentālos datus.

Atšķirībā no taisni veikala apgrozījuma atkarība no tā platības, konstatētā atkarība ir otrādi (princips "jo vairāk, jo mazāk"), un šo faktu uzreiz atklāj negatīvais slīpums. Funkcija norāda, ka, palielinoties noteiktam rādītājam par 1 vienību, atkarīgā rādītāja vērtība samazinās vidēji par 0,65 vienībām. Kā saka, jo augstāka ir griķu cena, jo mazāk to pārdod.

Lai attēlotu aproksimējošās funkcijas grafiku, mēs atrodam tās divas vērtības:

un izpildiet zīmējumu:


Izbūvēto taisni sauc tendenču līnija (proti, lineāra tendences līnija, t.i., vispārīgā gadījumā tendence ne vienmēr ir taisna līnija). Ikviens ir pazīstams ar izteicienu “būt tendencēm”, un es domāju, ka šim terminam nav nepieciešami papildu komentāri.

Aprēķināsim noviržu kvadrātā summu starp empīriskām un teorētiskām vērtībām. Ģeometriski tā ir “aveņu” segmentu garumu kvadrātu summa (no kuriem divi ir tik mazi, ka pat nav redzami).

Apkoposim aprēķinus tabulā:


Atkal tos var izdarīt manuāli; katram gadījumam es sniegšu piemēru 1. punktam:

bet daudz efektīvāk ir to darīt jau zināmā veidā:

Mēs atkārtojam vēlreiz: Kāda ir iegūtā rezultāta nozīme? No visas lineārās funkcijas y funkcija rādītājs ir mazākais, tas ir, tā saimē tas ir labākais tuvinājums. Un šeit, starp citu, galīgais problēmas jautājums nav nejaušs: kā būtu, ja ierosinātā eksponenciālā funkcija vai būtu labāk tuvināt eksperimentālos punktus?

Atradīsim atbilstošo noviržu kvadrātu summu - lai atšķirtu, es tās apzīmēšu ar burtu “epsilon”. Tehnika ir tieši tāda pati:


Un atkal katram gadījumam aprēķini 1. punktam:

Programmā Excel mēs izmantojam standarta funkciju EXP (sintaksi var atrast Excel palīdzībā).

Secinājums: , kas nozīmē, ka eksponenciālā funkcija eksperimentālos punktus tuvina sliktāk nekā taisne .

Bet šeit jāatzīmē, ka "sliktāk" ir vēl nenozīmē, kas vainas. Tagad esmu izveidojis šīs eksponenciālās funkcijas grafiku - un tas arī iet tuvu punktiem - tik ļoti, ka bez analītiskiem pētījumiem ir grūti pateikt, kura funkcija ir precīzāka.

Tas noslēdz risinājumu, un es atgriežos pie jautājuma par argumenta dabiskajām vērtībām. Dažādos pētījumos, parasti ekonomiskajos vai socioloģiskajos, dabiskie “X” tiek izmantoti, lai skaitītu mēnešus, gadus vai citus vienādus laika intervālus. Apsveriet, piemēram, šādu problēmu.

Esmu matemātiķis un programmētājs. Lielākais lēciens savā karjerā bija tad, kad iemācījos teikt: "ES neko nesaprotu!" Tagad es nekaunos stāstīt zinātnes spīdeklim, ka viņš man lasa lekciju, ka es nesaprotu, ko viņš, gaismeklis, man stāsta. Un tas ir ļoti grūti. Jā, atzīt savu nezināšanu ir grūti un apkaunojoši. Kuram gan patīk atzīt, ka viņš kaut ko nezina? Profesijas dēļ man ir jāapmeklē liels skaits prezentāciju un lekciju, kurās, atzīstos, absolūtajā vairumā gadījumu gribas gulēt, jo neko nesaprotu. Bet es nesaprotu, jo pašreizējās zinātnes situācijas milzīgā problēma ir matemātikā. Tas pieņem, ka visi klausītāji pārzina absolūti visas matemātikas jomas (kas ir absurdi). Atzīt, ka jūs nezināt, kas ir atvasinājums (par to, kas tas ir, mēs runāsim nedaudz vēlāk), ir apkaunojoši.

Bet es esmu iemācījies teikt, ka es nezinu, kas ir reizināšana. Jā, es nezinu, kas ir apakšgebra virs melu algebra. Jā, es nezinu, kāpēc kvadrātvienādojumi ir vajadzīgi dzīvē. Starp citu, ja esat pārliecināts, ka zināt, tad mums ir par ko runāt! Matemātika ir triku sērija. Matemātiķi cenšas sabiedrību mulsināt un iebiedēt; kur nav neskaidrību, nav reputācijas, nav autoritātes. Jā, ir prestiži runāt pēc iespējas abstraktākā valodā, kas ir pilnīgs absurds.

Vai jūs zināt, kas ir atvasinājums? Visticamāk, jūs man pastāstīsit par starpības koeficienta robežu. Pirmajā matemātikas un mehānikas kursā Sanktpēterburgas Valsts universitātē Viktors Petrovičs Havins man teica noteikts atvasinājums kā funkcijas Teilora sērijas pirmā vārda koeficients punktā (šī bija atsevišķa vingrošana, lai noteiktu Teilora sēriju bez atvasinājumiem). Es ilgi smējos par šo definīciju, līdz beidzot sapratu, par ko ir runa. Atvasinājums nav nekas vairāk kā vienkāršs mērījums, kas parāda, cik līdzīga funkcija, kuru mēs diferencējam, ir funkcijai y=x, y=x^2, y=x^3.

Tagad man ir tas gods lasīt lekcijas studentiem, kuri bail matemātika. Ja jums ir bail no matemātikas, mēs esam uz viena ceļa. Tiklīdz jūs mēģināt izlasīt kādu tekstu un jums šķiet, ka tas ir pārāk sarežģīts, tad ziniet, ka tas ir slikti uzrakstīts. Es apgalvoju, ka nav nevienas matemātikas jomas, par kuru nevarētu runāt “uz pirkstiem”, nezaudējot precizitāti.

Tuvākās nākotnes uzdevums: Uzdevu saviem skolēniem saprast, kas ir lineārais kvadrātregulators. Nekautrējieties, pavadiet trīs minūtes no savas dzīves un sekojiet saitei. Ja jūs neko nesaprotat, tad mēs esam uz viena ceļa. Es (profesionāls matemātiķis-programmētājs) arī neko nesapratu. Un es jums apliecinu, ka jūs to varat izdomāt “uz pirkstiem”. Šobrīd es nezinu, kas tas ir, bet apliecinu, ka mēs to varēsim izdomāt.

Tātad pirmā lekcija, ko es lasīšu saviem studentiem pēc tam, kad viņi šausmās pieskrēja pie manis un teiks, ka lineāri kvadrātiskais regulators ir briesmīga lieta, ko jūs nekad savā dzīvē nepārvaldīsiet. mazāko kvadrātu metodes. Vai jūs varat atrisināt lineāros vienādojumus? Ja jūs lasāt šo tekstu, visticamāk, nē.

Tātad, ņemot vērā divus punktus (x0, y0), (x1, y1), piemēram, (1,1) un (3,2), uzdevums ir atrast taisnes vienādojumu, kas iet caur šiem diviem punktiem:

ilustrācija

Šai līnijai ir jābūt šādam vienādojumam:

Šeit alfa un beta mums nav zināmi, taču ir zināmi divi šīs līnijas punkti:

Mēs varam uzrakstīt šo vienādojumu matricas formā:

Šeit mums vajadzētu izdarīt lirisku atkāpi: kas ir matrica? Matrica nav nekas vairāk kā divdimensiju masīvs. Tas ir datu glabāšanas veids; tam nevajadzētu pievienot nekādas citas nozīmes. Tas ir atkarīgs no mums, kā tieši interpretēt noteiktu matricu. Periodiski es to interpretēšu kā lineāru kartēšanu, periodiski kā kvadrātveida formu un dažreiz vienkārši kā vektoru kopu. Tas viss tiks noskaidrots kontekstā.

Aizstāsim betona matricas ar to simbolisko attēlojumu:

Tad (alfa, beta) var viegli atrast:

Konkrētāk par mūsu iepriekšējiem datiem:

Kas noved pie šāda līnijas vienādojuma, kas iet caur punktiem (1,1) un (3,2):

Labi, šeit viss ir skaidrs. Atradīsim cauri ejošās līnijas vienādojumu trīs punkti: (x0,y0), (x1,y1) un (x2,y2):

Ak, ak, bet mums ir trīs vienādojumi diviem nezināmajiem! Standarta matemātiķis teiks, ka risinājuma nav. Ko teiks programmētājs? Un viņš vispirms pārrakstīs iepriekšējo vienādojumu sistēmu šādā formā:

Mūsu gadījumā vektori i, j, b ir trīsdimensiju, tāpēc (vispārējā gadījumā) šai sistēmai nav risinājuma. Jebkurš vektors (alfa\*i + beta\*j) atrodas plaknē, ko aptver vektori (i, j). Ja b nepieder šai plaknei, tad risinājuma nav (vienādojumā nevar panākt vienādību). Ko darīt? Meklēsim kompromisu. Apzīmēsim ar e (alfa, beta) cik tālu mēs neesam sasnieguši vienlīdzību:

Un mēs centīsimies samazināt šo kļūdu:

Kāpēc kvadrāts?

Mēs meklējam ne tikai normas minimumu, bet normas kvadrāta minimumu. Kāpēc? Pats minimālais punkts sakrīt, un kvadrāts nodrošina vienmērīgu funkciju (argumentu kvadrātiskā funkcija (alfa, beta)), bet vienkārši garums dod konusa formas funkciju, kas nav diferencējama minimālajā punktā. Brr. Kvadrāts ir ērtāks.

Acīmredzot kļūda tiek samazināta līdz minimumam, kad vektors e perpendikulāra plaknei, ko aptver vektori i Un j.

Ilustrācija

Citiem vārdiem sakot: mēs meklējam taisnu līniju, lai attālumu kvadrātā summa no visiem punktiem līdz šai taisnei būtu minimāla:

ATJAUNINĀJUMS: Man ir problēma, attālums līdz taisnei jāmēra vertikāli, nevis ar ortogonālu projekciju. Šim komentētājam ir taisnība.

Ilustrācija

Pilnīgi citos vārdos (rūpīgi, slikti formalizēti, bet tam jābūt skaidram): mēs ņemam visas iespējamās līnijas starp visiem punktu pāriem un meklējam vidējo līniju starp visiem:

Ilustrācija

Vēl viens skaidrojums ir vienkāršs: mēs pievienojam atsperi starp visiem datu punktiem (šeit mums ir trīs) un taisno līniju, ko meklējam, un līdzsvara stāvokļa taisne ir tieši tas, ko mēs meklējam.

Minimālā kvadrātiskā forma

Tātad, ņemot vērā šo vektoru b un plakne, ko aptver matricas kolonnu vektori A(šajā gadījumā (x0,x1,x2) un (1,1,1)), mēs meklējam vektoru e ar minimālo garuma kvadrātu. Acīmredzot minimums ir sasniedzams tikai vektoram e, ortogonāli plaknei, ko aptver matricas kolonnu vektori A:

Citiem vārdiem sakot, mēs meklējam vektoru x=(alfa, beta), lai:

Atgādināšu, ka šis vektors x=(alfa, beta) ir kvadrātiskās funkcijas minimums ||e(alfa, beta)||^2:

Šeit būtu lietderīgi atcerēties, ka matricu var interpretēt arī kā kvadrātveida formu, piemēram, identitātes matricu ((1,0),(0,1)) var interpretēt kā funkciju x^2 + y^ 2:

kvadrātiskā forma

Visa šī vingrošana ir pazīstama ar nosaukumu lineārā regresija.

Laplasa vienādojums ar Dirihlē robežnosacījumu

Tagad vienkāršākais reālais uzdevums: ir noteikta trīsstūrveida virsma, ir nepieciešams to izlīdzināt. Piemēram, ielādēsim manas sejas modeli:

Sākotnējā apņemšanās ir pieejama. Lai samazinātu ārējās atkarības, es paņēmu sava programmatūras renderētāja kodu, kas jau ir Habré. Lai atrisinātu lineāro sistēmu, es izmantoju OpenNL, tas ir lielisks risinātājs, kuru tomēr ir ļoti grūti instalēt: jums ir jāiekopē divi faili (.h+.c) uz mapi ar savu projektu. Visa izlīdzināšana tiek veikta ar šādu kodu:

For (int d=0; d<3; d++) { nlNewContext(); nlSolverParameteri(NL_NB_VARIABLES, verts.size()); nlSolverParameteri(NL_LEAST_SQUARES, NL_TRUE); nlBegin(NL_SYSTEM); nlBegin(NL_MATRIX); for (int i=0; i<(int)verts.size(); i++) { nlBegin(NL_ROW); nlCoefficient(i, 1); nlRightHandSide(verts[i][d]); nlEnd(NL_ROW); } for (unsigned int i=0; i&face = sejas[i]; for (int j=0; j<3; j++) { nlBegin(NL_ROW); nlCoefficient(face[ j ], 1); nlCoefficient(face[(j+1)%3], -1); nlEnd(NL_ROW); } } nlEnd(NL_MATRIX); nlEnd(NL_SYSTEM); nlSolve(); for (int i=0; i<(int)verts.size(); i++) { verts[i][d] = nlGetVariable(i); } }

X, Y un Z koordinātas ir atdalāmas, es tās izlīdzinu atsevišķi. Tas ir, es atrisinu trīs lineāro vienādojumu sistēmas, katra ar mainīgo skaitu, kas vienāds ar virsotņu skaitu manā modelī. Pirmajās n matricas A rindās ir tikai viens 1 katrā rindā, un vektora b pirmajām n rindām ir sākotnējās modeļa koordinātas. Tas ir, es piesēju atsperi starp virsotnes jauno pozīciju un veco virsotnes pozīciju - jaunās nedrīkst pārvietoties pārāk tālu no vecajām.

Visām nākamajām matricas A rindām (faces.size()*3 = visu acs trīsstūru malu skaits) ir viens gadījums 1 un viens gadījums -1, un vektoram b ir nulle komponenti pretī. Tas nozīmē, ka es ievietoju atsperi katrā mūsu trīsstūrveida sieta malā: visas malas cenšas iegūt tādu pašu virsotni kā to sākuma un beigu punkts.

Vēlreiz: visas virsotnes ir mainīgas, un tās nevar pārvietoties tālu no sākotnējās pozīcijas, bet tajā pašā laikā tās cenšas kļūt līdzīgas viena otrai.

Lūk, rezultāts:

Viss būtu labi, modelis tiešām nogludināts, bet attālinājies no sākotnējās malas. Nedaudz mainīsim kodu:

For (int i=0; i<(int)verts.size(); i++) { float scale = border[i] ? 1000: 1; nlBegin(NL_ROW); nlCoefficient(i, scale); nlRightHandSide(scale*verts[i][d]); nlEnd(NL_ROW); }

Mūsu matricā A virsotnēm, kas atrodas uz malas, es pievienoju nevis rindu no kategorijas v_i = verts[i][d], bet 1000*v_i = 1000*verts[i][d]. Ko tas maina? Un tas maina mūsu kļūdas kvadrātisko formu. Tagad viena novirze no augšas pie malas maksās nevis vienu vienību, kā agrāk, bet 1000*1000 vienības. Tas ir, mēs piekārtām stiprāku atsperi galējās virsotnēs, risinājums dos priekšroku stiprākam stiept pārējās. Lūk, rezultāts:

Divkāršosim atsperes spēku starp virsotnēm:
nlKoeficients(seja[ j ], 2); nlKoeficients(seja[(j+1)%3], -2);

Loģiski, ka virsma ir kļuvusi gludāka:

Un tagad pat simtreiz spēcīgāks:

Kas tas ir? Iedomājieties, ka mēs esam iemērkuši stieples gredzenu ziepjūdenī. Rezultātā iegūtā ziepju plēve centīsies iegūt pēc iespējas mazāku izliekumu, pieskaroties robežai - mūsu stieples gredzenam. Tas ir tieši tas, ko mēs saņēmām, piestiprinot apmali un prasot gludu virsmu iekšpusē. Apsveicam, mēs tikko atrisinājām Laplasa vienādojumu ar Dirihlē robežnosacījumiem. Izklausās forši? Bet patiesībā jums vienkārši jāatrisina viena lineāro vienādojumu sistēma.

Puasona vienādojums

Atcerēsimies vēl kādu foršu vārdu.

Pieņemsim, ka man ir šāds attēls:

Izskatās labi visiem, bet man nepatīk krēsls.

Es pārgriezu bildi uz pusēm:



Un es izvēlēšos krēslu ar savām rokām:

Tad es vilkšu visu, kas maskā ir balts uz attēla kreiso pusi, un tajā pašā laikā visā bildē teikšu, ka starpībai starp diviem blakus esošajiem pikseļiem jābūt vienādai ar starpību starp diviem blakus esošajiem labās puses pikseļiem. bilde:

For (int i=0; i

Lūk, rezultāts:

Piemērs no dzīves

Es apzināti nedarīju nolaizītus rezultātus, jo... Es tikai gribēju parādīt, kā tieši jūs varat izmantot mazāko kvadrātu metodes, šis ir apmācības kods. Ļaujiet man tagad sniegt piemēru no dzīves:

Man ir vairākas fotogrāfijas ar šādiem auduma paraugiem:

Mans uzdevums ir izveidot viengabalainas faktūras no šādas kvalitātes fotogrāfijām. Lai sāktu, es (automātiski) meklēju atkārtotu modeli:

Ja es izgriezu šo četrstūri taisni, tad deformācijas dēļ malas nesatiks, šeit ir četras reizes atkārtota raksta piemērs:

Slēpts teksts

Šeit ir fragments, kur šuve ir skaidri redzama:

Tāpēc es negriezīšu pa taisnu līniju, šeit ir griešanas līnija:

Slēpts teksts

Un šeit ir četras reizes atkārtots modelis:

Slēpts teksts

Un fragments no tā, lai būtu skaidrāks:

Tas jau ir labāk, griezums negāja taisnā līnijā, izvairoties no visādām cirtām, bet šuve joprojām ir redzama sākotnējā fotoattēla nevienmērīgā apgaismojuma dēļ. Šeit palīdz Puasona vienādojuma mazāko kvadrātu metode. Šeit ir gala rezultāts pēc apgaismojuma izlīdzināšanas:

Tekstūra izrādījās perfekti viengabalaina, un tas viss automātiski no ļoti viduvējas kvalitātes fotoattēla. Nebaidies no matemātikas, meklē vienkāršus skaidrojumus, un inženierzinātnēs būsi laimīgs.

Pēc izlīdzināšanas iegūstam šādas formas funkciju: g (x) = x + 1 3 + 1 .

Šos datus varam tuvināt, izmantojot lineāro sakarību y = a x + b, aprēķinot atbilstošos parametrus. Lai to izdarītu, mums būs jāpiemēro tā sauktā mazāko kvadrātu metode. Jums būs arī jāizveido zīmējums, lai pārbaudītu, kura līnija vislabāk izlīdzinās eksperimentālos datus.

Kas īsti ir OLS (mazāko kvadrātu metode)

Galvenais, kas mums jādara, ir atrast tādus lineārās atkarības koeficientus, pie kuriem divu mainīgo F (a, b) = ∑ i = 1 n (y i - (a x i + b)) 2 funkcijas vērtība būs mazākais. Citiem vārdiem sakot, noteiktām a un b vērtībām iesniegto datu kvadrātu noviržu summai no iegūtās taisnes būs minimālā vērtība. Tā ir mazāko kvadrātu metodes nozīme. Viss, kas mums jādara, lai atrisinātu piemēru, ir atrast divu mainīgo funkcijas ekstrēmu.

Kā iegūt formulas koeficientu aprēķināšanai

Lai iegūtu formulas koeficientu aprēķināšanai, ir jāizveido un jāatrisina vienādojumu sistēma ar diviem mainīgajiem. Lai to izdarītu, mēs aprēķinām izteiksmes F (a, b) = ∑ i = 1 n (y i - (a x i + b)) 2 daļējos atvasinājumus attiecībā pret a un b un pielīdzinām tos 0.

δ F (a , b) δ a = 0 δ F (a , b) δ b = 0 ⇔ - 2 ∑ i = 1 n (y i - (a x i + b)) x i = 0 - 2 ∑ i = 1 n ( y i - (a x i + b)) = 0 ⇔ a ∑ i = 1 n x i 2 + b ∑ i = 1 n x i = ∑ i = 1 n x i y i a ∑ i = 1 n x i + ∑ i = 1 n b = ∑ i = 1 n y i ⇔ a ∑ i = 1 n x i 2 + b ∑ i = 1 n x i = ∑ i = 1 n x i y i a ∑ i = 1 n x i + n b = ∑ i = 1 n y i

Lai atrisinātu vienādojumu sistēmu, var izmantot jebkuras metodes, piemēram, aizstāšanu vai Krāmera metodi. Rezultātā mums vajadzētu būt formulām, kuras var izmantot, lai aprēķinātu koeficientus, izmantojot mazāko kvadrātu metodi.

n ∑ i = 1 n x i y i - ∑ i = 1 n x i ∑ i = 1 n y i n ∑ i = 1 n - ∑ i = 1 n x i 2 b = ∑ i = 1 n ∑ n i

Mēs esam aprēķinājuši mainīgo vērtības, pie kurām funkcija darbojas
F (a , b) = ∑ i = 1 n (y i - (a x i + b)) 2 pieņems minimālo vērtību. Trešajā rindkopā mēs pierādīsim, kāpēc tas ir tieši tā.

Tas ir mazāko kvadrātu metodes pielietojums praksē. Tās formula, ko izmanto parametra a atrašanai, ietver ∑ i = 1 n x i, ∑ i = 1 n y i, ∑ i = 1 n x i y i, ∑ i = 1 n x i 2, kā arī parametru.
n – tas apzīmē eksperimentālo datu apjomu. Mēs iesakām katru summu aprēķināt atsevišķi. Koeficienta b vērtību aprēķina uzreiz pēc a.

Atgriezīsimies pie sākotnējā piemēra.

1. piemērs

Šeit mums ir n vienāds ar pieci. Lai būtu ērtāk aprēķināt koeficientu formulās iekļautās nepieciešamās summas, aizpildīsim tabulu.

i = 1 i=2 i=3 i=4 i=5 ∑ i = 15
x i 0 1 2 4 5 12
y i 2 , 1 2 , 4 2 , 6 2 , 8 3 12 , 9
x i y i 0 2 , 4 5 , 2 11 , 2 15 33 , 8
x i 2 0 1 4 16 25 46

Risinājums

Ceturtajā rindā ir iekļauti dati, kas iegūti, reizinot otrās rindas vērtības ar trešās rindas vērtībām katram indivīdam, t. Piektajā rindā ir dati no otrās, kvadrātā. Pēdējā kolonna parāda atsevišķu rindu vērtību summas.

Izmantosim mazāko kvadrātu metodi, lai aprēķinātu mums nepieciešamos koeficientus a un b. Lai to izdarītu, aizstājiet vajadzīgās vērtības no pēdējās kolonnas un aprēķiniet summas:

n ∑ i = 1 n x i y i - ∑ i = 1 n x i ∑ i = 1 n y i n ∑ i = 1 n - ∑ i = 1 n x i 2 b = ∑ i = 1 a n − n i = 1 n ∑ y 5 33, 8 - 12 12, 9 5 46 - 12 2 b = 12, 9 - a 12 5 ⇒ a ≈ 0, 165 b ≈ 2, 184

Izrādās, ka vajadzīgā aptuvenā taisne izskatīsies šādi: y = 0, 165 x + 2, 184. Tagad mums ir jānosaka, kura rinda labāk tuvinās datus - g (x) = x + 1 3 + 1 vai 0, 165 x + 2, 184. Aplēsēsim, izmantojot mazāko kvadrātu metodi.

Lai aprēķinātu kļūdu, jāatrod datu kvadrātu noviržu summa no taisnēm σ 1 = ∑ i = 1 n (y i - (a x i + b i)) 2 un σ 2 = ∑ i = 1 n (y i) - g (x i)) 2, minimālā vērtība atbildīs piemērotākai rindai.

σ 1 = ∑ i = 1 n (y i - (a x i + b i)) 2 = = ∑ i = 1 5 (y i - (0, 165 x i + 2, 184)) 2 ≈ 0, 019 σ 2 = ∑ 1 n (y i - g (x i)) 2 = = ∑ i = 1 5 (y i - (x i + 1 3 + 1)) 2 ≈ 0,096

Atbilde: kopš σ 1< σ 2 , то прямой, наилучшим образом аппроксимирующей исходные данные, будет
y = 0,165 x + 2,184.

Mazāko kvadrātu metode ir skaidri parādīta grafiskajā ilustrācijā. Sarkanā līnija apzīmē taisni g (x) = x + 1 3 + 1, zilā līnija apzīmē y = 0, 165 x + 2, 184. Sākotnējie dati ir norādīti ar rozā punktiem.

Paskaidrosim, kāpēc ir nepieciešami tieši šāda veida tuvinājumi.

Tos var izmantot uzdevumos, kuros nepieciešama datu izlīdzināšana, kā arī tajos, kur dati ir jāinterpolē vai ekstrapolē. Piemēram, iepriekš apskatītajā uzdevumā var atrast novērotā daudzuma y vērtību pie x = 3 vai pie x = 6. Šādiem piemēriem esam veltījuši atsevišķu rakstu.

OLS metodes pierādījums

Lai funkcijai būtu minimālā vērtība, kad tiek aprēķināta a un b, ir nepieciešams, lai noteiktā punktā F (a, b) formas funkcijas diferenciāļa kvadrātiskās formas matrica = ∑ i = 1 n (y i - (a x i + b)) 2 ir pozitīvs noteikts. Parādīsim, kā tam vajadzētu izskatīties.

2. piemērs

Mums ir šādas formas otrā pasūtījuma diferenciālis:

d 2 F (a ; b) = δ 2 F (a ; b) δ a 2 d 2 a + 2 δ 2 F (a ; b) δ a δ b d a d b + δ 2 F (a ; b) δ b 2 d 2 b

Risinājums

δ 2 F (a ; b) δ a 2 = δ δ F (a ; b) δ a δ a = = δ - 2 ∑ i = 1 n (y i - (a x i + b)) x i δ a = 2 ∑ i = 1 n (x i) 2 δ 2 F (a; b) δ a δ b = δ δ F (a; b) δ a δ b = = δ - 2 ∑ i = 1 n (y i - (a x i + b) ) x i δ b = 2 ∑ i = 1 n x i δ 2 F (a ; b) δ b 2 = δ δ F (a ; b) δ b δ b = δ - 2 ∑ i = 1 n (y i - (a x i +) b)) δ b = 2 ∑ i = 1 n (1) = 2 n

Citiem vārdiem sakot, mēs to varam uzrakstīt šādi: d 2 F (a ; b) = 2 ∑ i = 1 n (x i) 2 d 2 a + 2 2 ∑ x i i = 1 n d a d b + (2 n) d 2 b.

Mēs ieguvām kvadrātiskās formas matricu M = 2 ∑ i = 1 n (x i) 2 2 ∑ i = 1 n x i 2 ∑ i = 1 n x i 2 n .

Šajā gadījumā atsevišķu elementu vērtības nemainīsies atkarībā no a un b . Vai šī matrica ir pozitīva? Lai atbildētu uz šo jautājumu, pārbaudīsim, vai tā leņķiskie nepilngadīgie ir pozitīvi.

Mēs aprēķinām pirmās kārtas leņķisko minoru: 2 ∑ i = 1 n (x i) 2 > 0 . Tā kā punkti x i nesakrīt, nevienlīdzība ir stingra. Mēs to paturēsim prātā turpmākajos aprēķinos.

Mēs aprēķinām otrās kārtas leņķisko minoru:

d e t (M) = 2 ∑ i = 1 n (x i) 2 2 ∑ i = 1 n x i 2 ∑ i = 1 n x i 2 n = 4 n ∑ i = 1 n (x i) 2 - 12 n i = i

Pēc tam mēs turpinām pierādīt nevienādību n ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 > 0, izmantojot matemātisko indukciju.

  1. Pārbaudīsim, vai šī nevienādība ir derīga patvaļīgai n. Ņemsim 2 un aprēķināsim:

2 ∑ i = 1 2 (x i) 2 - ∑ i = 1 2 x i 2 = 2 x 1 2 + x 2 2 - x 1 + x 2 2 = = x 1 2 - 2 x 1 x 2 + x 2 2 = x 1 + x 2 2 > 0

Mēs esam ieguvuši pareizu vienādību (ja vērtības x 1 un x 2 nesakrīt).

  1. Izdarīsim pieņēmumu, ka šī nevienlīdzība būs patiesa n, t.i. n ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 > 0 – patiess.
  2. Tagad mēs pierādīsim derīgumu n + 1, t.i. ka (n + 1) ∑ i = 1 n + 1 (x i) 2 - ∑ i = 1 n + 1 x i 2 > 0, ja n ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 > 0 .

Mēs aprēķinām:

(n + 1) ∑ i = 1 n + 1 (x i) 2 - ∑ i = 1 n + 1 x i 2 = = (n + 1) ∑ i = 1 n (x i) 2 + x n + 1 2 - ∑ i = 1 n x i + x n + 1 2 = = n ∑ i = 1 n (x i) 2 + n x n + 1 2 + ∑ i = 1 n (x i) 2 + x n + 1 2 - - ∑ i = 1 n x 2 i 2 + x n + 1 ∑ i = 1 n x i + x n + 1 2 = = ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 + n x n + 1 2 - x n + 1 ∑ i = 1 n x n (x i) 2 = = ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 + x n + 1 2 - 2 x n + 1 x 1 + x 1 2 + + x n + 1 2 - 2 x n + 1 x 2 + x 2 2 + . . . + x n + 1 2 - 2 x n + 1 x 1 + x n 2 = = n ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 + + (x n + 1 - x 1) 2 + (x n + 1) - x 2) 2 + . . . + (x n - 1 - x n) 2 > 0

Izteiksme, kas ietverta cirtainajās iekavās, būs lielāka par 0 (pamatojoties uz to, ko mēs pieņēmām 2. darbībā), un pārējie termini būs lielāki par 0, jo tie visi ir skaitļu kvadrāti. Mēs esam pierādījuši nevienlīdzību.

Atbilde: atrastie a un b atbildīs funkcijas F (a, b) = ∑ i = 1 n (y i - (a x i + b)) 2 mazākajai vērtībai, kas nozīmē, ka tie ir mazāko kvadrātu metodes nepieciešamie parametri. (LSM).

Ja pamanāt tekstā kļūdu, lūdzu, iezīmējiet to un nospiediet Ctrl+Enter

KURSA DARBS

Funkcijas aproksimācija, izmantojot mazāko kvadrātu metodi


Ievads

empīriskā mathcad aproksimācija

Kursa darba mērķis ir padziļināt zināšanas datorzinātnēs, attīstīt un nostiprināt prasmes darbā ar Microsoft Excel un MathCAD izklājlapu procesoru. To izmantošana problēmu risināšanai, izmantojot datoru no mācību priekšmetu jomas, kas saistīta ar pētniecību.

Katrā uzdevumā formulēti uzdevuma nosacījumi, sākuma dati, rezultātu izsniegšanas forma, norādītas galvenās matemātiskās atkarības uzdevuma risināšanai Kontrolaprēķins ļauj pārliecināties par programmas pareizu darbību.

Tuvināšanas jēdziens ir aptuvens jebkuru matemātisku objektu (piemēram, skaitļu vai funkciju) izteiksme, izmantojot citus, kas ir vienkāršāki, ērtāk lietojami vai vienkārši labāk zināmi. Zinātniskajos pētījumos aproksimāciju izmanto, lai aprakstītu, analizētu, vispārinātu un turpmāk izmantotu empīriskos rezultātus.

Kā zināms, var būt precīza (funkcionāla) saikne starp lielumiem, kad vienai konkrētai vērtībai atbilst viena argumenta vērtība, un mazāk precīza (korelācijas) saikne, kad viena konkrēta argumenta vērtība atbilst aptuvenai vērtībai vai noteiktu funkciju vērtību kopu, vienā vai otrā pakāpē tuvu viena otrai. Veicot zinātniskus pētījumus, apstrādājot novērojuma vai eksperimenta rezultātus, parasti nākas saskarties ar otro iespēju. Pētot dažādu rādītāju kvantitatīvās atkarības, kuru vērtības tiek noteiktas empīriski, parasti ir zināma mainība. To daļēji nosaka pētīto nedzīvās un it īpaši dzīvās dabas objektu neviendabīgums, daļēji novērošanas un materiālu kvantitatīvās apstrādes kļūda. Pēdējo komponentu ne vienmēr var pilnībā novērst, to var samazināt tikai rūpīgi izvēloties atbilstošu pētījumu metodi un rūpīgi strādājot.

Speciālisti tehnoloģisko procesu un ražošanas automatizācijas jomā nodarbojas ar lielu eksperimentālo datu apjomu, kuru apstrādei tiek izmantots dators. Avota datus un iegūtos aprēķinu rezultātus var attēlot tabulas veidā, izmantojot izklājlapu procesorus (izklājlapas) un, jo īpaši, Excel. Kursa darbs datorzinātnēs ļauj studentam nostiprināt un attīstīt prasmes, izmantojot pamata datortehnoloģijas, risinot problēmas profesionālās darbības jomā.- datoralgebras sistēma no datorizētās projektēšanas sistēmu klases, orientēta uz interaktīvu dokumentu sagatavošanu ar aprēķini un vizuālais atbalsts, ir ērti lietojams un piesakāms komandas darbam.


1. Galvenā informācija


Ļoti bieži, īpaši analizējot empīriskos datus, ir skaidri jāatrod funkcionāla sakarība starp lielumiem xUn plkst, kas iegūti mērījumu rezultātā.

Analītiskā pētījumā par attiecību starp diviem lielumiem x un y tiek veikta virkne novērojumu, un rezultāts ir vērtību tabula:


xx1 x1 xiXnyy1 y1 yiYn

Šī tabula parasti tiek iegūta dažu eksperimentu rezultātā, kuros x,(neatkarīgu vērtību) nosaka eksperimentētājs, un y,iegūtas pieredzes rezultātā. Tāpēc šīs vērtības y,mēs tās sauksim par empīriskām vai eksperimentālām vērtībām.

Starp lielumiem x un y pastāv funkcionāla sakarība, taču to analītiskā forma parasti nav zināma, tāpēc rodas praktiski svarīgs uzdevums - atrast empīrisko formulu


y =f (x; a 1,a 2,…, esmu ), (1)


(Kur a1 ,a2 ,…,am- parametri), kuru vērtības ir plkst x = x,iespējams, maz atšķirtos no eksperimentālajām vērtībām y, (i = 1,2,…, P).

Parasti norādiet funkciju klasi (piemēram, lineāro, jaudas, eksponenciālo utt.), no kuras tiek izvēlēta funkcija f(x), un pēc tam tiek noteiktas labākās parametru vērtības.

Ja mēs aizstājam oriģinālu x,tad iegūstam teorētiskās vērtības

YTi=f (xi; a 1,a 2……am) , Kur i = 1,2,…, n.


Atšķirības yiT- yi, sauc par novirzēm un attēlo vertikālos attālumus no punktiem Miuz empīriskās funkcijas grafiku.

Pēc mazāko kvadrātu metodes labākie koeficienti a1 ,a2 ,…,amtās, kurām ņem vērā atrastās empīriskās funkcijas noviržu kvadrātā summu no dotajām funkcijas vērtībām



būs minimāls.

Izskaidrosim mazāko kvadrātu metodes ģeometrisko nozīmi.

Katrs skaitļu pāris ( xi, yi) no avota tabulas nosaka punktu Miuz virsmas XOY.Izmantojot formulu (1) dažādām koeficientu vērtībām a1 ,a2 ,…,amjūs varat izveidot virkni līkņu, kas ir funkcijas (1) grafiki. Uzdevums ir noteikt koeficientus a1 ,a2 ,…,amtādā veidā, lai vertikālo attālumu kvadrātu summa no punktiem Mi (xi, yi) pirms funkcijas (1) grafiks bija mazākais (1. att.).



Empīriskās formulas konstruēšana sastāv no diviem posmiem: šīs formulas vispārīgās formas noskaidrošana un tās labāko parametru noteikšana.

Ja šo lielumu attiecības raksturs x un y, tad empīriskās atkarības veids ir patvaļīgs. Priekšroka tiek dota vienkāršām formulām ar labu precizitāti. Veiksmīga empīriskās formulas izvēle lielā mērā ir atkarīga no pētnieka zināšanām priekšmeta jomā, ar kurām viņš var norādīt funkciju klasi no teorētiskiem apsvērumiem. Liela nozīme ir iegūto datu attēlojumam Dekarta vai īpašās koordinātu sistēmās (puslogaritmiskās, logaritmiskās u.c.). No punktu stāvokļa varat aptuveni uzminēt atkarības vispārējo formu, nosakot līdzību starp izveidoto grafiku un zināmo līkņu paraugiem.

Labāko izredžu noteikšana a1 ,a2,…, amempīriskajā formulā iekļautie ir iegūti ar labi zināmām analītiskām metodēm.

Lai atrastu koeficientu kopu a1 ,a2 ……am, kas nodrošina ar (2) formulu definēto funkcijas S minimumu, izmantojam vairāku mainīgo funkcijas ekstrēma nepieciešamo nosacījumu - parciālo atvasinājumu vienādību ar nulli.

Rezultātā mēs iegūstam normālu sistēmu koeficientu noteikšanai ai(i = 1,2,…, m):



Tādējādi, atrodot koeficientus aisamazina līdz risināšanas sistēmai (3). Šī sistēma ir vienkāršota, ja empīriskā formula (1) ir lineāra attiecībā pret parametriem ai, tad sistēma (3) būs lineāra.


1.1 Lineārā atkarība


Konkrētā sistēmas (3) forma ir atkarīga no tā, no kuras empīrisko formulu klases mēs meklējam atkarību (1). Lineāras atkarības gadījumā y = a1 + a2 xsistēma (3) būs šāda:


Šo lineāro sistēmu var atrisināt ar jebkuru zināmu metodi (Gausa metode, vienkāršas iterācijas, Krāmera formulas).


1.2. Kvadrātiskā atkarība


Kvadrātiskās atkarības gadījumā y = a1 + a2 x+a3x 2sistēma (3) būs šāda:



1.3. Eksponenciālā atkarība


Dažos gadījumos funkcija, kurā nenoteiktie koeficienti tiek ievadīti nelineāri, tiek uzskatīta par empīrisku formulu. Šajā gadījumā dažreiz problēma var būt linearizēta, t.i. samazināt līdz lineāram. Šādas atkarības ietver eksponenciālo atkarību


y = a1 *ea2x (6)


kur 1Un a 2, nenoteikti koeficienti.

Linearizāciju panāk, ņemot vienādības (6) logaritmu, pēc kura iegūstam sakarību

ln y = ln a 1+a 2x (7)


Apzīmēsim ln plkstun ln axattiecīgi caur tUn c, tad atkarību (6) var ierakstīt formā t = a1 + a2 X, kas ļauj izmantot formulas (4) ar aizstāšanu a1 ieslēgts cUn plksti ieslēgts ti


1.4. Korelācijas teorijas elementi


Atjaunotās funkcionālās atkarības grafiks y(x)saskaņā ar mērījumu rezultātiem (x i, plksti),i = 1,2, K, nsauc par regresijas līkni. Lai pārbaudītu konstruētās regresijas līknes atbilstību eksperimenta rezultātiem, parasti tiek ieviesti šādi skaitliskie raksturlielumi: korelācijas koeficients (lineārā atkarība), korelācijas koeficients un determinācijas koeficients. Šajā gadījumā rezultātus parasti sagrupē un uzrāda korelācijas tabulas veidā. Katrā šīs tabulas šūnā ir norādīti skaitļi niJ - šie pāri (x, y), kuras komponentes ietilpst katra mainīgā atbilstošos grupēšanas intervālos. Pieņemot, ka grupēšanas intervālu garumi (katram mainīgajam) ir vienādi, atlasiet centrus x i(attiecīgi plksti) no šiem intervāliem un skaitļiem niJ- par pamatu aprēķiniem.

Korelācijas koeficients ir lineārās attiecības mērs starp atkarīgiem gadījuma mainīgajiem: tas parāda, cik labi vidēji viens no mainīgajiem var tikt attēlots kā otra lineāra funkcija.

Korelācijas koeficientu aprēķina pēc formulas:


kur un ir attiecīgi vidējais aritmētiskais X Un plkst.

Korelācijas koeficients starp gadījuma lielumiem absolūtā vērtībā nepārsniedz 1. Jo tuvāk |p| uz 1, jo tuvāka lineārā attiecība starp x un u.

Nelineāras korelācijas gadījumā nosacītās vidējās vērtības atrodas netālu no izliektās līnijas. Šajā gadījumā kā savienojuma stipruma raksturlielumu ieteicams izmantot korelācijas koeficientu, kura interpretācija nav atkarīga no pētāmā atkarības veida.

Korelācijas koeficientu aprēķina pēc formulas:



Kur ni = , nf= , un skaitītājs raksturo nosacīto vidējo izkliedi y, par absolūto vidējo y.

Vienmēr. Vienlīdzība = 0 atbilst nekorelētiem nejaušiem mainīgajiem; = 1 tad un tikai tad, ja pastāv precīza funkcionāla saikne starp y un x. Lineāras atkarības gadījumā y no x, korelācijas koeficients sakrīt ar korelācijas koeficienta kvadrātu. Lielums - ? 2 tiek izmantots kā rādītājs regresijas novirzei no lineārās.

Korelācijas koeficients ir korelācijas attiecības mērs y Ar x jebkurā formā, bet nevar sniegt priekšstatu par empīrisko datu tuvuma pakāpi īpašai formai. Lai noskaidrotu, cik precīzi konstruētā līkne atspoguļo empīriskos datus, tiek ieviests vēl viens raksturlielums - determinācijas koeficients.

Lai to aprakstītu, ņemiet vērā šādus daudzumus. - kvadrātu kopējā summa, kur ir vidējā vērtība.

Mēs varam pierādīt šādu vienlīdzību

Pirmais termins ir vienāds ar Sres = un tiek saukts par atlikušo kvadrātu summu. Tas raksturo eksperimentālā novirzi no teorētiskā.

Otrais termins ir vienāds ar Sreg = 2 un tiek saukts par kvadrātu regresijas summu, un tas raksturo datu izplatību.

Acīmredzot ir patiesa šāda vienlīdzība: S pilns = S ost + S reg.

Determinisma koeficientu nosaka pēc formulas:



Jo mazāka ir atlikušā kvadrātu summa, salīdzinot ar kopējo kvadrātu summu, jo lielāka ir determinisma koeficienta vērtība r2 , kas parāda, cik labi regresijas analīzes radītais vienādojums izskaidro attiecības starp mainīgajiem. Ja tas ir vienāds ar 1, tad pastāv pilnīga korelācija ar modeli, t.i. nav atšķirības starp y faktiskajām un aprēķinātajām vērtībām. Pretējā gadījumā, ja determinisma koeficients ir 0, tad regresijas vienādojums nav veiksmīgs, lai prognozētu y vērtības

Determinisma koeficients vienmēr nepārsniedz korelācijas koeficientu. Gadījumā, ja vienlīdzība ir apmierināta r 2 = tad varam pieņemt, ka konstruētā empīriskā formula visprecīzāk atspoguļo empīriskos datus.


2. Problēmas izklāsts


1. Izmantojot mazāko kvadrātu metodi, tuviniet tabulā doto funkciju

a) pirmās pakāpes polinoms;

b) otrās pakāpes polinoms;

c) eksponenciālā atkarība.

Katrai atkarībai aprēķiniet determinisma koeficientu.

Aprēķināt korelācijas koeficientu (tikai a gadījumā).

Katrai atkarībai izveidojiet tendenču līniju.

Izmantojot funkciju LINEST, aprēķiniet atkarības skaitliskos raksturlielumus.

Salīdziniet savus aprēķinus ar rezultātiem, kas iegūti, izmantojot funkciju LINEST.

Nosakiet, kura no iegūtajām formulām vislabāk atbilst funkcijai.

Uzrakstiet programmu vienā no programmēšanas valodām un salīdziniet aprēķinu rezultātus ar iepriekš iegūtajiem.


3. Sākotnējie dati


Funkcija ir parādīta 1. attēlā.



4. Aproksimāciju aprēķins Excel izklājlapu procesorā


Aprēķinu veikšanai ieteicams izmantot Microsoft Excel izklājlapu procesoru. Un sakārtojiet datus, kā parādīts 2. attēlā.



Lai to izdarītu, ievadām:

· šūnās A6:A30 ievadām vērtības xi .

· šūnās B6: B30 ievadām ui vērtības .

· šūnā C6 ievadiet formulu =A6^ 2.

· Šī formula tiek kopēta šūnās C7:C30.

· šūnā D6 ievadiet formulu =A6*B6.

· Šī formula tiek kopēta šūnās D7:D30.

· Šūnā F6 ievadām formulu =A6^4.

· Šī formula tiek kopēta šūnās F7:F30.

· Šūnā G6 ievadām formulu =A6^2*B6.

· Šī formula tiek kopēta šūnās G7:G30.

· Šūnā H6 ievadiet formulu =LN(B6).

· Šī formula tiek kopēta šūnās H7:H30.

· šūnā I6 ievadiet formulu =A6*LN(B6).

· Šī formula tiek kopēta šūnās I7:I30. Mēs veicam nākamās darbības, izmantojot automātisko summēšanu

· šūnā A33 ievadiet formulu =SUM (A6:A30).

· šūnā B33 ievadiet formulu =SUM (B6:B30).

· šūnā C33 ievadiet formulu =SUM (C6:C30).

· šūnā D33 ievadiet formulu =SUM (D6:D30).

· šūnā E33 ievadiet formulu =SUM (E6:E30).

· šūnā F33 ievadiet formulu =SUM (F6:F30).

· Šūnā G33 ievadiet formulu =SUM (G6:G30).

· Šūnā H33 ievadiet formulu =SUM (H6:H30).

· šūnā I33 ievadiet formulu =SUM (I6:I30).

Aptuvināsim funkciju y = f(x) lineārā funkcija y = a1 + a2x. Lai noteiktu koeficientus a 1un a 2Izmantosim sistēmu (4). Izmantojot 2. tabulas kopsummas, kas atrodas šūnās A33, B33, C33 un D33, mēs ierakstām sistēmu (4) formā



risinot ko iegūstam a 1= -24,7164 un a2 = 11,63183

Tādējādi lineārajai tuvināšanai ir forma y= -24,7164 + 11,63183x (12)

Sistēma (11) tika atrisināta, izmantojot Microsoft Excel. Rezultāti ir parādīti 3. attēlā:



Tabulā šūnās A38:B39 tiek ierakstīta formula (=MOBR (A35:B36)). Šūnas E38:E39 satur formulu (=VAIRĀKI (A38:B39, C35:C36)).


Tālāk mēs aproksimējam funkciju y = f(x) ar kvadrātfunkciju y = a1 + a2 x+a3 x2. Lai noteiktu koeficientus a 1,a 2un a 3Izmantosim sistēmu (5). Izmantojot 2. tabulas kopsummas, kas atrodas šūnās A33, B33, C33, D33, E33, F33 un G33, mēs ierakstām sistēmu (5) šādā formā:



Kuru atrisinot, iegūstam a 1= 1,580946, a 2= -0,60819 un a3 = 0,954171 (14)

Tādējādi kvadrātiskajam tuvinājumam ir šāda forma:

y = 1,580946 -0,60819x +0,954171x2

Sistēma (13) tika atrisināta, izmantojot Microsoft Excel. Rezultāti ir parādīti 4. attēlā.



Tabulā šūnās A46:C48 tiek ierakstīta formula (=MOBR (A41:C43)). Šūnas F46:F48 satur formulu (= VAIRĀKI (A41:C43, D46:D48)).

Tagad tuvināsim funkciju y = fx) eksponenciāla funkcija y = a1 ea2x. Lai noteiktu koeficientus a1 Un a2 logaritēsim vērtības yiun izmantojot 2. tabulas kopsummas, kas atrodas šūnās A26, C26, H26 un I26, iegūstam sistēmu:



Kur с = ln(a1 ).

Atrisinot sistēmu (10), mēs atrodam c =0,506435, a2 = 0.409819.

Pēc potenciācijas mēs iegūstam a1 = 1,659365.

Tādējādi eksponenciālajai tuvināšanai ir forma y = 1,659365*e0,4098194x

Sistēma (15) tika atrisināta, izmantojot Microsoft Excel. Rezultāti ir parādīti 5. attēlā.


Tabulā šūnās A55:B56 tiek ierakstīta formula (=MOBR (A51:B52)). Šūnās E54:E56 tiek ierakstīta formula (=MULTIPLE (A51:B52, C51:C52)). Šūnā E56 ir formula =EXP(E54).

Aprēķināsim x un y vidējo aritmētisko, izmantojot formulas:



Aprēķinu rezultāti x un yizmantojot Microsoft Excel, ir parādīti 6. attēlā.



Šūnā B58 ir formula =A33/25. Šūnā B59 ir formula =B33/25.

2. tabula


Paskaidrosim, kā tiek sastādīta tabula 7. attēlā.

Šūnas A6:A33 un B6:B33 jau ir aizpildītas (skat. 2. attēlu).

· šūnā J6 ievadiet formulu =(A6-$B$58)*(B6-$B$59).

· Šī formula tiek kopēta šūnās J7:J30.

· šūnā K6 ievadiet formulu =(A6-$B$58)^ 2.

· Šī formula tiek kopēta šūnās K7:K30.

· Šūnā L6 ievadām formulu =(B1-$B$59)^2.

· Šī formula tiek kopēta šūnās L7:L30.

· šūnā M6 ievadām formulu =($E$38+$E$39*A6-B6)^2.

· Šī formula tiek kopēta šūnās M7:M30.

· šūnā N6 ievadām formulu =($F$46 +$F$47*A6 +$F$48*A6 L6-B6)^2.

· Šī formula tiek kopēta šūnās N7:N30.

· šūnā O6 ievadiet formulu =($E$56*EXP ($E$55*A6) - B6)^2.

· Šī formula tiek kopēta šūnās O7:O30.

Mēs veicam nākamās darbības, izmantojot automātisko summēšanu.

· šūnā J33 ievadiet formulu =CYMM (J6:J30).

· Šūnā K33 ievadām formulu =SUM (K6:K30).

· šūnā L33 ievadiet formulu =CYMM (L6:L30).

· Šūnā M33 ievadām formulu =SUM (M6:M30).

· šūnā N33 ievadiet formulu =SUM (N6:N30).

· šūnā O33 ievadiet formulu =SUM (06:030).

Tagad aprēķināsim korelācijas koeficientu, izmantojot formulu (8) (tikai lineārai tuvināšanai), un determinācijas koeficientu, izmantojot formulu (10). Aprēķinu rezultāti, izmantojot Microsoft Excel, ir parādīti 7. attēlā.



8. tabulā šūnā B61 formula ir rakstīta =J33/(K33*L33^(1/2). Šūnā B62 formula ir rakstīta =1 - M33/L33. Šūnā B63 formula ir rakstīta =1 - N33 /L33.Šūnā B64 formula ir ierakstīta formula =1 - O33/L33.

Aprēķinu rezultātu analīze parāda, ka kvadrātiskā aproksimācija vislabāk raksturo eksperimentālos datus.


4.1 Grafiku zīmēšana programmā Excel


Atlasiet šūnas A1:A25, pēc tam dodieties uz diagrammu vedni. Izvēlēsimies izkliedes diagrammu. Kad diagramma ir izveidota, ar peles labo pogu noklikšķiniet uz grafika līnijas un atlasiet pievienot tendences līniju (attiecīgi lineāra, eksponenciāla, jauda un otrās pakāpes polinoms).

Lineārās aproksimācijas grafiks


Kvadrātiskās aproksimācijas grafiks


Eksponenciālās pielāgošanas grafiks.


5. Funkciju aproksimācija, izmantojot MathCAD


Datu tuvināšana, ņemot vērā to statistiskos parametrus, pieder pie regresijas problēmām. Tie parasti rodas, apstrādājot eksperimentālos datus, kas iegūti tādu procesu vai fizisko parādību mērījumu rezultātā, kuriem ir statistisks raksturs (piemēram, mērījumi radiometrijā un kodolģeofizikā), vai ar augstu traucējumu (trokšņa) līmeni. Regresijas analīzes uzdevums ir izvēlēties matemātiskās formulas, kas vislabāk raksturo eksperimentālos datus.


.1 Lineārā regresija


Lineārā regresija Mathcad sistēmā tiek veikta, izmantojot argumentu vektorus Xun lasījumi Y funkcijas:

pārtvert (x, y)- aprēķina parametru A1 , regresijas līnijas vertikālā nobīde (sk. attēlu)

slīpums (x, y)- aprēķina parametru a2 , regresijas līnijas slīpums (sk. attēlu)

y(x) = a1+a2*x


Funkcija labot (y, y(x))aprēķina Pīrsona korelācijas koeficients.Jo tuvāk viņš ir 1, jo precīzāk apstrādātie dati atbilst lineārajai attiecībai (skat. attēlu)

.2 Polinomu regresija


Viendimensionālu polinoma regresiju ar patvaļīgu polinoma pakāpi n un patvaļīgām paraugu koordinātām programmā Mathcad veic funkcijas:

regress (x, y, n)- aprēķina vektoru S,kas satur koeficientus aipolinoms n th grāds;

Koeficientu vērtības aivar iegūt no vektora Sfunkciju apakšmatrica(S, 3, garums(S) - 1, 0, 0).

Iegūtās koeficientu vērtības izmantojam regresijas vienādojumā


y(x) = a1+a2*x+a3*x2 (skat. attēlu)

.3 Nelineārā regresija


Vienkāršām standarta aproksimācijas formulām ir paredzētas vairākas nelineāras regresijas funkcijas, kurās funkcijas parametrus izvēlas Mathcad programma.

Tie ietver funkciju expfit (x, y, s),kas atgriež vektoru, kas satur koeficientus a1, a2Un a3eksponenciālā funkcija

y(x) = a1 ^exp (a2x) + a3.V vektors Stiek ievadītas koeficientu sākotnējās vērtības a1, a2Un a3pirmais tuvinājums.


Secinājums


Aprēķinu rezultātu analīze parāda, ka lineārā aproksimācija vislabāk raksturo eksperimentālos datus.

Rezultāti, kas iegūti, izmantojot programmu MathCAD, pilnībā sakrīt ar vērtībām, kas iegūtas, izmantojot programmu Excel. Tas norāda uz aprēķinu precizitāti.


Bibliogrāfija

  1. Datorzinātne: mācību grāmata / Red. prof. N.V. Makarova. M.: Finanses un statistika 2007.g
  2. Informātika: Datortehnoloģiju seminārs / Red. Ed. prof. N.V. Makarova. M Finanses un statistika, 2011. gads.
  3. N.S. Piskunovs. Diferenciāļa un integrāļa aprēķins, 2010.
  4. Datorzinātne, Mazāko kvadrātu aproksimācija, vadlīnijas, Sanktpēterburga, 2009.g.
Apmācība

Nepieciešama palīdzība tēmas izpētē?

Mūsu speciālisti konsultēs vai sniegs apmācību pakalpojumus par jums interesējošām tēmām.
Iesniedziet savu pieteikumu norādot tēmu tieši tagad, lai uzzinātu par iespēju saņemt konsultāciju.

Notiek ielāde...Notiek ielāde...