Sunteți pe pagina 1din 14

UNIVERSITATEA POLITEHNICA BUCUREȘTI

INGINERIA ȘI MANAGEMENTUL SISTEMELOR DE AFACERI

REGRESIA LINIARÃ

Studenți
Mînzală Alina Maria
Lefter Alexandru Florin
Regresia liniară - definiție
Regresia reprezintă expresia matematică ce permite estimarea unei variabile în funcţie de cel
putin o altă variabilă. Regresia ajută în determinarea relaţiei şi este folosită în special în studii de
predicţie.

Clasificare regresie liniară:


 Regresie liniară simplă
 Regresie liniară multiplă standard
 Regresie liniară multiplă secventială (regresie liniară)

REGRESIE LINIARĂ SIMPLĂ


Ipotezele regresiei liniare simple:
 Erorile masurătorilor sunt independente;
 Regresia depinde de identificarea corectă a modelului relaţional;
 Nu există erori în măsurarea valorilor variabilelei dependente;
 Variaţia valorilor lui Y este aceeaşi pentru toate valorile lui X;
 Valorile lui Y urmează o distributie normală;
 Dacă există o relaţie de liniaritate între variabilele de interes, putem identifica o ecuaţie simplă
pentru a prezice o variabila cunoscând cealaltă variabilă;
 Variabila rezultat este variabila Y iar variabila predictor este variabila X.

Metoda constă în determinarea unei funcţii liniare (este cea mai simplă formă de dependenţă)
f(x) = y = a + bx
care să aproximeze calculul valorilor y prin valorile x (y – este variabila dependentă, x – variabila
independentă sau predictor). Atât x cât şi y sunt variabile de tip continuu.
Metoda de calcul pentru parametrii dreptei de regresie constă în definirea unei erori şi minimizarea
acesteia.
Considerăm că avem două şiruri de date corespunzător variabilelor aleatoare de interes X şi
respectiv Y (caracterizate ca fiind distribuite normal sau gausian).

Luăm ca exemplu următoarele şiruri:


X: x1 x2 ………. xn
Y: y1 y2 ………. yn
Dreapta de regresie pentru cele doua şiruri definite este următoarea:

Dreapta de regresie este reprezentata de urmatoarea formula:


f(x) = y = a + bx.
În continuare, vom dori sa determinam parametrii a si b care defines relatia dreptei de regresie.

Pentru aceasta se foloseşte metoda celor mai mici pătrate, care constă în a minimiza suma
pătratelor erorilor dintre valorile yi (extrase din experiment) şi valorile f(xi) calculate cu ajutorul formulei
dreptei de regresie.

Se defineşte eroarea: i  f (xi )  yi  a  b  xi  yi .


Unele valori ale erorii  i sunt pozitive, altele sunt negative, dar eroare există în toate cazurile,
atunci când  i  0 . Pentru a nu pierde această informaţie se va folosi pătratul erorii.
Eroarea totală va fi formată din suma tuturor erorilor determinate de cele n valori experimentale:

n n
      (a  b  xi  yi ) 2
i
2

i 1 i 1

Această sumă a pătratelor diferenţelor este pozitivă. Astfel, privind problema cu necunoscutele a
respectiv b, funcţia de gradul doi va admite un minim (fiind suma pătratelor, aceasta va fi intotdeauna
pozitivă).
Eroarea totală trebuie minimizată pentru a obţine o aproximare cât mai corectă a valorilor lui y in
funcţie de x.
Condiţia este ca derivata in raport cu fiecare variabilă în parte să fie zero. Obţinem astfel sistemul de
ecuaţii:

Pentru a putea determina parametrul b, vom înlocui valoarea lui a din prima ecuație în cea de-a
doua ecuație a sistemului definit mai sus:

În continuare vom folosi urmatoarea formula:

Înlocuind formula (4) în formula (3) vom obține:

De unde rezultă formula coeficientului b al dreptei de regresie:

Valoarea lui a se calculează conform celor demonstrate cu formula:


_ _
a  Yb X
În concluzie s-au dedus parametrii dreptei: y = a + bx.
Parametrii dreptei de regresie
 Parametrul a reprezintă intersecţia dreptei de regresie cu axa YY’. Dacă x=0 atunci y = a.

 Dacă avem mai multe cazuri cu x=0, atunci valoarea lui a va fi egală cu media tuturor
valorilor pentru care x este 0.

 Trebuie avut în vedere că nu în orice situaţie este posibilă şi are sens această intersecţie
cu axa YY’. De exemplu, pentru predictorul X, reprezentând presiunea sistolică sau
temperatura corpului, valoarea 0 nu are interpretare în cazuri normale (studiem
pacienţii deci persoane în viaţă).

 Parametrul b reprezinta panta dreptei (tangenta unghiului dintre dreaptă şi linia


orizontală).

 Dacă valoarea lui b este pozitivă, atunci dependenţa între cele două variabile aleatoare
este direct proporţională. Astfel, o creştere a variabilei x, va duce la o creştere a
variabilei y, respectiv o scădere a variabilei x, va conduce la o scădere a variabilei y.

 Dacă valoarea parametrului b este negativă, atunci dependenţa între cele două variabile
aleatoare este invers proporţională. Variaţia într-un anume sens a variabilei x, va duce la
o variaţie în sens contrar a variabilei y.

 Cazul în care nu există dependenţă între cele două variabile x, respectiv y, se obţine
pentru b=0. Oricât am modifica variabila x, atunci y va rămâne constant y = a.

 Panta dreptei reprezintă variaţia variabilei dependente y, pentru o creştere sau


descreştere a predictorului (x) cu o unitate.

 Avem formula dreptei de regresie: y  a  b  x

 Creştem valoarea lui x cu o unitate:

x  x 1

 Noul y va fi :
y1  a  b  ( x  1)  a  b  x  b

 Se observă că diferenţa dintre y şi y1 este egală cu b.


REGRESIE LINIARĂ MULTIPLĂ
Aspecte privind regresia liniară multiplă:

 Linia de regresie stabilește cea mai bună traiectorie pentru a minimiza eroare de
estimare;

 Multicoliniaritatea: nivelul corelației dintre variabilele indepedendente care amplifică


variabilitatea coeficienților de regresie, fapt care are ca efect o imprecizie mai mare a
predicției;

 Posibilitatea alegerii modelului de analiză care să permită selectarea unui set de


predictor având maximum de putere de predictive asupra variabilelei criteriu. Scopul nu
este acela de a aduna informație de la toate variabilele disponibile ci doar de la acelea
care aduc contribuția cea mai consistență. O primă recomandare, cu caracter preliminar,
este aceea de a avea în vedere un anumit raport între numărul de subiecți și numărul
variabilelor independente. Acest raport este cifrat la valoarea 15/1, adică pentru un
eșantion de 150 de subiecți se poate miza pe cel mult 10 variabile independente.

 După ce setul de variabile predictor a fost fixat, se va trece la adoptarea uneia dintre
metodele de introducere a acestora în ecuația de regresie:

1. Regresia multiplă standard.


Toate variabilele predictor sunt incluse în ecuație, efectul fiecăreia fiind evaluat după și
independent de efectul tuturor celorlalte variabile introduse anterior. Fiecare variabilă
independentă este evaluată numai prin prisma contribuției proprii la explicarea variabilei
dependente.

Se consideră:
m date de antrenament de tipul (X, Y):
X  ( X 1 , X 2 ,..., X n ) un vector de intrare
n atribute - variabile independente, explicative, predictive
Y – ieșirea
Ecuația de regresie:
f ( X )  b0  b1  X 1  b2  X 2  ...  bn  X n
b1 , b2 ,..., bn – coeficienții (parametrii) de regresie
b0 – interceptorul, constanta de regresie

2. Regresia multiplă secvențială (numită și regresie ierarhică).

Variabilele independente sunt introduse în ecuatie într-o anumită ordine, în functie de


opțiunile analistului. Atunci când acesta are motive să creadă ca o anumită variabilă are o
influență mai mare, o poate introduce în ecuatie înaintea altora.

3. Regresia multiplă pas cu pas.

Este utilizată adesea în studii exploratorii, atunci când există un număr mare de predictori
despre care nu se știe exact care este contribuția fiecăreia la corelația de ansamblu cu variabila
dependentă. Există trei variante ale acetui tip de analiză:

 Selecția anterogradă.

Toate variabilele independente sunt corelate cu variabila dependentă după care variabila
care are corelația cea mai mare este introdusă prima în ecuație. Următoarea variabila introdusă
în ecuație este cea care are corelația cea mai mare, după ce a fost eliminat efectul variabilei
anterioare. Procesul continuă până ce nivelul contribuției variabilelor independente este prea
mic pentru a mai fi luat în considerare. O variabilă, odată introdusă în ecuație rămâne acolo.

 Selecția pas cu pas.

Este o variantă a metodei anterioare. Diferența constă în faptul că la fiecare pas, fiecare
variabilă deja introdusă este retestata pentru a se evalua efectul lor că și cum ar fi fost
introduse ultima. Cu alte cuvinte, dacă o variabilă nou introdusă are o contribuție mai
consistentă asupra variabilei dependente va determina eliminarea unei variabile anterioare dar
care se dovedește mai puțin predictivă.
 Selecția retrogradă.

Pasul inițial al acestei metode este acela de calculare a unei ecuații de regresie în care toate
variabilele predictor sunt incluse. Ulterior, pentru fiecare variabilă predictor este efectuat un
test de semnificație "F", pentru a se evalua contribuția fiecărui predictor la corelația de
ansamblu. Valorile testului F sunt comparate cu o valoare limită prestabilită, variabilele care nu
trec acest prag fiind eliminate din ecuație. Pe măsură ce o variabilă este eliminată, o nouă
ecuație este calculată și un nou test F este efectuat pentru variabilele rămase, urmat de
eventuală eliminare a unei alte variabile. Procesul continuă până când doar variabilele
semnificative rămân în ecuație.

CONCLUZIE !
Este evident că metoda "secvențială" și cea "pas cu pas" sunt superioare metodei
"standard". Între primele două diferență constă în faptul că, în cazul metodei secvențiale,
decizia de selecționare a variabilelor introduse în ecuație aparține cercetătorului în timp ce în
cazul metodei pas cu pas, programul este cel care face în mod automat selecția, în funcție de
parametri fixați de analist.
Set de probleme - regresie liniară
Problema 1
Se consideră următorul exemplu în care sunt înregistrate valorile temperaturii pe primele 10 luni ale
unei lunii de vară. Se cere să se determine formula ce definește dreapta de regresie liniară.

Ziua Temperatura [ C ]
1 20.5
2 22.6
3 23
4 24.8
5 26.2
6 27.4
7 27.9
8 29
9 29.8
10 30

Primul pas este reprezentat de minimizarea sumei prin determinarea punctelor de extremum prin
studiera minimului functiei S(a,b) care are derivatele partiale de ordinul al doilea continue.

S S
n 2

 (a  x
i 1
i  b  y ( x i )) 
b
 0;
a
 0 (1)

Din relatia (1), rezultă următorul sistem de ecuații:

 n 2 n n

  i
a  x  b   x i   y ( xi )  x i
 i 1 i 1 i 1
 n n
(2)
a  x  n  b  y ( x )
  i 1
i i 1
i

Notăm:
n
S x   xi
i 1
n
S y   y ( xi )
i 1 (3)
n
S x 2   xi2
i 1
n
S xy   y ( xi )  xi
i 1
Cu notațiile de mai sus, sistemul devine:

a S x 2   b  S x  S xy
 (4)
a  S x  n  b  S y

De unde rezultă coeficienții dreptei de regresie liniară:

 n  S xy  S x  S y
a 
n  S x2  S x
2

 (5)
b  S x 2  S y  S x  S xy
 n  S x 2  S x2

Înlocuim cu datele nostre din tabelul de mai sus:

n=10;

S x  1  2  3  4  5  6  7  8  9  10  55
S y  20.5  22.6  23  24.8  26.2  27.4  27.9  29  29.8  30  261.2
S x 2  12  2 2  32  4 2  5 2  6 2  7 2  8 2  9 2  10 2  389 (6)
S xy  1 20.5  2  22.6  3  23  4  24.8  5  26.2  6  27.4  7  27.9  8  29  9  29.8  10  30
 20.5  45.2  69  99.2  131  164.4  195.3  232  268.2  300  1524.8

Calculăm coeficienții a și b înlocuind relația (6) în relația (5):

10 1524.8  55  261.2 15248  14366 882


a    1.019653179190751
10  389  552 3890  3025 865
389  261.2  55 1524.8 101606.8  83864 17742.8
b    20.51190751445087
10  389  552 3890  3025 865

Înlocuind datele obținute mai sus în relația (1), vom obține ecuația dreptei de regresie liniară:

f ( x)  y  a  x  b  1.019  x  20.5119

Pentru verificarea corectitudinii, am creat în Matlab o rutină care calculează atat parametrii dreptei de
regresie liniară, cat și eroarea acesteia:
După cum se poate observa din apelarea rutei linear_regression din matlab, valoarea interceptului(a)
precum și valoarea pantei de regresie(b) este aceeași și cea calculată analitic.

Prin determinarea ecuatiei dreptei de regresie, se pot efectua predictii pe baza setului de date anterior.
Se presupune ca dorim sa aflam valoarea medie a temperaturii celei de-a 14 a zi a lunii studiate.

Consideram x = 14

Avem: y(14)  1.019 14  20.5119  34.7779 [ C ] pentru cea de-a 14 a zi a lunii de vara studiate.
Problema 2. Regresie liniară multiplă
Se consideră următorul tabel ce conține date legate de umiditate, precipitații și viteză vântului pentru
ultimele 6 lunii ale anului 2017. Se cere să se determine planul de regresie.

Umiditate Viteza vantului Precipitatii


0 0 2.5
1 0.5 5
1.75 1 4.5
0.5 1.5 0
2 3 1.5
3.5 1 13.5

În matlab, s-a construit o rutină care conține ca intrări parametrii de umiditate, viteză vântului și
precipitațiile iar la ieșire vor rezulta coeficienții planului de regresie liniară.

Formula care definește regresia liniară multiplă:

y  a0  a1  x1  a2  x2  ...  an  xn  e

Prin apelarea rutinei multi_regression, s-au determinat parametrii a0 , a1 ,a 2 .

Rezultă formula regresiei liniare multiple:

y  2.1957  3.8934  x1  2.8917  x2


Problema 3

În mod natural, se presupune că există o strânsă legătură între înălțimea și


greutatea unei persoane. Se pune problema determinării unui model regresiv care să
permită calcularea greutății normale a unei persoane, în raport cu inatimea sa. Vom
considera un lot de 15 persoane, pentru care se înregistrează înălțimea și greutatea
(x=inaltime, y=greutate)

Cod Matlab:

function f = f()
%inaltime si greutate
x = [1.67;1.8;1.76;1.68;1.78;1.76;1.67;1.82;2;1.67;1.56;1.78;1.82;1.6;1.76];
y = [70;82;75;69;82;78;65;95;113;67;61;81;90;62;78];
mat = [x y];
date_ord = sortrows(mat,1)
x_ord=date_ord(1:15,1)
y_ord=date_ord(1:15,2)
figure
plot(x_ord,y_ord,'-*');
title('Greutate vs inaltime - date initiale')
xlabel('Inaltime')
ylabel('Greutate')

%coeficient de corelatie
r=corrcoef(x_ord,y_ord)
%r=0.9668
f = polytool(x_ord,y_ord,1);
%y = -141.35 +125.84x
End

În urma simulării programului vor rezulta următoarele figuri:

Graficul ce contine datele inițiale


Graficul obținut după apelarea funcției polytool - cu verde dreapta de regresie, roșu –
intervalul de încredere (95% funcția estimează valori în acest interval)

Graficul ce conține reziduurile în urma estimării.

S-ar putea să vă placă și