Education, study and knowledge

Syvät neuroverkot: mitä ne ovat ja miten ne toimivat

Syvät neuroverkot ovat käsite, joka muodostaa pääasiallisen syväoppimismalleissa käytetyn teknologisen arkkitehtuurin. Näitä rakenteita ei voida ymmärtää ymmärtämättä yleistä ideaa keinotekoisista hermoverkkoista, jotka ovat tekoälyn perusta.

Neuroverkkoja käytetään tuhanteen asiaan: rekisterikilpien, kappaleiden, kasvojen, äänien tai jopa keittiömme hedelmien tunnistamiseen. Ne ovat erityisen hyödyllinen tekniikka, ja huolimatta siitä, että ne ovat vasta äskettäin tulleet käytännöllisiksi, ne ovat ihmiskunnan tulevaisuus.

Seuraava Aiomme nähdä perusteellisesti idean keinotekoisista hermoverkkoista ja syvältä, ymmärtämään, kuinka ne toimivat, miten heitä koulutetaan ja kuinka ne muodostavien eri hermosolujen väliset vuorovaikutukset tapahtuvat.

  • Aiheeseen liittyvä artikkeli: "Mitä on kognitiotiede? Sen perusideat ja kehitysvaiheet"

Mitä ovat syvät neuroverkot ja mikä niille on ominaista?

Syvät neuroverkot ovat yksi tärkeimmistä Deep Learningissä tai Deep Learningissä käytetyistä teknologisista arkkitehtuureista

instagram story viewer
. Nämä tietyt keinotekoiset verkostot ovat kasvaneet huimaavasti viime vuosina, koska ne muodostavat perustavanlaatuisen näkökohdan kaikenlaisten kuvioiden tunnistamisessa. Tekoäly on olemassa näiden verkkojen toiminnan ansiosta Pohjimmiltaan niistä tulee kopio aivomme toiminnasta, vaikkakin teknologisessa ja matematiikka.

Ennen kuin mennään syvemmälle syvälle hermoverkoille, meidän on ensin ymmärrettävä, miten keinotekoiset hermoverkot yleensä toimivat ja mihin ne on tarkoitettu. Lneuroverkot ovat "koneoppimisen" haara, jolla on ollut valtava vaikutus viime vuosina, auttaa ohjelmoijia ja tietojenkäsittelytieteilijöitä rakentamaan asioita, kuten chatbotteja, jotka heidän kanssaan puhuessamme saavat meidät ajattelemaan, että puhumme oikeiden ihmisten kanssa.

Keinotekoisia hermoverkkoja on käytetty myös itseajavissa autoissa, mobiilisovelluksia, jotka tunnistavat kasvomme ja muuttavat ne haluamiksemme ja paljon muuta toimintoja. Sen sovellettavuus on erittäin laaja, ja se toimii nykyaikaisen tekoälyn perustana ja sillä on loputtomasti hyödyllisiä käyttötarkoituksia jokapäiväisessä elämässämme.

keinotekoiset neuroverkot

Kuvittelemme, että olemme keittiössämme ja päätämme etsiä appelsiinia, hyvin yksinkertainen tehtävä.. Tiedämme kuinka tunnistaa appelsiini erittäin helposti, ja osaamme myös erottaa sen muista keittiössä olevista hedelmistä, kuten banaaneista, omenoista ja päärynöistä. Kuten? Koska aivoissamme olemme hyvin omaksuneet appelsiinin tyypilliset ominaisuudet: sen sen koko, muoto, väri, miltä se tuoksuu... Nämä ovat kaikki parametrit, joita käytämme etsiessämme oranssi.

Se on yksinkertainen tehtävä ihmisille, mutta... Voiko tietokone myös tehdä sen? Vastaus on kyllä. Periaatteessa riittäisi, että määritellään samat parametrit ja annetaan arvo solmulle tai jollekin, jota voisi kutsua "keinotekoiseksi neuroniksi". Kertoisimme tälle neuronille, millaisia ​​appelsiinit ovat, ilmoittamalla niiden koon, painon, muodon, värin tai minkä tahansa muun parametrin, jonka annamme tälle hedelmälle. Näiden tietojen perusteella hermosolun odotetaan osaavan tunnistaa oranssin, kun sille esitetään sellainen.

Jos olemme valinneet parametrit hyvin, sinun on helppo erottaa appelsiinit muista kuin appelsiineista yksinkertaisesti ottamalla nämä ominaisuudet huomioon. Kun hermosolulle esitetään kuva mistä tahansa hedelmästä, se etsii ominaisuuksia liittyy oranssiin ja päätä, sisällytetäänkö se luokkaan "oranssi" vai luokkaan "muu". hedelmä". Tilastollisesti se tarkoittaisi sellaisen alueen löytämistä parametrikaaviosta, joka vastaa olemista etsimässä aluetta, joka kattaisi kaikki hedelmäpalat, joilla on sama koko, muoto, väri, paino ja tuoksu kuin appelsiinit.

Aluksi tämä kaikki kuulostaa erittäin helpolta koodata, ja itse asiassa se on sitä. Se toimii erittäin hyvin erottamaan appelsiinin banaanista tai omenasta, koska niillä on eri värit ja muodot. Mutta entä jos tarjoamme sinulle greipin? ja iso mandariini? Ne ovat hedelmiä, jotka voidaan täydellisesti sekoittaa appelsiineihin. Pystyykö keinotekoinen neuroni erottamaan appelsiinit ja greipit toisistaan? Vastaus on ei, ja itse asiassa niiden luultavasti ajatellaan olevan sama.

Ongelma, kun käytetään vain yhtä keinotekoisten hermosolujen kerrosta, tai mikä on sama, käyttämällä ensin yksinkertaisia ​​hermosoluja, on se, että luoda erittäin epätarkkoja päätösrajoja, kun sinulle esitetään jotain, jolla on monia yhteisiä ominaisuuksia sen kanssa, mitä sinun pitäisi pystyä tunnistamaan, mutta todellisuudessa se ei ole. Jos esittelemme jotain, joka näyttää appelsiinilta, kuten greippi, vaikka se ei olisikaan tuo hedelmä, se tunnistaa sen sellaiseksi.

Nämä päätösrajat, jos ne esitetään graafin muodossa, ovat aina lineaarisia. Käyttämällä yhtä keinotekoista neuronia, eli yhtä solmua, jolla on integroidut parametrit konkreettisia, mutta eivät voi oppia niiden yli, saadaan hyvin läheiset päätösrajat. hajanainen. Sen päärajoitus on, että se käyttää kahta tilastollista menetelmää, erityisesti moniluokkaregressiota ja logistinen regressio, mikä tarkoittaa, että epäiltäessä se sisältää jotain, joka ei ole sitä mitä odotimme sen olevan. tunnistaa.

Jos jakaisimme kaikki hedelmät "appelsiineihin" ja "ei appelsiineihin", käyttämällä vain yhtä hermosolua, on selvää, että banaanit, päärynät, omenat, vesimelonit ja kaikki hedelmät, jotka eivät vastaa kokoa, väriä, muotoa, tuoksua ja niin edelleen appelsiineihin, laittaisin ne "ei"-luokkaan. appelsiinit”. Kuitenkin greipit ja mandariinit asettaisivat ne "appelsiineihin" ja tekisivät huonosti sen työn, jota varten ne on suunniteltu.

Ja kun puhumme appelsiineista ja greipeistä, voisimme hyvin puhua koirista ja susista, kanoista ja kanoista, kirjoista ja vihkoista... Kaikki Nämä tilanteet ovat tapauksia, joissa yksinkertainen sarja "jos..." ("jos...") ei riittäisi erottamaan selkeästi toinen toisistaan. muu. Tarvitaan monimutkaisempi, epälineaarinen järjestelmä, joka on tarkempi eri elementtien erottamisessa. Jotain, joka ottaa huomioon sen, että samankaltaisuuksien välillä voi olla eroja. Tässä tulevat esiin neuroverkot.

Enemmän kerroksia, enemmän samanlaisia ​​kuin ihmisen aivot

Keinotekoiset hermoverkot ovat nimensä mukaisesti laskennallisia keinotekoisia malleja, jotka ovat saaneet vaikutteita ihmisaivojen hermoverkoissa verkoissa, jotka itse asiassa jäljittelevät tämän elimen toimintaa biologinen. Tämä järjestelmä on saanut inspiraationsa hermoston toiminnasta ja sen pääsovellus on tunnistaa kaikenlaisia ​​kuvioita: kasvojentunnistus, äänentunnistus, sormenjälki, käsiala, rekisterikilvet… Kuviontunnistus toimii lähes kaikessa..

Koska hermosoluja on erilaisia, käytettävät parametrit ovat erilaisia ​​ja saavutetaan suurempi tarkkuus. Nämä neuroverkot ovat järjestelmiä, joiden avulla voimme erottaa kohteet luokkiin, kun ero voi olla hienovarainen, erottaen ne epälineaarisella tavalla, mikä olisi mahdotonta tehdä muuten tavalla.

Yhdellä solmulla, yhdellä neuronilla, mitä tehdään informaatiota käsiteltäessä, on moniluokkainen regressio. Lisäämällä lisää neuroneja, koska jokaisella niistä on oma epälineaarinen aktivointitoiminto, joka yksinkertaisemmalle kielelle käännettynä tekee niistä päätöksentekorajoja, jotka ovat tarkempi, se esitetään graafisesti kaarevana ja ottamalla huomioon enemmän ominaisuuksia erotettaessa "appelsiinit" ja "ei appelsiinit", jatkaaksesi tästä esimerkistä.

Näiden päätösrajojen kaarevuus riippuu suoraan siitä, kuinka monta neuronikerrosta lisäämme hermoverkkoomme. Ne neuronikerrokset, jotka tekevät järjestelmästä monimutkaisemman ja tarkemman, ovat itse asiassa syviä hermoverkkoja. Periaatteessa mitä enemmän kerroksia syviä hermoverkkoja meillä on, sitä tarkempi ja samankaltainen ohjelma on verrattuna ihmisen aivoihin.

Lyhyesti sanottuna neuroverkot eivät ole muuta kuin älykäs järjestelmä, joka mahdollistaa tarkempien päätösten tekemisen, hyvin samalla tavalla kuin me ihmiset teemme sen. Ihminen perustuu kokemukseen, ympäristöstämme oppimiseen. Palataksemme esimerkiksi appelsiinin ja greipin tapaukseen, jos emme ole koskaan nähneet sellaista, luulemme sen täydellisesti appelsiiniksi. Kun olemme tutustuneet siihen, se tulee olemaan silloin, kun osaamme jo tunnistaa sen ja erottaa sen appelsiineista.

Ensimmäinen asia, joka tehdään, on antaa joitain parametreja neuroverkoille, jotta ne tietävät, millaista se on, jonka haluamme sen oppivan tunnistamaan. Sitten tulee oppimis- tai harjoitteluvaihe, jotta se on yhä tarkempi ja siinä on vähitellen pienempi virhemarginaali. Tämä on aika, jolloin esittelimme hermoverkkomme appelsiinin ja muiden hedelmien kanssa. Koulutusvaiheessa heille jaetaan tapauksia, joissa ne ovat oransseja ja tapauksia, joissa ne eivät ole oransseja, ja katsotaan, onko vastaus oikein ja kerrotaan oikea vastaus.

Yritämme tehdä useita yrityksiä ja mahdollisimman lähellä todellisuutta.. Tällä tavalla autamme hermoverkkoa toimimaan todellisten tapausten saapuessa ja se osaa erottaa oikein, samalla tavalla kuin ihminen tekisi oikeassa elämässä. Jos koulutus on ollut riittävää, valittuna hyvät tunnistusparametrit ja on luokiteltu hyvin, hermoverkolla tulee olemaan erittäin korkea muodontunnistuksen onnistumisprosentti. korkea.

  • Saatat olla kiinnostunut: "Kuinka neuronit toimivat?"

Mitä ne ovat ja miten ne tarkalleen toimivat?

Nyt kun olemme nähneet yleiskäsityksen siitä, mitä hermoverkot ovat, ja aiomme ymmärtää paremmin, mitä ne ovat ja miten nämä ihmisaivojen neuronien emulaattorit toimivat ja mihin syvät hermoverkot maalaavat tässä kaikessa käsitellä asiaa.

Kuvitellaan, että meillä on seuraava hermoverkko: meillä on kolme kerrosta keinotekoisia neuroneja. Oletetaan, että ensimmäisessä kerroksessa on 4 neuronia tai solmua, toisessa 3 ja viimeisessä vain 2. Tämä kaikki on esimerkki keinotekoisesta hermoverkosta, melko helppo ymmärtää.

Ensimmäinen kerros on se, joka vastaanottaa tiedot., eli informaatiota, joka voi hyvinkin tulla äänen, kuvan, aromien, sähköimpulssien muodossa... Tämä ensimmäinen kerros on syöttökerros, ja se vastaa kaiken tiedon vastaanottamisesta, jotta se voidaan lähettää myöhemmin seuraaville kerroksia. Neuroverkkomme koulutuksen aikana tämä on se kerros, jonka kanssa aiomme työskennellä ensin ja antaa sen tietoja, joita käytämme nähdäksemme, kuinka hyvin pystyt tekemään ennusteita tai tunnistamaan sinulle annetut tiedot antaa.

Toinen hypoteettisen mallimme kerros on piilotettu kerros, joka sijaitsee aivan ensimmäisen ja viimeisen kerroksen keskellä., ikään kuin hermoverkkomme olisi voileipä. Tässä esimerkissä meillä on vain yksi piilotettu kerros, mutta niitä voi olla niin monta kuin haluamme. Voisimme puhua 50, 100, 1000 tai jopa 50 000 kerroksesta. Pohjimmiltaan nämä piilotetut kerrokset ovat osa hermoverkkoa, jota kutsuisimme syväksi hermoverkoksi. Mitä suurempi syvyys, sitä monimutkaisempi hermoverkko.

Lopuksi meillä on esimerkkimme kolmas kerros, joka on tuloskerros. Tämä kerros, kuten sen nimi osoittaa, on vastuussa tiedon vastaanottamisesta edellisiltä tasoilta, päätöksenteosta ja vastauksen tai tuloksen antamisesta.

Neuraaliverkossa jokainen keinotekoinen neuroni on yhteydessä kaikkiin seuraaviin. Esimerkissämme, jossa olemme kommentoineet, että meillä on kolme kerrosta 4, 3 ja 2 neuronia, syöttökerroksen 4 on yhdistetty piilokerroksen 3:een ja piilotetun kerroksen 3:een lähdön 2:een, jolloin saamme yhteensä 18 yhteyksiä.

Kaikki nämä neuronit ovat yhteydessä seuraavan kerroksen hermosoluihin lähettäen tietoa tulo->piilotettu->lähtö-suunnassa.. Jos piilotasoja olisi enemmän, puhuisimme suuremmasta määrästä yhteyksiä, jolloin tiedot lähetettäisiin piilokerrokselta piilokerrokselle, kunnes se saavuttaa tuloskerroksen. Kun tuloskerros on vastaanottanut tiedon, se antaa meille tuloksen, joka perustuu saamaansa tietoon ja sen käsittelytapaan.

Kun harjoittelemme algoritmiamme eli hermoverkkoamme, tämä juuri selittämämme prosessi suoritetaan monta kertaa. Aiomme toimittaa tietoja verkkoon, katsomme, mitä tulos antaa meille, analysoimme ja vertaamme sitä siihen, mitä odotimme tuloksen antavan meille. Jos odotetun ja saadun välillä on suuri ero, se tarkoittaa, että virhemarginaali on suuri ja että siksi on tarpeen tehdä muutamia muutoksia.

Kuinka keinotekoiset neuronit toimivat?

Nyt aiomme ymmärtää hermoverkossa toimivien hermosolujen yksittäisen toiminnan. Neuroni vastaanottaa tietoa edelliseltä neuronilta. Oletetaan, että tämä neuroni vastaanottaa kolme tietosyötettä, joista jokainen tulee edellisen kerroksen kolmelta neuronilta. Tämä neuroni puolestaan ​​tuottaa ulostuloja, tässä tapauksessa oletetaan, että se on kytketty vain seuraavan kerroksen neuroniin.

Jokainen yhteys, joka tällä neuronilla on edellisen kerroksen kolmen neuronin kanssa, tuo "x"-arvon, joka on arvo, jonka edellinen neuroni lähettää meille.; ja sillä on myös arvo "w", joka on tämän yhteyden paino. Paino on arvo, joka auttaa meitä antamaan yhdelle yhteydelle enemmän merkitystä kuin muita. Lyhyesti sanottuna jokaisella yhteydellä aikaisempien neuronien kanssa on "x" ja "w"-arvot, jotka kerrotaan (x·w).

Meillä on myös tulossa arvo nimeltä "bias" tai bias, jota edustaa "b", joka on virheiden lukumäärä, joka rohkaisee tiettyjä hermosoluja aktivoitumaan helpommin kuin toiset. Lisäksi meillä on neuronissa aktivointitoiminto, mikä tekee sen eri elementtien luokitteluasteen (s. esim. appelsiinit) ei ole lineaarinen. Yksin jokaisella neuronilla on otettava huomioon erilaiset parametrit, mikä saa koko järjestelmän, tämä on hermoverkko, luokittelemaan epälineaarisesti.

Mistä neuroni tietää, pitääkö sen aktivoitua vai ei? eli milloin tiedät, onko sinun lähetettävä tietoja seuraavalle kerrokselle? No, tätä päätöstä ohjaa seuraava yhtälö:

hermoverkko

Tämä kaava tarkoittaa, että kaikkien painojen "w" summa kerrottuna kaikilla "x":n arvoilla, jotka neuroni vastaanottaa edellisestä kerroksesta, on tehtävä. Tähän lisätään bias "b".

Tämän yhtälön tulos lähetetään aktivointifunktioon, joka on yksinkertaisesti funktio, joka kertoo meille, että jos tämän yhtälön tulos on suurempi kuin a Tietyn luvun, neuroni lähettää signaalin seuraavalle kerrokselle, ja jos se on pienempi, se ei lähetä lähettääksesi sen Joten, näin keinotekoinen neuroni päättää, lähettääkö se tietoa neuroneille seuraavasti: kerros lähdön avulla, jota kutsumme nimellä "y", joka puolestaan ​​on seuraavan tulon "x" neuroni.

Ja miten koko verkosto koulutetaan?

Ensimmäinen asia, joka tehdään, on toimittaa tiedot ensimmäiselle kerrokselle, kuten olemme aiemmin kommentoineet. Tämä kerros lähettää tietoa seuraaville kerroksille, jotka ovat piilotettuja kerroksia tai syvää hermoverkkoa. Näiden kerrosten neuronit aktivoituvat tai eivät aktivoidu vastaanotetusta tiedosta riippuen. Lopuksi tuloskerros antaa meille tuloksen, jota vertaamme odottamaamme arvoon nähdäksemme, onko hermoverkko oppinut, mitä tehdä oikein.

Jos hän ei oppinut hyvin, suoritamme toisen vuorovaikutuksen, eli annamme sinulle tietoja uudelleen ja katsomme kuinka hermoverkko käyttäytyy. Saaduista tuloksista riippuen "b"-arvoja säädetään, eli kunkin hermosolun bias, ja "w", tämä on jokaisen yhteyden paino kunkin hermosolun kanssa virheen vähentämiseksi. Selvittääksemme, kuinka suuri tämä virhe on, käytämme toista yhtälöä, joka on seuraava:

hermoverkko

Tämä yhtälö on neliövirheen keskiarvo. Aiomme tehdä summan y (x), joka on arvo, jonka verkkomme antoi meille vuorovaikutuksessa miinus "a", joka on arvo, jonka odotimme sen antavan meille, korotettuna neliöön. Lopuksi aiomme kertoa tämän summan 1/2n: lla, joka on "n" niiden vuorovaikutusten lukumäärällä, jotka olemme lähettäneet kouluttamaan neuroverkkoamme.

Oletetaan esimerkiksi, että meillä on seuraavat arvot

hermoverkko

Ensimmäinen sarake "y (x)" edustaa sitä, mitä verkostomme on antanut meille jokaisessa neljässä testaamassamme vuorovaikutuksessa. Saamamme arvot, kuten voidaan nähdä, eivät vastaa toisen sarakkeen "a" arvoja, jotka ovat haluttuja arvoja kullekin testatulle vuorovaikutukselle. Viimeinen sarake edustaa kunkin vuorovaikutuksen virhettä.

Soveltamalla edellä mainittua kaavaa ja käyttämällä näitä tietoja tässä pitäen mielessä, että tässä tapauksessa n = 4 (4 vuorovaikutukset) antaa meille arvon 3,87, joka on hermoverkkomme keskimääräinen neliövirhe näissä hetkiä. Kun tiedämme virheen, meidän on nyt tehtävä, kuten olemme aiemmin kommentoineet, muuttaa harhaa ja kunkin hermosolun painot ja niiden vuorovaikutukset sillä tavalla, että virhe on vähentää.

Tässä vaiheessa insinöörit ja tietojenkäsittelytieteilijät hakevat gradienttilaskuksi kutsuttu algoritmi jolla he voivat saada arvoja testatakseen ja muokatakseen kunkin keinotekoisen hermosolun harhaa ja painoa niin, että tällä tavalla saadaan yhä pienempi virhe, joka lähestyy ennustetta tai tulosta halusi. Kyse on testauksesta ja mitä enemmän vuorovaikutusta tehdään, sitä enemmän koulutusta tulee ja sitä enemmän verkosto oppii.

Kun hermoverkko on riittävästi koulutettu, se antaa meille tarkkoja ja luotettavia ennusteita ja tunnisteita. Tässä vaiheessa meillä on verkko, jonka jokaisessa neuronissa on arvo määritelty paino, hallittu harha ja päätöksentekokyky, joka tekee järjestelmän tehdä työtä.

Bibliografiset viittaukset:

  • Puig, A. [AMP Tech] (2017, 28. heinäkuuta). Kuinka neuroverkot toimivat? [Videotiedosto]. Toipunut https://www.youtube.com/watch? v=IQMoglp-fBk&ab_channel=AMPTech
  • Santaolalla, J. [Give yourself a Vlog] (2017, 11. huhtikuuta) CienciaClip Challenge - Mitä ovat hermoverkot? [Videotiedosto]. https://www.youtube.com/watch? v=rTpr6DuY4LU&ab_channel=DateunVlog
  • Schmidhuber, J. (2015). "Syvä oppiminen hermoverkoissa: yleiskatsaus". Neuraaliverkot. 61: 85–117. arXiv: 1404.7828. doi: 10.1016/j.neunet.2014.09.003. PMID 25462637. S2CID 11715509
Esittävän taiteen 3 tärkeintä tyyppiä (selvitetty)

Esittävän taiteen 3 tärkeintä tyyppiä (selvitetty)

Nykymaailmassa esittävät taiteet ovat saamassa yhä enemmän asemaa taidemaailmassa. Huolimatta sii...

Lue lisää

Kreikkalainen lääketiede: historia, kehitys ja panokset

Voit puhua niin monesta lääkkeestä kuin on ollut kulttuureja ja historiallisia ajanjaksoja. Tapa,...

Lue lisää

Evoluutiopelastus: mitä se on ja miten se vaikuttaa lajien säilymiseen

Ilmastonmuutos ja antropisoituminen aiheuttavat veronsa ekosysteemeille, ja siksi asiantuntijat a...

Lue lisää