Uvod u jednostavnu linearnu regresiju

Iz rječnika : Povratak u prijašnje ili manje razvijeno stanje.

U statistici: Mjera odnosa između srednje vrijednosti jedne varijable i odgovarajućih vrijednosti ostalih varijabli.

Regresija u kojoj se odnos ulazne varijable (neovisna varijabla) i ciljne varijable (ovisna varijabla) smatra linearnom naziva se Linearna regresija. Jednostavna linearna regresija je vrsta linearne regresije u kojoj imamo samo jednu neovisnu varijablu za predviđanje ovisne varijable. Jednostavna linearna regresija jedan je od algoritama strojnog učenja. Jednostavna linearna regresija pripada obitelji nadziranog učenja. Regresija se koristi za predviđanje kontinuiranih vrijednosti.

Model jednostavne linearne regresije

Učinimo to jednostavnim. Kako je sve počelo?

Sve je započelo 1800. godine s Francisom Galtonom. Proučavao je odnos u visini između očeva i njihovih sinova. Primijetio je obrazac: ili će visina sina biti visoka koliko i očeva visina ili visina sina obično će biti bliža ukupnoj prosječnoj visini svih ljudi. Ovaj fenomen nije ništa drugo nego regresija.

Na primjer, Shaq O'Neal je vrlo poznati NBA igrač i visok je 2, 16 metara. Njegovi sinovi Shaqir i Shareef O'neal visoki su 1, 96 metara i 2, 06 metara. Prosječna visina stanovništva je 1, 76 metara. Sin visine regresira (pomicanje prema) srednjoj visini.

Kako radimo regresiju?

Izračunavanje regresije sa samo dvije podatkovne točke:

Sve što želimo učiniti je pronaći najbolju regresu je nacrtati liniju koja je što bliža svakoj točki. U slučaju dvije podatkovne točke lako je povući crtu, samo im se pridružite.

Ako imamo nekoliko podataka, sada kako nacrtati liniju koja je što bliža svakoj točki podataka.

Naš je cilj smanjiti vertikalnu udaljenost između crte i svih podataka. Na taj način predviđamo najbolju liniju za naš model Linearne regresije.

Što je jednostavna linearna regresija?

Ispod je detaljno objašnjenje Jednostavne linearne regresije:

  • Nacrtaje puno i puno mogućih linija linija, a zatim čini bilo koju od ovih analiza.
  • Zbroj kvadratnih pogrešaka.
  • Zbroj apsolutnih pogrešaka.
  • metoda najmanje kvadrata… itd
  • Za našu ćemo analizu koristiti metodu najmanje kvadrata.
  • Napravit ćemo razliku svih točaka i izračunat ćemo kvadrat zbroja svih točaka. Koji god redak da minimalnu svotu, bit će naša najbolja linija.

Na primjer: Time bismo mogli uzeti više muškaraca i njihovu visinu i učiniti stvari poput recimo muškarcu koliko može biti njegov sin. prije nego što se uopće rodio.


Google slika

Gornja slika prikazuje jednostavnu linearnu regresiju. Crta predstavlja liniju regresije. Dava: y = a + b * x

Gdje je y ovisna varijabla (DV): Na primjer, kako se plaća plaća mijenja ovisno o broju godina iskustva zaposlenika. Dakle, ovdje će plaća zaposlenika ili osobe biti ovisna varijabla.

Ovisna varijabla je naša ciljna varijabla, ona koju želimo predvidjeti primjenom linearne regresije.

x je naša neovisna varijabla (IV): Ovisna varijabla je uzrok promjene neovisne varijable. U gornjem primjeru, broj godina iskustva je naša ovisna varijabla, jer broj godina iskustva uzrokuje promjenu plaće zaposlenika.

  • b je varijabla koeficijenta za našu neovisnu varijablu x. Taj koeficijent igra presudnu ulogu. Kaže kako će promjena jedinice u x (IV) utjecati na y (DV). Naziva se i koeficijentom proporcionalne. U pogledu matematike, na vama je nagib linije ili možete reći strmi od linije.
  • U našem primjeru, ako je nagib (b) manji, što znači da će broj godina s druge strane donijeti manji porast plaće ako nagib (b) bude veći dovest će do velikog povećanja plaća s povećanjem broja godine iskustva.
  • a je konstantna vrijednost. Naziva se i kao presretanje, tamo gdje linija presijeca y-osi ili DV osi. Na drugi način možemo reći kada zaposlenik ima nulta godina iskustva (x), tada će plaća (y) za tog zaposlenika biti konstantna (a).

Kako djeluje najmanji trg?

Ispod su točke za najmanje kvadratne radove:

  • Crta proizvoljnu liniju prema trendovima podataka.
  • Uzima podatke i crta okomite crte. Vertikalnu udaljenost smatra parametrom.
  • Ove okomite linije presjeći će liniju regresije i dati odgovarajuću točku podatkovnim točkama.
  • Tada će se nalaziti vertikalna razlika između svake podatkovne točke i pripadajuće podatkovne točke na regresijskoj liniji.
  • Izračunat će pogrešku koja je kvadratna od razlike.
  • Zatim izračunava zbroj pogrešaka.
  • Zatim će opet povući crtu i ponovit će gornji postupak još jednom.
  • Na ovaj način crta niz linija, a linija koja daje najmanje zbroja pogreške izabrana je kao najbolja linija.
  • Ova najbolja linija je naša jednostavna linearna regresijska linija.

Primjena jednostavne linearne regresije

Regresijska analiza provodi se radi predviđanja kontinuirane varijable. Regresijska analiza ima široku primjenu. Neki su primjeri sljedeći:

  • Prediktivna analitika
  • Učinkovitost marketinga,
  • cijene bilo kog uvrštenja
  • predviđanje promocije za proizvod.

Ovdje ćemo raspravljati o jednoj primjeni linearne regresije za prediktivnu analitiku. Modeliranje ćemo raditi koristeći python.

Koraci koje ćemo slijediti u stvaranju našeg modela su sljedeći:

  • Uvest ćemo knjižnice i skupove podataka.
  • Podatke ćemo prethodno obraditi.
  • Podijelit ćemo podatke na testni set i skup treninga.
  • Napravit ćemo model koji će pokušati predvidjeti ciljnu varijablu na temelju našeg skupa treninga
  • Predvidjet ćemo ciljnu varijablu za testni skup.
  • Analizirat ćemo rezultate predviđene modelom

Za našu ćemo analizu koristiti podatke o plaćama s podacima o 30 zaposlenih.

# Uvoz biblioteka

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

# Uvoz skupa podataka (uzorak podataka prikazan je u tablici)

dataset = pd.read_csv('Salary_Data.csv')

godine iskustva Plaća
1.5 37.731
1.1 39.343
2.2 39.891
2 43.525
1.3 46.205
3.2 54.445
4 55.749

# Prethodna obrada skupa podataka, ovdje ćemo podijeliti skup podataka na ovisnu varijablu i nezavisnu varijablu. x neovisan i y kao ovisna ili ciljna varijabla

X = dataset.iloc(:, :-1).values
y = dataset.iloc(:, 1).values

# Dijeljenje skupa podataka na set za trening i test test:

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 1/3, random_state = 0)

Ovdje veličina testa 1/3 pokazuje da je od ukupnih podataka 2/3 dio za obuku modela, a ostatak 1/3 se koristi za testiranje modela.

# Prilagodimo naš jednostavni model linearne regresije na set za trening

from sklearn.linear_model import LinearRegression
regressor = LinearRegression()
regressor.fit(X_train, y_train)

Model linearne regresije sada je obučen. Ovaj će se model koristiti za predviđanje ovisne varijable.

# Predviđanje rezultata testa

y_pred = regressor.predict(X_test)

# Vizualiziranje rezultata testnog skupa

plt.scatter(X_test, y_test, color = 'blue')
plt.plot(X_train, regressor.predict(X_train), color = 'red')
plt.title('Salary of Employee vs Experience (Test set)')
plt.xlabel('Years of Experience')
plt.ylabel('Salary')
plt.show()

# Parametar modela

print(regressor.intercept_)
print(regressor.coef_)
26816.19224403119
(9345.94244312)

Dakle, vrijednost presretača (a) je 26816. Što sugerira da bi bilo koji svježiji (nulta iskustvo) dobio oko 26816 iznos kao plaću.

Koeficijent za naš model je izašao kao 9345, 94. Sugeriše da će zadržavanje svih ostalih parametara konstantno, promjena jedne jedinice nezavisne varijable (godine eksp.) Donijeti promjenu plaće od 9345 jedinica.

Mjerne vrijednosti regresije

Postoje tri važne metode mjernih podataka za regresijsku analizu:

  • Srednja apsolutna pogreška (MAE): To pokazuje srednja vrijednost apsolutnih grešaka, što je razlika između predvidjeti i stvarna.
  • Srednja pogreška u kvadratu (MSE): Pokazuje srednju vrijednost kvadratnih pogrešaka.
  • Root Mean Squared Error (RMSE): Pokazuje korijenski srednji dio srednje kvadratne pogreške.

Možemo usporediti gore navedene metode:

  • MAE: Pokazuje prosječnu grešku i najjednostavniju od sve tri metode.
  • MSE: Ovaj je popularniji od MAE-a jer povećava veće pogreške, što rezultira više uvida.
  • RMSE: Ovaj je bolji od MSE-a jer pogrešku možemo interpretirati u smislu y.

Ove 3 su samo funkcije gubitka.

# Evaluacija modela

from sklearn import metrics
print('MAE:', metrics.mean_absolute_error(y_test, y_pred))
print('MSE:', metrics.mean_squared_error(y_test, y_pred))
print('RMSE:', np.sqrt(metrics.mean_squared_error(y_test, y_pred)))
MAE: 3426.4269374307123
MSE: 21026037.329511296
RMSE: 4585.4157204675885

Zaključak

Linearna regresijska analiza moćan je alat za algoritme strojnog učenja koji se koristi za predviđanje kontinuiranih varijabli poput plaće, prodaje, performansi itd. Linearna regresija razmatra linearni odnos između neovisnih i ovisnih varijabli. Jednostavna linearna regresija ima samo jednu neovisnu varijablu na temelju koje model predviđa ciljanu varijablu. Razmotrili smo model i primjenu linearne regresije s primjerom prediktivne analize za predviđanje plaća zaposlenih.

Preporučeni članci

Ovo je vodič za jednostavnu linearnu regresiju. Ovdje raspravljamo o modelu i primjeni linearne regresije, koristeći primjer prediktivne analize za predviđanje plaća zaposlenih. Možete i proći kroz naše druge povezane članke da biste saznali više -

  1. Analiza linearne regresije
  2. Linearna regresija u R
  3. Modeliranje linearnog regresije
  4. Alati za ispitivanje regresije
  5. Matplotlib In Python | Najboljih 14 parcela u Matplotlibu
  6. Rječnik na Pythonu | Metode i primjeri
  7. Primjeri kvadratnog korijena u PHP-u
  8. Linearna regresija vs logistička regresija | Glavne razlike

Kategorija: