Neuroverkko Scikit-learnilla
Neuroverkkojen kanssa työskentely voi olla melko haastavaa, erityisesti jos rakennat niitä alusta alkaen. Sen sijaan, että koodaisit algoritmit ja kaavat itse, voit hyödyntää valmiita työkaluja kuten sklearn-kirjastoa.
sklearnin hyödyt
-
Helppokäyttöisyys: sinun ei tarvitse perehtyä syvällisesti jokaisen algoritmin yksityiskohtiin. Voit käyttää valmiita metodeja ja luokkia;
-
Optimointi:
sklearn-kirjasto on optimoitu suorituskyvyn kannalta, mikä voi lyhentää mallin koulutusaikaa; -
Laaja dokumentaatio:
sklearntarjoaa kattavan dokumentaation esimerkkikäyttöineen, mikä nopeuttaa oppimisprosessia; -
Yhteensopivuus:
sklearntoimii hyvin yhteen muiden suosittujen Python-kirjastojen, kutennumpy,pandasjamatplotlib, kanssa.
Perceptron sklearnissä
Voit luoda saman mallin kuin tässä osiossa käyttämällä MLPClassifier-kirjaston sklearn-luokkaa. Sen keskeiset parametrit ovat seuraavat:
max_iter: määrittää koulutuksen enimmäisepookkien määrän;hidden_layer_sizes: määrittää piilokerrosten neuronien määrän tuplena;learning_rate_init: asettaa oppimisnopeuden painojen päivityksille.
Oletuksena MLPClassifier käyttää ReLU-aktivointifunktiota piilokerroksissa. Binääriluokittelussa tuloskerros on käytännössä sama kuin itse toteuttamassasi mallissa.
Esimerkiksi yhdellä koodirivillä voidaan luoda perceptron, jossa on kaksi piilokerrosta ja kummassakin 10 neuronia, käyttäen enintään 100 epookkia koulutukseen ja oppimisnopeutena 0.5:
from sklearn.neural_network import MLPClassifier
model = MLPClassifier(max_iter=100, hidden_layer_sizes=(10,10), learning_rate_init=0.5)
Neuroverkot sklearn-kirjastossa määrittävät syötteiden ja tulosteiden määrän koulutusdatan perusteella. Niitä ei siis tarvitse asettaa manuaalisesti.
Kuten omassa toteutuksessamme, mallin kouluttaminen tapahtuu yksinkertaisesti kutsumalla fit()-metodia:
model.fit(X_train, y_train)
Ennustettujen luokkien (esim. testijoukossa) saamiseksi tarvitsee vain kutsua predict()-metodia:
y_pred = model.predict(X_test)
Swipe to start coding
Tavoitteena on luoda, kouluttaa ja arvioida perceptroni, jonka rakenne on sama kuin aiemmin toteuttamassasi mallissa, mutta käyttämällä sklearn-kirjastoa:
- Alusta perceptroni, jossa on
100koulutusepookkia, kaksi piilokerrosta, joissa kummassakin on6neuronia, sekä oppimisnopeus0.01(aseta parametrit tässä järjestyksessä). - Kouluta malli opetusaineistolla.
- Hanki ennusteet testiaineistolle.
- Laske mallin tarkkuus testiaineistolla.
Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Can you explain what the `MLPClassifier` is used for?
What do the parameters like `max_iter` and `hidden_layer_sizes` mean in practice?
How do I interpret the results from `model.predict()`?
Awesome!
Completion rate improved to 4
Neuroverkko Scikit-learnilla
Pyyhkäise näyttääksesi valikon
Neuroverkkojen kanssa työskentely voi olla melko haastavaa, erityisesti jos rakennat niitä alusta alkaen. Sen sijaan, että koodaisit algoritmit ja kaavat itse, voit hyödyntää valmiita työkaluja kuten sklearn-kirjastoa.
sklearnin hyödyt
-
Helppokäyttöisyys: sinun ei tarvitse perehtyä syvällisesti jokaisen algoritmin yksityiskohtiin. Voit käyttää valmiita metodeja ja luokkia;
-
Optimointi:
sklearn-kirjasto on optimoitu suorituskyvyn kannalta, mikä voi lyhentää mallin koulutusaikaa; -
Laaja dokumentaatio:
sklearntarjoaa kattavan dokumentaation esimerkkikäyttöineen, mikä nopeuttaa oppimisprosessia; -
Yhteensopivuus:
sklearntoimii hyvin yhteen muiden suosittujen Python-kirjastojen, kutennumpy,pandasjamatplotlib, kanssa.
Perceptron sklearnissä
Voit luoda saman mallin kuin tässä osiossa käyttämällä MLPClassifier-kirjaston sklearn-luokkaa. Sen keskeiset parametrit ovat seuraavat:
max_iter: määrittää koulutuksen enimmäisepookkien määrän;hidden_layer_sizes: määrittää piilokerrosten neuronien määrän tuplena;learning_rate_init: asettaa oppimisnopeuden painojen päivityksille.
Oletuksena MLPClassifier käyttää ReLU-aktivointifunktiota piilokerroksissa. Binääriluokittelussa tuloskerros on käytännössä sama kuin itse toteuttamassasi mallissa.
Esimerkiksi yhdellä koodirivillä voidaan luoda perceptron, jossa on kaksi piilokerrosta ja kummassakin 10 neuronia, käyttäen enintään 100 epookkia koulutukseen ja oppimisnopeutena 0.5:
from sklearn.neural_network import MLPClassifier
model = MLPClassifier(max_iter=100, hidden_layer_sizes=(10,10), learning_rate_init=0.5)
Neuroverkot sklearn-kirjastossa määrittävät syötteiden ja tulosteiden määrän koulutusdatan perusteella. Niitä ei siis tarvitse asettaa manuaalisesti.
Kuten omassa toteutuksessamme, mallin kouluttaminen tapahtuu yksinkertaisesti kutsumalla fit()-metodia:
model.fit(X_train, y_train)
Ennustettujen luokkien (esim. testijoukossa) saamiseksi tarvitsee vain kutsua predict()-metodia:
y_pred = model.predict(X_test)
Swipe to start coding
Tavoitteena on luoda, kouluttaa ja arvioida perceptroni, jonka rakenne on sama kuin aiemmin toteuttamassasi mallissa, mutta käyttämällä sklearn-kirjastoa:
- Alusta perceptroni, jossa on
100koulutusepookkia, kaksi piilokerrosta, joissa kummassakin on6neuronia, sekä oppimisnopeus0.01(aseta parametrit tässä järjestyksessä). - Kouluta malli opetusaineistolla.
- Hanki ennusteet testiaineistolle.
- Laske mallin tarkkuus testiaineistolla.
Ratkaisu
Kiitos palautteestasi!
single