Kuinka käyttää mittareita syvälliseen oppimiseen Kerasin kanssa Pythonissa

Kuinka käyttää mittareita syvälliseen oppimiseen Kerasin kanssa Pythonissa

Keras-kirjasto tarjoaa tavan laskea vakiomittaustiedot ja raportoida niistä, kun koulutetaan syvällisiä oppimismalleja.

Sen lisäksi, että Keras tarjoaa vakiomittareita luokitteluun ja regressio-ongelmiin, Keras antaa sinun määrittää ja raportoida omat mittarit myös syvällisten oppimismallien koulutuksessa. Tämä on erityisen hyödyllistä, jos haluat seurata suorituskykymittaria, joka tarttuu paremmin mallisi taitoon harjoittelun aikana.

Tässä opetusohjelmassa opit käyttämään sisäänrakennettuja mittareita ja määrittämään ja käyttämään omia mittareitasi syvällisen oppimisen mallien koulutuksessa Kerasissa.

Tämän opetusohjelman suorittamisen jälkeen tiedät:

  • Kuinka Keras-mittarit toimivat ja miten voit käyttää niitä malliesi kouluttamiseen.
  • Kuinka käyttää regressio- ja luokittelumittareita Kerasissa yhdessä toimivien esimerkkien kanssa.
  • Kuinka määritellä ja käyttää oma mukautettu tieto Kerasissa toimivalla esimerkillä.

Käynnistä projekti uudella kirjallani Deep Learning With Python, mukaan lukien vaiheittaiset oppaat ja Python-lähdekoodi tiedostot kaikille esimerkeille.

Aloitetaan.

  • Päivitä tammikuu / 2020: Päivitetty sovellusliittymä Keras 2.3: lle ja TensorFlow 2.0: lle.
Mittarit ja kuinka käyttää mukautettuja mittareita syvälliseen oppimiseen Kerasin kanssa Pythonissa

Mittarit ja kuinka käyttää mukautettuja mittareita syvälliseen oppimiseen Kerasin kanssa Pythonissa
Kuva: Indi Samarajiva, joitain oikeuksia pidätetään.

Opetusohjelman yleiskatsaus

Tämä opetusohjelma on jaettu 4 osaan; he ovat:

  1. Keras Metrics
  2. Keras regressiomittari
  3. Keras-luokitustiedot
  4. Mukautetut mittarit Kerasissa

Keras Metrics

Keras antaa sinun luetella mittarit, joita seurataan mallisi harjoittelun aikana.

Voit tehdä tämän määrittämällämittarit”-Argumentti ja luettelo funktioiden nimistä (tai funktionimien aliaksista) koota() toiminto mallissasi.

Esimerkiksi:

Luettelemasi erityiset mittarit voivat olla Keras-funktioiden nimiä (kuten mean_squared_error) tai merkkijonojen aliakset kyseisille funktioille (kutenmse').

Metriset arvot kirjataan jokaisen aikakauden loppuun harjoitusaineistoon. Jos toimitetaan myös validointiaineisto, kirjattu metri lasketaan myös validointitietojoukolle.

Kaikki mittarit raportoidaan yksityiskohtaisina tuotoksina ja historiaobjektissa, joka palautetaan kutsusta sovi () toiminto. Molemmissa tapauksissa metrisen funktion nimeä käytetään avain metriarvoihin. Validointitietojoukon mittareiden kohdalla "val_”Etuliite lisätään avaimeen.

Sekä menetystoimintoja että erikseen määriteltyjä Keras-mittareita voidaan käyttää harjoittelumittareina.

Keras regressiomittari

Alla on luettelo mittareista, joita voit käyttää Kerasissa regressio-ongelmiin.

  • Keskimääräinen neliövirhe: mean_squared_error, MSE tai mse
  • Keskimääräinen absoluuttinen virhe: mean_absolute_error, MAE, mae
  • Keskimääräinen absoluuttinen prosenttivirhe: mean_absolute_percentage_error, MAPE, mape
  • Kosinin läheisyys: kosini_läheisyys, kosini

Alla oleva esimerkki osoittaa nämä 4 sisäänrakennettua regressiomittaria yksinkertaisesta keksitystä regressio-ongelmasta.

Huomautus: Tuloksesi voivat vaihdella ottaen huomioon algoritmin tai arviointimenettelyn stokastisen luonteen tai numeerisen tarkkuuden erot. Harkitse esimerkin käyttämistä muutaman kerran ja vertaa keskimääräistä tulosta.

Esimerkin suorittaminen tulostaa metriset arvot jokaisen aikakauden loppuun.

Sitten luodaan viivakaavio 4-mittareista harjoitusjaksojen yli.

Sisäänrakennettujen Keras-mittareiden viivakaavio regressiota varten

Sisäänrakennettujen Keras-mittareiden viivakaavio regressiota varten

Huomaa, että mittarit määritettiin käyttämällä merkkijonon aliaksen arvoja [‘mse‘, ‘mae‘, ‘mape‘, ‘cosine‘] ja niihin viitattiin historiaobjektin avainarvoina käyttämällä niiden laajennettua funktion nimeä.

Voimme myös määrittää mittarit niiden laajennetulla nimellä seuraavasti:

Voimme myös määrittää funktioiden nimet suoraan, jos ne tuodaan komentosarjaan.

Voit myös käyttää menetystoimintoja mittareina.

Voit esimerkiksi käyttää keskimääräisen neliön logaritmivirhettä (mean_squared_logarithmic_error, MSLE tai msle) menetystoiminto metrisenä seuraavasti:

Keras-luokitustiedot

Alla on luettelo mittareista, joita voit käyttää Kerasissa luokitusongelmiin.

  • Binaarinen tarkkuus: binaaritarkkuus, tark
  • Kategorinen tarkkuus: kategorinen_tarkkuus, acc
  • Harvat kategoriset tarkkuudet: harva_luokan_tarkkuus
  • Ylin k kategorinen tarkkuus: top_k_categorical_accuracy (edellyttää, että määrität ak-parametrin)
  • Harvinaisen k kategorisen tarkkuuden: sparse_top_k_categorical_accuracy (edellyttää, että määrität ak-parametrin)

Tarkkuus on erityinen.

Riippumatta siitä, onko ongelma binäärinen vai moniluokkainen luokitusongelma, voit määrittäätarkkuus'mittari tarkkuuden raportoimiseksi.

Alla on esimerkki binääriluokitteluongelmasta sisäänrakennetulla tarkkuusmittarilla.

Huomautus: Tuloksesi voivat vaihdella ottaen huomioon algoritmin tai arviointimenettelyn stokastisen luonteen tai numeerisen tarkkuuden erot. Harkitse esimerkin käyttämistä muutaman kerran ja vertaa keskimääräistä tulosta.

Esimerkin suorittaminen raportoi tarkkuuden jokaisen harjoitusjakson lopussa.

Luo viivapiirros tarkkuudesta aikakauteen.

Sisäänrakennettujen Keras-mittareiden luokkakaavio

Sisäänrakennettujen Keras-mittareiden luokkakaavio

Mukautetut mittarit Kerasissa

Voit myös määrittää omat muuttujat ja määrittää funktion nimen funktioluetteloonmittarit”-Argumentti soitettaessa koota() toiminto.

Mittari, jota haluan seurata usein, on Root Mean Square Error tai RMSE.

Voit saada käsityksen mukautetun muuttujan kirjoittamisesta tutkimalla olemassa olevan muuttujan koodia.

Esimerkiksi alla on keskimääräisen neliön_virheen menetystoiminnon ja metrisen koodin koodi Kerasissa.

K on Kerasin käyttämä backend.

Tästä esimerkistä ja muista esimerkkeistä menetystoiminnoista ...

Saatat myös olla kiinnostunut