Kā ieviest lineāro regresiju mašīnmācībai?



Šis raksts aptver mašīnmācīšanās lineārās regresijas jēdzienu ar dažādām terminoloģijām un izmantošanas gadījumu lineārās regresijas ieviešanai.

Uzmanības centrā griežas ap ievades un izvades mainīgajiem, izmantojot algoritmu, lai prognozētu rezultātu. Ja attēlā parādās jauns ievades mainīgais. Lineārās regresijas algoritms ir uzraudzīta mācību tehnika, lai tuvinātu kartēšanas funkciju, lai iegūtu vislabākās prognozes. Šajā rakstā mēs uzzināsim par lineāru regresiju mašīnmācībai. Šajā emuārā ir apskatītas šādas tēmas.

Kas ir regresija?

Galvenais regresijas mērķis ir efektīva modeļa izveidošana, lai prognozētu atkarīgos atribūtus no virknes atribūtu mainīgo. Regresijas problēma ir tad, ja izejas mainīgais ir vai nu reāls, vai nepārtraukta vērtība, ti, alga, svars, laukums utt.





Regresiju mēs varam definēt arī kā statistikas līdzekli, ko izmanto tādās lietojumprogrammās kā mājoklis, ieguldījumi utt. To izmanto, lai prognozētu saistību starp atkarīgo mainīgo un virkni neatkarīgo mainīgo. Apskatīsim dažādus regresijas paņēmienu veidus.

lineāras regresijas piemērs mašīnmācībā - edureka

Regresijas veidi

Šie ir regresijas veidi.



  1. Vienkārša lineārā regresija
  2. Polinoma regresija
  3. Atbalsta vektoru regresiju
  4. Lēmumu koku regresija
  5. Nejauša meža regresija

Vienkārša lineārā regresija

Viena no interesantākajām un izplatītākajām regresijas metodēm ir vienkārša lineārā regresija. Tajā mēs prognozējam atkarīgā mainīgā iznākumu, pamatojoties uz neatkarīgiem mainīgajiem, saistība starp mainīgajiem ir lineāra. Tādējādi vārds lineārā regresija.

Polinoma regresija

Šajā regresijas paņēmienā mēs pārveidojam sākotnējās pazīmes par noteikta pakāpes polinoma pazīmēm un pēc tam veicam tās regresiju.

Atbalsta vektoru regresiju

Priekš regresijas vai SVR gadījumā mēs identificējam hiperplakni ar maksimālo rezervi tā, lai maksimālais datu punktu skaits būtu šajās robežās. Tas ir diezgan līdzīgs atbalsta vektoru mašīnu klasifikācijas algoritmam.



Lēmumu koku regresija

TO var izmantot gan regresijai, gan . Regresijas gadījumā mēs izmantojam ID3 algoritmu (Iterative Dichotomiser 3), lai identificētu sadalošo mezglu, samazinot standartnovirzi.

Nejauša meža regresija

Nejaušā meža regresijā mēs apkopojam vairāku lēmumu koku regresiju prognozes. Tagad, kad mēs zinām par dažādiem regresijas veidiem, sīki apskatīsim vienkāršo lineāro regresiju.

Kas ir lineārā regresija?

Vienkāršā lineārā regresija ir regresijas paņēmiens, kurā neatkarīgajam mainīgajam ir lineāra saistība ar atkarīgo mainīgo. Diagrammā taisnā līnija ir vislabāk piemērota. Vienkāršās lineārās regresijas galvenais mērķis ir apsvērt dotos datu punktus un uzzīmēt vislabāko atbilstības līniju, lai tā vislabāk atbilstu modelim.

Pirms pāriet uz lineārās regresijas algoritma darbību, apskatīsim dažas svarīgas terminoloģijas vienkāršā lineārajā regresijā.

Lineārās regresijas terminoloģijas

Pirms pārejas uz lineārās regresijas algoritmu ir svarīgi zināt šādas terminoloģijas.

Izmaksu funkcija

Vislabāko atbilstības līniju var balstīt uz zemāk sniegto lineāro vienādojumu.

  • Prognozējamo atkarīgo mainīgo apzīmē ar Y.
  • Līniju, kas skar y asi, apzīmē ar pārtverto b0.
  • bviensir līnijas slīpums, x apzīmē neatkarīgos mainīgos, kas nosaka Y prognozi.
  • Kļūda rezultātajā prognozē tiek apzīmēta ar e.

Izmaksu funkcija nodrošina labākās iespējamās b vērtības0un bvienslai datu punktiem būtu vispiemērotākā līnija. Mēs to darām, pārveidojot šo problēmu par minimizācijas problēmu, lai iegūtu labākās b vērtības0un bviens. Šajā problēmā tiek samazināta kļūda starp faktisko vērtību un paredzamo vērtību.

ir maģistra grāds, kas tiek uzskatīts par pēcdiploma izglītību

Mēs izvēlamies funkciju iepriekš, lai samazinātu kļūdu. Mēs noapaļojam kļūdu starpību un summējam kļūdu visos datu punktos, dalījumu starp kopējo datu punktu skaitu. Tad iegūtā vērtība nodrošina vidējo kvadrāta kļūdu visos datu punktos.

To sauc arī par MSE (Mean Squared Error), un mēs mainām b vērtības0un bvienstā, lai MSE vērtība tiktu nokārtota līdz minimumam.

Gradientu nolaišanās

Nākamā svarīgā terminoloģija, lai izprastu lineāro regresiju, ir gradienta nolaišanās. Tā ir b atjaunināšanas metode0un bviensvērtības, lai samazinātu MSE. Ideja tam ir turpināt atkārtot b0un bviensvērtības, līdz mēs samazinām MSE līdz minimumam.

Lai atjauninātu b0un bviens, mēs ņemam gradientus no izmaksu funkcijas. Lai atrastu šos gradientus, mēs ņemam daļējus atvasinājumus attiecībā pret b0un bviens. Šie daļējie atvasinājumi ir gradienti, un tos izmanto, lai atjauninātu b vērtības0un bviens.

Mazāks mācīšanās ātrums ir tuvāks minimumam, bet tas prasa vairāk laika un lielāka mācīšanās ātruma gadījumā. Izmantotais laiks ir ātrāks, bet ir iespēja pārsniegt minimālo vērtību. Tagad, kad mēs esam pārdzīvojuši lineārās regresijas terminoloģiju, apskatīsim dažas lineārās regresijas priekšrocības un trūkumus mašīnmācībai.

Priekšrocības un trūkumi

Priekšrocības Trūkumi
Lineārā regresija darbojas ārkārtīgi labi lineāri atdalāmiem datiemPieņēmums par linearitāti starp atkarīgajiem un neatkarīgajiem mainīgajiem
Vieglāk ieviest, interpretēt un efektīvi apmācītBieži vien tas ir diezgan pakļauts troksnim un pārspīlēšanai
Tas diezgan labi tiek galā ar pārspīlēšanu, izmantojot izmēru samazināšanas paņēmienus, regulēšanu un savstarpēju apstiprināšanuLineārā regresija ir diezgan jutīga pret ārējiem rādītājiem
Vēl viena priekšrocība ir ekstrapolācija ārpus konkrētas datu kopasTas ir pakļauts multikolinearitātei

Lineārās regresijas lietošanas gadījumi

  • Pārdošanas prognozēšana

  • Riska analīze

  • Mājokļu pieteikumi, lai prognozētu cenas un citus faktorus

  • Finanšu lietojumi, lai prognozētu akciju cenas, ieguldījumu novērtēšanu utt.

Lineārās regresijas pamatideja ir atrast saistību starp atkarīgajiem un neatkarīgajiem mainīgajiem. To izmanto, lai iegūtu vislabāko montāžas līniju, kas paredzētu rezultātu ar vismazāko kļūdu. Mēs varam izmantot lineāro regresiju vienkāršās reālās dzīves situācijās, piemēram, paredzot SAT rādītājus attiecībā uz mācību stundu skaitu un citiem izšķirošajiem faktoriem.

Paturot to prātā, apskatīsim lietošanas gadījumu.

Izmantošanas gadījums - lineārās regresijas ieviešana

Process notiek šādās darbībās:

  1. Notiek datu ielāde
  2. Datu izpēte
  3. Datu sagriešana
  4. Vilciena un sadalījuma dati
  5. Ģenerēt modeli
  6. Novērtējiet precizitāti

Ļaujiet mums iedziļināties detaļās par katru soli, lai īstenotu lineāro regresiju.

1. Datu ielāde

Mēs varam sākt ar pamata diabēta datu kopu, kas jau atrodas sklearn (scikit-learn) datu kopu modulī, lai sāktu savu ceļu ar lineāru regresiju.

no sklearn importa datu kopām slimība = datasets.load_diabetes () print (slimība)

Izeja:

2. Datu izpēte

Pēc datu ielādes mēs varam sākt izpētīt, vienkārši pārbaudot etiķetes, izmantojot šo kodu.

drukāt (slimības.atslēgas ())

Izeja:

Iepriekš minētais kods dod visas etiķetes no datu kopas, pēc tam mēs varam sagriezt datus tā, lai galu galā varētu uzzīmēt līniju. Mēs izmantosim arī visus datu punktus, pagaidām mēs sadalīsim 2. sleju no datiem.

importēt numpy kā np slimība_X = slimības.dati [:, np.newaxis, 2] drukāt (slimība_X)

Izeja:

Pēc šī soļa mēs sadalīsim datus vilcienos un testu komplektā.

3. Datu sadalīšana

disease_X_train = slimības_X [: - 30] slimības_X_test = slimības_X [-20:] slimības_Y_trena = slimības.mērķis [: - 30] slimības_Y_test = slimības.mērķis [-20:]

Nākamā daļa ietver modeļa ģenerēšanu, kas ietver line_model importēšanu no sklearn.

4. Modeļa ģenerēšana

no sklearn importa lineārs_modelis reg = lineārs_modelis.LinearRegression () reg.fit (slimības_X_trase, slimības_Y_trase) y_predict = reģ.prognoze (slimības_X_tests)

Lai novērtētu modeļa precizitāti, mēs izmantosim vidējo kvadrāta kļūdu no scikit-learn.

5. Novērtēšana

precizitāte = vidējā_kvadrāta_kļūda (slimības_Y_test, y_predict,) drukas (precizitāte) svari = reg.coef_ intercept = reg.intercept_ print (svari, pārtveršana)

Izeja:

Lai precīzāk uzzinātu, kā datu punkti izskatās diagrammā, uzzīmēsim arī grafikus.

importēt matplotlib.pyplot kā plt plt.scatter (slimības_X_tests, slimības_Y_tests) plt.plot (slimības_X_tests, y_predict) plt.show ()

Izeja:

Lai iegūtu precīzāku modeli šajā scenārijā, mēs varam izmantot visus datus, nevis tikai 2. sleju. Tas sniegtu precizitāti, kā parādīts zemāk:

# veiciet nelielas izmaiņas iepriekš minētajā kodā un noņemiet uzzīmēšanas kodu, lai izvairītos no kļūdām disease_X = disease.data

Izeja:

Tādējādi mēs nonākam līdz šī raksta beigām, kur mēs esam iemācījušies par lineāro regresiju mašīnmācībai. Es ceru, ka jums ir skaidrs viss, kas ar jums ir kopīgots šajā apmācībā.

Ja jums šķita atbilstošs šis raksts par “Lineāro regresiju mašīnmācībai”, pārbaudiet uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē.

Ja rodas kādi jautājumi, droši uzdodiet visus jautājumus komentāru sadaļā “Lineārā regresija mašīnmācībai”, un mūsu komanda ar prieku atbildēs.