logo

Hyperparametrit koneoppimisessa

Koneoppimisen hyperparametrit ovat parametreja, jotka käyttäjä on erikseen määrittänyt ohjatakseen oppimisprosessia. Näitä hyperparametrejä käytetään parantamaan mallin oppimista ja niiden arvot asetetaan ennen mallin oppimisprosessin aloittamista.

Hyperparametrit koneoppimisessa

Tässä aiheessa keskustelemme yhdestä koneoppimisen tärkeimmistä käsitteistä, eli hyperparametreistä, niiden esimerkkeistä, hyperparametrien virityksestä, hyperparametrien luokista, kuinka hyperparametri eroaa koneoppimisen parametrista? Mutta ennen kuin aloitamme, ymmärrämme ensin hyperparametrin.

Mitä ovat hyperparametrit?

Koneoppimisessa/syväoppimisessa mallia edustavat sen parametrit. Sitä vastoin koulutusprosessissa valitaan parhaat/optimaaliset hyperparametrit, joita oppimisalgoritmit käyttävät parhaan tuloksen saavuttamiseksi. Joten mitä nämä hyperparametrit ovat? Vastaus on, ' Hyperparametrit määritellään parametreiksi, jotka käyttäjä on määritellyt ohjatakseen oppimisprosessia.

Tässä etuliite 'hyper' viittaa siihen, että parametrit ovat huipputason parametreja, joita käytetään oppimisprosessin ohjaamiseen. Koneoppimisinsinööri valitsee ja asettaa hyperparametrin arvon ennen kuin oppimisalgoritmi aloittaa mallin harjoittamisen. Nämä ovat siis mallin ulkopuolisia, eikä niiden arvoja voi muuttaa koulutusprosessin aikana .

java lambda esimerkki

Esimerkkejä koneoppimisen hyperparametreistä

  • K in kNN tai K-lähin naapuri-algoritmi
  • Oppimisnopeus hermoverkon harjoittamiseen
  • Juna-testin jakosuhde
  • Erän koko
  • Aikakausien lukumäärä
  • Haarat päätöspuussa
  • Klusterien lukumäärä klusterialgoritmissa

Ero parametrin ja hyperparametrin välillä?

Parametrien ja hyperparametrien tai mallin hyperparametrien välillä on aina suuri sekaannus. Joten tämän hämmennyksen poistamiseksi ymmärrämme niiden molempien eron ja kuinka ne liittyvät toisiinsa.

Mallin parametrit:

Mallin parametrit ovat mallin sisäisiä konfiguraatiomuuttujia, ja malli oppii ne itse. Esimerkiksi , W Riippumattomien muuttujien painot tai kertoimet lineaarisessa regressiomallissa . tai Riippumattomien muuttujien painot tai kertoimet SVM:ssä, hermoverkon painot ja poikkeamat, klusterin keskipiste klusteroinnissa. Jotkut mallin parametrien keskeiset kohdat ovat seuraavat:

  • Malli käyttää niitä ennusteiden tekemiseen.
  • Malli oppii ne itse tiedoista
  • Näitä ei yleensä aseteta manuaalisesti.
  • Nämä ovat osa mallia ja avain koneoppimisalgoritmiin.

Mallin hyperparametrit:

Hyperparametrit ovat parametreja, jotka käyttäjä on määritellyt ohjatakseen oppimisprosessia. Jotkut mallin parametrien keskeiset kohdat ovat seuraavat:

  • Koneoppimisinsinööri määrittää ne yleensä manuaalisesti.
  • Annetun ongelman hyperparametrien tarkkaa parasta arvoa ei voi tietää. Paras arvo voidaan määrittää joko peukalosääntönä tai yrityksen ja erehdyksen avulla.
  • Joitakin esimerkkejä hyperparametreistä ovat oppimisnopeus neuroverkon koulutuksessa, K KNN-algoritmissa,

Hyperparametrien luokat

Yleisesti hyperparametrit voidaan jakaa kahteen luokkaan, jotka on annettu alla:

    Hyperparametri optimointia varten Hyperparametri tietyille malleille

Hyperparametri optimointia varten

Parhaiden käytettävien hyperparametrien valintaprosessi tunnetaan hyperparametrivirityksenä, ja viritysprosessi tunnetaan myös hyperparametrien optimoinnina. Optimointiparametreja käytetään mallin optimointiin.

Hyperparametrit koneoppimisessa

Alla on joitain suosittuja optimointiparametreja:

    Oppimisaste:Oppimisnopeus on optimointialgoritmien hyperparametri, joka ohjaa kuinka paljon mallin täytyy muuttua vastauksena arvioituun virheeseen joka kerta, kun mallin painot päivitetään. Se on yksi tärkeimmistä parametreista hermoverkkoa rakennettaessa, ja se myös määrittää ristiintarkistuksen tiheyden malliparametrien kanssa. Optimoidun oppimisnopeuden valitseminen on haastava tehtävä, koska jos oppimisnopeus on hyvin pienempi, se voi hidastaa harjoitusprosessia. Toisaalta, jos oppimisnopeus on liian suuri, se ei ehkä optimoi mallia kunnolla.

Huomaa: Oppimisnopeus on ratkaiseva hyperparametri mallin optimoinnissa, joten jos vain yksi hyperparametri on viritettävä, on suositeltavaa virittää oppimisnopeus.

    Erän koko:Oppimisprosessin nopeuttamiseksi koulutussarja on jaettu eri osajoukkoihin, jotka tunnetaan eränä. Aikakausien lukumäärä: Epookki voidaan määritellä täydelliseksi koneoppimismallin koulutuksen sykliksi. Epoch edustaa iteratiivista oppimisprosessia. Epookkien määrä vaihtelee malleittain, ja erilaisia ​​malleja luodaan useammalla kuin yhdellä aikakaudella. Oikean aikakausien määrän määrittämiseksi otetaan huomioon validointivirhe. Epookkien määrää lisätään, kunnes validointivirhe vähenee. Jos pelkistysvirhe ei parane peräkkäisten aikakausien aikana, se tarkoittaa, että aikakausien määrän lisääminen lopetetaan.

Hyperparametri tietyille malleille

Mallin rakenteeseen liittyvät hyperparametrit tunnetaan tiettyjen mallien hyperparametreinä. Nämä on annettu alla:

    Useita piilotettuja yksiköitä:Piilotetut yksiköt ovat osa neuroverkkoja, jotka viittaavat komponentteihin, jotka muodostavat prosessorikerrokset hermoverkon tulo- ja lähtöyksiköiden välillä.

On tärkeää määrittää neuroverkon piilotettujen yksiköiden hyperparametrin määrä. Sen tulisi olla syöttökerroksen koon ja tulostuskerroksen koon välillä. Tarkemmin sanottuna piilotettujen yksiköiden lukumäärän tulisi olla 2/3 syöttökerroksen koosta plus tulostuskerroksen koosta.

Monimutkaisia ​​toimintoja varten on tarpeen määrittää piilotettujen yksiköiden määrä, mutta se ei saa ylittää mallia.

    Kerrosten lukumäärä:Neuraaliverkko koostuu pystysuoraan järjestetyistä komponenteista, joita kutsutaan kerroksiksi. Niitä on pääasiassa syöttötasot, piilotetut tasot ja tulosteet . 3-kerroksinen hermoverkko tarjoaa paremman suorituskyvyn kuin 2-kerroksinen verkko. Konvoluutiohermoverkossa suurempi määrä kerroksia tekee paremman mallin.

Johtopäätös

Hyperparametrit ovat parametreja, jotka on nimenomaisesti määritelty ohjaamaan oppimisprosessia ennen koneoppimisalgoritmin soveltamista tietojoukkoon. Niitä käytetään mallin oppimiskyvyn ja monimutkaisuuden määrittämiseen. Joitakin hyperparametrejä käytetään mallien optimointiin, kuten eräkoko, oppimisnopeus jne., ja jotkut ovat mallikohtaisia, kuten piilotettujen kerrosten määrä jne.