Uvod v preprosto linearno regresijo

Iz slovarja : vrnitev v nekdanje ali manj razvito stanje.

V statistiki: merilo razmerja med srednjo vrednostjo ene spremenljivke in ustreznimi vrednostmi drugih spremenljivk.

Regresija, v kateri se razmerje med vhodno spremenljivko (neodvisna spremenljivka) in ciljno spremenljivko (odvisna spremenljivka) šteje za linearno, imenujemo Linearna regresija. Enostavna linearna regresija je vrsta linearne regresije, kjer imamo samo eno neodvisno spremenljivko za napoved odvisne spremenljivke. Enostavna linearna regresija je eden od algoritmov strojnega učenja. Preprosta linearna regresija spada v družino nadzorovanega učenja. Regresija se uporablja za napovedovanje neprekinjenih vrednosti.

Model enostavne linearne regresije

Naj bo preprosto. Kako se je vse začelo?

Vse se je začelo leta 1800 pri Francisu Galtonu. Preučeval je razmerje v višini med očeti in njihovimi sinovi. Opazil je vzorec: bodisi višina sina bi bila tako visoka, kot je očetova ali sinova višina navadno bližja splošni povprečni višini vseh ljudi. Ta pojav ni nič drugega kot regresija.

Na primer, Shaq O'Neal je zelo znan NBA igralec in je visok 2, 16 metra. Njegova sinova Shaqir in Shareef O'neal sta visoka 1, 96 metra in 2, 06 metra. Povprečna višina prebivalstva je 1, 76 metra. Sin višine regres (pomik proti) srednja višina.

Kako naredimo regresijo?

Izračun regresije z le dvema podatkovnima točkama:

Vse, kar želimo storiti, da bi našli najboljšo regresijo, je narisati črto, ki je čim bližje vsaki piki. V primeru dveh podatkovnih točk je enostavno narisati črto, le pridružite se jim.

Če imamo zdaj več podatkovnih točk, kako narisati črto, ki je čim bližje vsaki podatkovni točki.

V tem primeru je naš cilj zmanjšati navpično razdaljo med črto in vsemi podatkovnimi točkami. Na ta način napovedujemo najboljšo črto za naš model Linearne regresije.

Kaj je preprosta linearna regresija?

Spodaj je podrobna razlaga enostavne linearne regresije:

  • Nariše veliko in veliko možnih linij črt in nato naredi katero koli od teh analiz.
  • Vsota napak v kvadratu.
  • Seštevek absolutnih napak.
  • metoda najmanj kvadrata… itd
  • Za našo analizo bomo uporabili metodo najmanj kvadrata.
  • Naredili bomo razliko vseh točk in izračunali kvadrat vsote vseh točk. Ne glede na to, katera črta bo dala najmanjšo vsoto, bo naša najboljša vrstica.

Na primer: S tem bi lahko vzeli več moških in njihovega sina višine ter storili stvari, kot bi človeku govorili, kako visok je lahko njegov sin. preden se je sploh rodil.


Google Image

Zgornja slika prikazuje preprosto linearno regresijo. Črta predstavlja regresijsko črto. Podana z: y = a + b * x

Kjer je y odvisna spremenljivka (DV): Na primer, kako se plača osebe spreminja glede na število let izkušenj zaposlenega. Torej bo tu plača zaposlenega ali osebe vaša odvisna spremenljivka.

Odvisna spremenljivka je naša ciljna spremenljivka, tista, ki jo želimo napovedati z uporabo linearne regresije.

x je naša neodvisna spremenljivka (IV): Odvisna spremenljivka je vzrok spremembe neodvisne spremenljivke. V zgornjem primeru je število let izkušenj naša odvisna spremenljivka, saj število let izkušenj povzroča spremembo plače zaposlenega.

  • b je koeficientna spremenljivka za našo neodvisno spremenljivko x. Ta koeficient ima ključno vlogo. Pove, kako bo sprememba enote v x (IV) vplivala na y (DV). Imenujemo ga tudi kot sorazmerni koeficient. Glede matematike je odvisno od vas nagib proge ali lahko rečete strmo.
  • V našem primeru, če je naklon (b) manjši, kar pomeni, da bo število let na drugi strani prineslo manj povečanja plače, če bo naklon (b) večji, bo povečala plačo s povečanjem števila leta izkušenj.
  • a je konstantna vrednost. Omenjena je tudi kot prestrezanje, kjer premica preseka osi y ali DV. Na drug način lahko rečemo, če ima zaposleni nič let izkušenj (x), potem bo plača (y) za tega zaposlenega konstantna (a).

Kako deluje Least Square?

Spodaj so točke za najmanj kvadratno delo:

  • Nariše poljubno črto v skladu s trendi podatkov.
  • Vzame podatkovne točke in nariše navpične črte. Kot parameter upošteva navpično razdaljo.
  • Te navpične črte bodo presekale regresijsko črto in podale ustrezno točko za podatkovne točke.
  • Nato bo na regresijski liniji našel navpično razliko med vsako podatkovno točko in pripadajočo podatkovno točko.
  • Izračunala bo napako, ki je kvadrat razlike.
  • Nato izračuna vsoto napak.
  • Nato spet potegne črto in bo ponovil zgornji postopek še enkrat.
  • Na ta način nariše številne črte in črta, ki daje najmanj vsote napak, je izbrana za najboljšo črto.
  • Ta najboljša linija je naša preprosta linearna regresijska linija.

Uporaba enostavne linearne regresije

Za napoved neprekinjene spremenljivke se izvede regresijska analiza. Regresijska analiza ima široko paleto aplikacij. Nekaj ​​primerov je:

  • Predvidevanje Analytics
  • Učinkovitost trženja,
  • cene katere koli kotacije
  • napoved promocije za izdelek.

Tukaj bomo obravnavali eno uporabo linearne regresije za napovedno analitiko. Modelirali bomo z uporabo pytona.

Naslednji koraki za izdelavo našega modela so naslednji:

  • Uvozili bomo knjižnice in nabore podatkov.
  • Podatke bomo predhodno obdelali.
  • Podatke bomo razdelili na testni in vadbeni niz.
  • Izdelali bomo model, ki bo poskušal napovedati ciljno spremenljivko na podlagi našega vadbenega sklopa
  • Za testni niz bomo predvideli ciljno spremenljivko.
  • Analizirali bomo rezultate, ki jih predvideva model

Za našo analizo bomo uporabili nabor plač s podatki 30 zaposlenih.

# Uvoz knjižnic

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

# Uvoz nabora podatkov (vzorec podatkov je prikazan v tabeli)

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

leta izkušenj Plača
1.5 37731
1.1 39343
2.2 39891
2 43525
1.3 46205
3.2 54445
4 55749

# Pred obdelavo nabora podatkov bomo tukaj razdelili nabor podatkov v odvisno spremenljivko in neodvisno spremenljivko. x kot neodvisna in y kot odvisna ali ciljna spremenljivka

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

# Razdelitev nabora podatkov na nabor za usposabljanje in 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)

Tukaj testna velikost 1/3 kaže, da je od skupnih podatkov 2/3 del za trening modela, ostalo pa 1/3 za testiranje modela.

# Prilagodimo naš preprost model linearne regresije na vadbeni komplet

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

Model linearne regresije je zdaj usposobljen. Ta model bo uporabljen za napovedovanje odvisne spremenljivke.

# Napovedovanje rezultatov testnega niza

y_pred = regressor.predict(X_test)

# Vizualizacija rezultatov testnega niza

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()

# Parameter modela

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

Torej je vrednost interceptorja (a) 26816. Kar kaže na to, da bi vsak svežji (nič izkušenj) dobil približno 26816 znesek kot plačo.

Koeficient za naš model je bil 9345, 94. Predlaga, da bo ohranitev vseh ostalih parametrov konstantna, sprememba ene enote neodvisne spremenljivke (leta eksp.) Bo prinesla spremembo v plači 9345 enot.

Meritve regresijske ocene

Za regresijsko analizo so na voljo tri pomembne metode ocenjevalne metrike:

  • Srednja absolutna napaka (MAE): Pokaže povprečje absolutnih napak, kar je razlika med napovedano in dejansko.
  • Srednja napaka v kvadratu (MSE): kaže povprečno vrednost napak v kvadratu.
  • Root Mean Squared Error (RMSE): Prikaže kvadratni koren srednje vrednosti napak v kvadratu.

Zgoraj navedene metode lahko primerjamo:

  • MAE: Prikaže povprečno napako in najpreprostejšo od vseh treh metod.
  • MSE: Ta je bolj priljubljen kot MAE, ker povečuje večje napake, kar posledično pokaže več vpogleda.
  • RMSE: Ta je boljši od MSE, ker lahko napako razlagamo v smislu y.

Ti 3 niso nič drugega kot funkcije izgube.

# Ocena 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ček

Linearna regresijska analiza je močno orodje za algoritme strojnega učenja, ki se uporablja za napovedovanje neprekinjenih spremenljivk, kot so plača, prodaja, uspešnost itd. Linearna regresija upošteva linearni odnos med neodvisnimi in odvisnimi spremenljivkami. Preprosta linearna regresija ima samo eno neodvisno spremenljivko, na podlagi katere model napoveduje ciljno spremenljivko. O modelu in uporabi linearne regresije smo razpravljali s primerom napovedne analize za napovedovanje plače zaposlenih.

Priporočeni članki

To je vodnik za enostavno linearno regresijo. Tukaj razpravljamo o modelu in uporabi linearne regresije z uporabo primera napovedne analize za napovedovanje plač zaposlenih. Obiščite lahko tudi druge naše sorodne članke, če želite izvedeti več -

  1. Linearna regresijska analiza
  2. Linearna regresija v R
  3. Linearno regresijsko modeliranje
  4. Orodja za testiranje regresije
  5. Matplotlib In Python | Najboljših 14 parcel v mestu Matplotlib
  6. Slovar v jeziku Python | Metode in primeri
  7. Primeri kvadratnega korena v PHP
  8. Linearna regresija proti logistični regresiji | Najboljše razlike

Kategorija: