A hangsúly a bemeneti és a kimeneti változók körül forog, algoritmus segítségével megjósolják az eredményt. Ha egy új bemeneti változó kerül a képbe. A lineáris regressziós algoritmus egy felügyelt tanulási technika a térképészeti függvény közelítésére a legjobb előrejelzések érdekében. Ebben a cikkben megismerjük a gépi tanulás lineáris regresszióját. A blog a következő témákat tárgyalja.
- Mi a regresszió?
- A regresszió típusai
- Mi a lineáris regresszió?
- Lineáris regressziós terminológiák
- A lineáris regresszió előnyei és hátrányai
- Lineáris regressziós felhasználási esetek
- Felhasználási eset - Lineáris regresszió megvalósítása
Mi a regresszió?
A regresszió fő célja egy hatékony modell felépítése, amely egy függvényváltozó halmazából jósolja meg a függő tulajdonságokat. Regressziós probléma az, amikor a kimeneti változó valós vagy folyamatos érték, azaz fizetés, súly, terület stb.
A regressziót statisztikai eszközként is meghatározhatjuk, amelyet olyan alkalmazásokban használnak, mint például a lakhatás, a befektetés stb. Ezt használják egy függő változó és egy halom független változó közötti kapcsolat előrejelzésére. Vessünk egy pillantást a regressziós technikák különféle típusaira.
A regresszió típusai
A következők a regresszió típusai.
- Egyszerű lineáris regresszió
- Polinomiális regresszió
- Támogatja a vektor regressziót
- Döntésfa regresszió
- Véletlen erdő regresszió
Egyszerű lineáris regresszió
Az egyik legérdekesebb és legelterjedtebb regressziós technika az egyszerű lineáris regresszió. Ebben egy független változó kimenetelét jósoljuk meg a független változók alapján, a változók közötti kapcsolat lineáris. Ezért a lineáris regresszió szó.
Polinomiális regresszió
Ebben a regressziós technikában az eredeti jellemzőket átalakítjuk egy adott fokú polinom jellemzőkké, majd regressziót hajtunk végre rajta.
Támogatja a vektor regressziót
Mert regresszió vagy SVR esetén egy olyan hipersíkot azonosítunk maximális margóval, hogy az adatpontok maximális száma ezeken a margókon belül legyen. Egészen hasonlít a támogató vektor géposztályozási algoritmusához.
Döntésfa regresszió
NAK NEK regresszióra és . Regresszió esetén az ID3 algoritmust (Iterative Dichotomiser 3) használjuk a hasító csomópont azonosítására a szórás csökkentésével.
java mit csinál a függelék
Véletlen erdő regresszió
Véletlenszerű erdőregresszióban összesítjük több döntésfa regresszió előrejelzését. Most, hogy tudunk a regresszió különféle típusairól, vessünk egy pillantást az egyszerű lineáris regresszióra.
Mi a lineáris regresszió?
Az egyszerű lineáris regresszió olyan regressziós technika, amelyben a független változó lineáris kapcsolatban áll a függő változóval. Az ábrán látható egyenes a legjobban illeszkedő vonal. Az egyszerű lineáris regresszió fő célja az adott adatpontok figyelembe vétele és a legjobban illeszkedő vonal ábrázolása a modellhez a lehető legjobb módon.
Mielőtt továbblépnénk a lineáris regressziós algoritmus működésére, vessünk egy pillantást néhány egyszerű terminusra az egyszerű lineáris regresszióban.
Lineáris regressziós terminológiák
A következő terminológiákat fontos ismerni, mielőtt továbblépnénk a lineáris regressziós algoritmusra.
Költségfunkció
A legjobban illeszkedő vonal az alább megadott lineáris egyenleten alapulhat.
- A megjósolni kívánt függő változót Y jelöli.
- Az y tengelyt érintő vonalat a b metszéspont jelöli0.
- begya vonal meredeksége, x az Y predikcióját meghatározó független változókat jelöli.
- A kapott predikció hibáját e-vel jelöljük.
A költségfüggvény a lehető legjobb értékeket adja b-hez0és begyhogy a legjobban illeszkedjen az adatpontok vonalához. Úgy tesszük, hogy ezt a problémát minimalizálási problémává alakítjuk, hogy a b legjobb értékeit kapjuk0és begy. A hiba minimálisra csökken ebben a problémában a tényleges és az előrejelzett érték között.
A fenti funkciót választjuk a hiba minimalizálása érdekében. Négyzetbe vesszük a hibakülönbséget, és összesítjük a hibát az összes adatpontra, az összes adatpont elosztására. Ezután az előállított érték adja az összes adatpont átlagolt négyzet hibáját.
MSE (Mean Squared Error) néven is ismert, és megváltoztatjuk b értékeit0és begyhogy az MSE értéke a minimumon legyen elszámolva.
Színátmenet süllyedés
A következő fontos terminológia a lineáris regresszió megértéséhez az gradiens ereszkedés. Ez egy módszer a b frissítésére0és begyértékek az MSE csökkentésére. Ennek az az ötlete, hogy folyamatosan ismételjük a b-t0és begyértékeket, amíg az MSE-t a minimumra nem csökkentjük.
Frissítés b0és begy, gradienseket veszünk a költségfüggvényből. Ezen gradiensek megtalálásához részleges deriváltakat veszünk a b vonatkozásában0és begy. Ezek a parciális derivátumok a gradiensek, és a b értékeinek frissítésére szolgálnak0és begy.
A kisebb tanulási arány közelebb kerül a minimumhoz, de több időbe telik, és nagyobb tanulási arány esetén. Az idő hamarabb megtörténik, de van esély a minimális érték túllépésére. Most, hogy átértünk a lineáris regresszió terminológiáival, vessünk egy pillantást a lineáris regresszió néhány előnyére és hátrányára a gépi tanulás szempontjából.
Előnyök és hátrányok
Előnyök | Hátrányok |
A lineáris regresszió kivételesen jól teljesít lineárisan elválasztható adatoknál | A függőségi és független változók közötti linearitás feltételezése |
Könnyebb megvalósítani, értelmezni és hatékonyan képezni | Gyakran meglehetősen hajlamos a zajra és a túlfeszültségre |
Dimenzionális csökkentési technikákkal, szabályozással és keresztellenőrzéssel elég jól kezeli az illesztést | A lineáris regresszió meglehetősen érzékeny a kiugró értékekre |
További előny az extrapoláció egy adott adathalmazon túl | Hajlamos a multikollinearitásra |
Lineáris regressziós felhasználási esetek
Értékesítés előrejelzése
Kockázatelemzés
Lakásalkalmazások az árak és egyéb tényezők kiszámításához
c ++ tömbök rendezése
Pénzügyi alkalmazások tőzsdei árfolyamok, befektetési értékelések stb.
A lineáris regresszió alapgondolata a függő és a független változók közötti kapcsolat megtalálása. A legjobb illeszkedési vonal megszerzésére szolgál, amely a legkevesebb hibával jósolja az eredményt. Lineáris regressziót használhatunk egyszerű valós élethelyzetekben, például a SAT-pontszámok előrejelzésére a tanulmányi órák számára és más döntő tényezőkre tekintettel.
Ezt szem előtt tartva vessünk egy pillantást egy használati esetre.
Felhasználási eset - Lineáris regresszió megvalósítása
A folyamat a következő lépésekben zajlik:
- Az adatok betöltése
- Az adatok feltárása
- Az adatok szeletelése
- Vonat és megosztott adatok
- Generálja a modellt
- Értékelje a pontosságot
Vizsgáljuk meg a lineáris regresszió megvalósításának egyes lépéseit.
1. Az adatok betöltése
Kezdhetjük az alap cukorbetegség adatsorral, amely már szerepel a sklearn (scikit-learn) adatkészlet modulban, hogy lineáris regresszióval kezdjük az utunkat.
a sklearn import adatkészleteiből betegség = datasets.load_diabetes () print (betegség)
Kimenet:
2. Az adatok feltárása
Miután befejeztük az adatok betöltését, elkezdhetjük a feltárást a címkék egyszerű ellenőrzésével a következő kód használatával.
hogyan kell telepíteni a napfogyatkozást ide
nyomtatás (betegség.kulcsok ())
Kimenet:
A fenti kód megadja az adatsor összes címkéjét, ezt követően szeletelhetjük az adatokat úgy, hogy végül a vonalat ábrázolhassuk. Az összes adatpontot is felhasználjuk, egyelőre a 2. oszlopot szeleteljük az adatokból.
importálja a számot, mint np betegség_X = betegség.adatok [:, np.newaxis, 2] nyomtatás (betegség_X)
Kimenet:
Ezt a lépést követően felosztjuk az adatokat vonatra és tesztkészletre.
3. Az adatok felosztása
betegség_X_train = betegség_X [: - 30] betegség_X_teszt = betegség_X [-20:] betegség_Y_vonat = betegség.cél [: - 30] betegség_Y_teszt = betegség.cél [-20:]
A következő rész a modell előállítását foglalja magában, amely magában foglalja a linear_model importálását a sklearn-ből.
4. A modell generálása
a sklearn importból line_model reg = linear_model.LinearRegression () reg.fit (betegség_X_train, betegség_Y_vonat) y_predict = reg.predict (betegség_X_teszt)
A modell pontosságának értékeléséhez a scikit-learn átlag négyzethibáját használjuk.
5. Értékelés
pontosság = átlagos_négyzet_hiba (betegség_Y_teszt, y_predict,) nyomtatás (pontosság) súlyok = reg.coef_ intercept = reg.intercept_ print (súlyok, intercept)
Kimenet:
Annak tisztázása érdekében, hogy az adatpontok hogyan néznek ki a grafikonon, ábrázoljuk a grafikonokat is.
import matplotlib.pyplot plt plt.scatter (betegség_X_teszt, betegség_Y_teszt) plt.plot (betegség_X_teszt, y_predict) plt.show ()
Kimenet:
Pontosabb modell megszerzéséhez ebben a forgatókönyvben a teljes adatot felhasználhatjuk a 2. oszlop helyett. Ez pontosságot adna az alábbiak szerint:
#csináljon egy kis változtatást a fenti kódban, és távolítsa el az ábrázolási kódot, hogy elkerülje a betegség_X = betegség.adatok hibákat
Kimenet:
Ezzel eljutottunk a cikk végéhez, ahol megismertük a gépi tanulás lineáris regresszióját. Remélem, tisztában van azzal, amit megosztott veled ebben az oktatóanyagban.
Ha relevánsnak találta ezt a cikket a „Lineáris regresszió a gépi tanuláshoz” témában, nézze meg a egy megbízható online tanulási vállalat, amelynek több mint 250 000 elégedett tanulóból álló hálózata van az egész világon.
Ha bármilyen kérdése merülne fel, nyugodtan tegye fel minden kérdését a „Lineáris regresszió a gépi tanuláshoz” megjegyzés rovatban, és csapatunk örömmel válaszol.