Jednostavna linearna regresijska analiza
Jednostavna linearna regresija je statistička tehnika koja se koristi za analizu odnosa između dvije kvantitativne varijable. Varijabla koju pokušavamo predvidjeti naziva se zavisna ili odzivna varijabla, dok se varijabla koja se koristi za predviđanje naziva nezavisna ili prediktorska varijabla. U jednostavnoj linearnoj regresiji pokušavamo pronaći najbolju pravu liniju koja opisuje odnos između ove dvije varijable.
Osnovni koncepti jednostavne linearne regresije
Jednostavna linearna regresija zasniva se na pretpostavci da postoji linearni odnos između zavisne varijable \(Y\) i nezavisne varijable \(X\). Opći oblik modela jednostavne linearne regresije je:
\[ Y = \beta_0 + \beta_1 X + \epsilon \]
Gdje:
– \( Y \) je zavisna varijabla.
– \( X \) je nezavisna varijabla.
– \( \beta_0 \) je odsječak na osi, koji predstavlja vrijednost \(Y\) kada \(X = 0\).
– \( \beta_1 \) je nagib ili gradijent, koji predstavlja prosječnu promjenu u \(Y\) za svaku jediničnu promjenu u \(X\).
– \( \epsilon \) je greška ili rezidualni član koji predstavlja varijabilnost u \(Y\) koja se ne može objasniti sa \(X\).
Cilj jednostavne linearne regresije je procjena parametara \(\beta_0\) i \(\beta_1\) tako da se model može koristiti za predviđanje vrijednosti \(Y\) povezane s vrijednošću \(X\).
Metoda najmanjih kvadrata
Jedna od najčešće korištenih metoda za prilagođavanje jednostavnog modela linearne regresije je metoda najmanjih kvadrata. Cilj ove metode je minimizirati zbir kvadrata vertikalnih odstupanja između stvarnih opažanja i vrijednosti koje predviđa model. Pretpostavimo da imamo n opažanja koja se sastoje od parova \((x_i, y_i)\) za \(i = 1, 2, …, n\). Funkcija koju treba minimizirati je:
S(β0, β1) = zbir i=1^{n} (yi – (β0 + β1xi))^2
Da bismo pronašli \(\beta_0\) i \(\beta_1\) koji minimiziraju ovu funkciju, uzimamo parcijalne derivacije \(S(\beta_0, \beta_1)\) u odnosu na svaki parametar i postavljamo te derivacije na nulu. Matematički proračun se može pojednostaviti na sljedeći način:
\[ \beta_1 = \frac{\suma_{i=1}^{n} (x_i – \bar{x})(y_i – \bar{y})}{\suma_{i=1}^{n} (x_i – \bar{x})^2} \]
\[ \beta_0 = \bar{y} – \beta_1 \bar{x} \]
Gdje:
– \(\bar{x}\) je prosjek od \(X\)
– \(\bar{y}\) je prosjek od \(Y\)
Nakon dobijanja parametara \(\beta_0\) i \(\beta_1\), jednostavan linearni regresijski model može se koristiti za predviđanje vrijednosti \(Y\) za svaku vrijednost \(X\).
Pretpostavke u jednostavnoj linearnoj regresiji
Za valjane i pouzdane rezultate, jednostavna linearna regresija pretpostavlja nekoliko stvari:
1. Linearnost: Odnos između zavisne i nezavisne varijable mora biti linearan.
2. Nezavisnost: Opservacije moraju biti nezavisne jedna od druge.
3. Homoskedastičnost: Rezidualna varijabilnost mora biti konstantna u cijelom rasponu vrijednosti nezavisne varijable.
4. Normalnost reziduala: Reziduali (greške) moraju slijediti normalnu distribuciju.
Ako ove pretpostavke nisu ispunjene, rezultati jednostavnog linearnog regresijskog modela bit će nepouzdani i možda neće moći dati tačna predviđanja.
Procjena regresijskog modela
Jedan od načina da se procijeni koliko je dobro jednostavan linearni regresijski model predvidio rezultate jeste korištenje koeficijenta determinacije (\(R^2\)). Koeficijent determinacije pokazuje udio varijabilnosti u zavisnoj varijabli koji se može objasniti varijabilnosti u nezavisnim varijablama.
\[ R^2 = \frac{\sum_{i=1}^{n} (\hat{y}_i – \bar{y})^2}{\sum_{i=1}^{n} (y_i – \bar{y})^2} \]
Gdje:
– \(\hat{y}_i\) je predviđena vrijednost \(Y\).
– \(y_i\) je stvarna vrijednost \(Y\).
– \(\bar{y}\) je prosjek vrijednosti \(Y\).
Vrijednost \(R^2\) kreće se od 0 do 1. Vrijednost \(R^2\) blizu 1 ukazuje na to da model može objasniti većinu varijabilnosti zavisne varijable.
Implementacija u programskom jeziku
Za implementaciju jednostavne linearne regresije možemo koristiti različite statističke softvere ili programske jezike. U nastavku je primjer implementacije u Pythonu korištenjem biblioteke `scikit-learn`:
“`python
uvoz numpy kao np
uvozite matplotlib.pyplot kao plt
iz sklearn.linear_model import LinearRegression
iz sklearn.metrics import mean_squared_error, r2_score
podaci
X = np.array([[1], [2], [3], [4], [5]]).atype(np.float64)
y = np.array([1.5, 3.6, 3.5, 2.9, 5.5]).atype(np.float64)
Model
model = Linearna regresija ()
model.fit (X, y)
Predviđanje
y_pred = model.predict (X)
Koeficijent
beta_0 = model.presretanje_
beta_1 = model.koef_[0]
print(f'Presjecanje: {beta_0}')
print(f'Nagib: {beta_1}')
print(f'Srednja kvadratna greška: {srednja_kvadratna_greška(y, y_pred)}')
print(f'Koeficijent determinacije (R^2): {r2_score(y, y_pred)}')
Grafik podataka i regresijska linija
plt.scatter(X, y, boja='plava')
plt.plot(X, y_pred, boja='crvena')
plt.xlabel('X')
plt.ylabel('Y')
plt.show ()
"`
U gornjem primjeru, prvo uvozimo potrebne biblioteke, definiramo podatke \(X\) i \(Y\), a zatim koristimo objekt `LinearRegression` iz `scikit-learn` da prilagodimo model podacima. Nakon što je model prilagođen, pravimo predviđanja i izračunavamo koeficijente, kao i srednju kvadratnu grešku i koeficijent determinacije. Konačno, crtamo podatke i liniju regresije.
Zaključak
Jednostavna linearna regresija je moćan alat za statističku analizu koji se koristi za objašnjenje odnosa između dvije kvantitativne varijable. Uz neke osnovne pretpostavke o linearnosti, nezavisnosti, homoskedastičnosti i normalnosti, možemo predvidjeti vrijednost zavisne varijable na osnovu vrijednosti nezavisnih varijabli. Metoda najmanjih kvadrata pruža efikasan način za prilagođavanje regresijske linije i određivanje optimalnih parametara. Evaluacija modela putem koeficijenta determinacije (R2) pruža uvid u to koliko dobro naš model funkcioniše.
Iako jednostavna linearna regresija ima ograničenja, kao što je mogućnost rukovanja samo dvije varijable i pretpostavke koje moraju biti ispunjene, ova tehnika ostaje važna osnova u statistici i analizi podataka i često se koristi kao prvi korak u razumijevanju odnosa između varijabli prije prelaska na složenije metode.