Generatiivinen tiedustelu

Neuroverkot ja syvä oppiminen

Treffi:

Ali Sherief Hacker Noon -profiilikuva

@zenulabidiiniAli Sherief

Järjestelmänvalvoja NotATether.com-sivustossa, kehittäjä ChainWorks Industries -yrityksessä ja verkko-yrittäjä

Neuraaliverkot ovat nykyään tärkeä aihe teknologiateollisuudessa osittain siksi, että ne näyttävät komeilta monissa jokapäiväisissä laitteissa. Puhelimesi kamerasta Alexaan jopa a hammasharja - yritykset ja organisaatiot hyppäävät tekoälyn hyppyjunaan.

Keskustellaanko siitä, ovatko jotkut näistä tarkoituksenmukaisia ​​käyttötarkoituksia hermoverkoille ja tekoälylle, mutta hermoverkkojen toiminnan ymmärtäminen ei anna pelkästään luettelomerkin ansioluettelossasi, vaan antaa sinulle myös mahdollisuuden tietää, milloin niitä käytetään todellisissa tilanteissa .

Tietenkin, ennen kuin voit koodata hermoverkkoja millä tahansa kielellä tai työkalupakissa, sinun on ensin ymmärrettävä, mitä ne ovat.

Mitä ovat hermoverkot?

Mikä tämä tekoäly on?

Tekoäly (AI) viittaa ilmeisesti koneisiin, jotka yrittävät tehdä tehtäviä, joita muutoin tekisivät ihmiset. Tekoälyssä on monia haaroja, kuten robotiikka ja tiedonlouhinta, mutta tässä viestissä keskitymme yhteen tiettyyn osajoukkoon, koneoppiminen, koska on helppo eksyä laajaan aiheeseen. Neuroverkot ovat osa koneoppimisen kurinalaisuutta, joten se auttaa ymmärtämään ensin ML: n.

Joten mikä on koneoppiminen?

Mukaan wikipedia:

Koneoppiminen (ML) on tutkimus tietokonealgoritmeista, jotka parantuvat automaattisesti kokemuksen ja tietojen avulla. Se nähdään osana tekoälyä. Koneoppimisalgoritmit rakentavat mallitietoihin perustuvan mallin, joka tunnetaan nimellä ”harjoitustieto”, ennusteiden tai päätösten tekemiseksi ilman että niitä olisi nimenomaisesti ohjelmoitu tekemään niin.

Toisin sanoen ruokimme suuria määriä testitietoja järjestelmään opettaakseen sille, mitkä tiedot ovat oikeita tai virheellisiä, oikeita tai vääriä jne. Idea on samanlainen kuin muistikorttien käyttäminen sanojen tai määritelmien muistamiseen ja sitten itsesi testaaminen oikeilla tai väärillä kysymyksillä. Lopulta pystyt tunnistamaan sanat ja ehkä jopa niiden synonyymit ilman muistikortteja. Vastaavasti koneoppimisessa järjestelmä luokittelee objektit oikein ilman testitietoja tai ihmisen puuttumista.

Eri koneoppimisalgoritmit käyttävät yleensä valvottua oppimista kohdeobjektin tunnistamiseen tai valvomatonta oppimista jakelun tunnistamiseen monissa kohteissa. Muita algoritmeja on olemassa, mutta niitä käytetään vähemmän yritysasetuksissa.

Nyt takaisin kohtaan:

Neuraaliverkot ovat kokonaisuuksia, jotka on ketjutettu yhteen kerroksina yhden prosessointitoiminnon suorittamiseksi. Pinoamalla nämä entiteetit, joita kutsumme neuronien (joilla ei muuten ole mitään tekemistä aivojen hermosolujen kanssa kuin nimen samankaltaisuus), kerroksiksi voimme suorittaa monimutkaisen prosessoinnin hermosoluista, jotka tekevät yksinkertaisia ​​asioita.

Hermoverkot koostuvat kolmesta kerroksesta. On:

  • an syöttökerros täynnä neuroneja, jotka sisältävät syötteen palasiksi jaettuna
  • yksi tai useampi piilotetut kerrokset joka kukin käsittelee neuronin tuloa,
  • ja lähtökerros neuronien kanssa, jotka tallentavat tuotoksen.

Kuva pistetilanne: https://medium.com/@societyofai/introduction-to-neural-networks-and-deep-learning-6da681f14e6

Neuraaliverkkoja käytetään koneoppimisalgoritmeissa varsinaisen luokituksen tekemiseen. Jokaisella kerroksella on useita hermosoluja, ja kukin niistä käsittelee fragmentin syötetiedoista alkaen syöttökerroksesta, joka jakaa jakotiedot paloiksi sovelluksen määrittelemällä tavalla. Jokainen piilotettujen kerrosten kerros käsittelee jokaisen palan, jolloin saadaan ulostulo, joka lopulta lähetetään ulostulokerrokseen.

Mutta mitä neuroni oikein tekee?

Itse asiassa hermosolujen laskenta on hyvin yksinkertaista. Se vie numeerisen syötteen, kertoo sen painoarvolla ja välittää sen sitten lähdönä neuronille seuraavassa kerroksessa. Tärkeintä on, että kaikilla hermosoluilla on erilaiset, mutta ennustettavat painotusarvot.

Kuten yllä olevasta kuvasta näet, joillakin kerroksilla on erilainen määrä neuroneja. Kaikilla kerroksilla ei kuitenkaan tarvitse olla sama määrä neuroneja.

Joten jotkut neuronit voivat ottaa useamman kuin yhden syötteen edellisestä kerroksesta ja lähettää lähdön useammalle kuin yhdelle seuraavassa kerroksessa olevalle neuronille.

Mitä tapahtuu, kun neuroni ottaa useita tuloja?

No, kun ne on painotettu, todennäköisesti erilaisilla painoarvoilla. Lisäämme myös vakionumeron nimeltä a puolueellisuus sille lopullisen tuotoksen saamiseksi. Muuten, kaikilla hermosoluilla on erilainen puolueellisuus, jopa yhden tulon hermosoluilla.

Lopuksi jokaisella neuronilla on erityinen toiminto, joka ottaa painotettujen panosten ja ennakkoluulojen summan yhdeksi argumentiksi. Näemme tällaiset toiminnot seuraavassa osassa.

Esimerkkejä neuroneista

Tässä on joitain käytännön esimerkkejä painotustoiminnoista hermosoluissa, joita kohtaat tuotannon koneoppimisohjelmissa. Painotustoimintoja on monia muita tässä lueteltujen lisäksi.

Binaarivaihe

Lineaarinen toiminto

Sigmoid-toiminto

Hyperbolinen toiminta

Recitified Linear Unit (ReLU) -toiminto

Vuotava ReLU-toiminto

Maxout-toiminto

Tässä on toinen kuva, joka toivottavasti auttaa sinua ymmärtämään, mitä neuroni tekee.

Kuva pistetilanne: https://towardsdatascience.com/introduction-to-neural-networks-ead8ec1dc4dd

Kiitos lukemisesta. Seuraavissa viesteissä opimme lisää hermoverkoista, tutkimme joitain koneoppimisen työkalupaketteja ja opimme ML-ohjelmointia eri kielillä.

Kansikuva @FotoArtist kautta Twenty20

Aiemmin julkaistu tätä.

Tunnisteet

Liity Hacker Nooniin

Luo ilmainen tili avataksesi mukautetun lukukokemuksen.

Coinsmart. Paras Bitcoin-Börse Euroopassa
Lähde: https://hackernoon.com/neural-networks-and-deep-learning-1o1s34rc?source=rss

spot_img

Uusin älykkyys

spot_img

Keskustele kanssamme

Hei siellä! Kuinka voin olla avuksi?