stub Hvad er neurale netværk? - Unite.AI
Følg os

AI 101

Hvad er neurale netværk?

mm
Opdateret on

Hvad er kunstige neurale netværk (ANN'er)?

Mange af de største fremskridt inden for AI er drevet af kunstige neurale netværk. Kunstige neurale netværk (ANN'er) er forbindelsen af ​​matematiske funktioner forbundet i et format inspireret af de neurale netværk, der findes i den menneskelige hjerne. Disse ANN'er er i stand til at udtrække komplekse mønstre fra data, anvende disse mønstre på usete data for at klassificere/genkende dataene. På denne måde "lærer" maskinen. Det er en hurtig gennemgang af neurale netværk, men lad os se nærmere på neurale netværk for bedre at forstå, hvad de er, og hvordan de fungerer.

Flerlagsperceptron forklaret

Før vi ser på mere komplekse neurale netværk, vil vi tage et øjeblik på at se på en simpel version af en ANN, en Multi-Layer Perceptron (MLP).

Forestil dig et samlebånd på en fabrik. På dette samlebånd modtager en arbejder en vare, foretager nogle justeringer på den og sender den derefter videre til den næste arbejder i linjen, som gør det samme. Denne proces fortsætter, indtil den sidste arbejder i rækken lægger sidste hånd på varen og sætter den på et bælte, der vil tage den ud af fabrikken. I denne analogi er der flere "lag" til samlebåndet, og produkter bevæger sig mellem lag, når de bevæger sig fra arbejder til arbejder. Samlebåndet har også et indgangspunkt og et udgangspunkt.

En Multi-Layer Perceptron kan opfattes som en meget simpel produktionslinje, lavet af i alt tre lag: et inputlag, et skjult lag og et outputlag. Inputlaget er det sted, hvor dataene føres ind i MLP'en, og i det skjulte lag håndterer et antal "arbejdere" dataene, før de sender dem til outputlaget, som giver produktet til omverdenen. I tilfælde af en MLP kaldes disse arbejdere "neuroner" (eller nogle gange noder), og når de håndterer dataene, manipulerer de dem gennem en række matematiske funktioner.

Inden for netværket er der strukturer, der forbinder node til node kaldet "vægte”. Vægte er en antagelse om, hvordan datapunkter er relateret, når de bevæger sig gennem netværket. For at sige det på en anden måde, vægte afspejler niveauet af indflydelse, som en neuron har over en anden neuron. Vægtene passerer gennem en "aktiveringsfunktion", når de forlader den aktuelle node, som er en type matematisk funktion, der transformerer dataene. De transformerer lineære data til ikke-lineære repræsentationer, hvilket gør netværket i stand til at analysere komplekse mønstre.

Analogien til den menneskelige hjerne antydet af "kunstigt neuralt netværk" kommer fra det faktum, at neuronerne, som udgør den menneskelige hjerne, er forbundet på samme måde som, hvordan knuder i en ANN er forbundet.

Mens flerlagsperceptroner har eksisteret siden 1940'erne, var der en række begrænsninger, der forhindrede dem i at være særligt nyttige. Men i løbet af de sidste par årtier har en teknik kaldet "tilbageudbredelse” blev skabt, der gjorde det muligt for netværk at justere vægten af ​​neuronerne og derved lære meget mere effektivt. Backpropagation ændrer vægtene i det neurale netværk, hvilket gør det muligt for netværket bedre at fange de faktiske mønstre i dataene.

Deep Neural Networks

Dybe neurale netværk tager den grundlæggende form af MLP og gør den større ved at tilføje flere skjulte lag i midten af ​​modellen. Så i stedet for at der er et inputlag, et skjult lag og et outputlag, er der mange skjulte lag i midten, og output fra et skjult lag bliver input til det næste skjulte lag, indtil dataene har nået det hele gennem netværket og er blevet returneret.

De mange skjulte lag i et dybt neuralt netværk er i stand til at fortolke mere komplekse mønstre end den traditionelle flerlagsperceptron. Forskellige lag af det dybe neurale netværk lærer mønstrene for forskellige dele af dataene. For eksempel, hvis inputdata består af billeder, kan den første del af netværket fortolke lysstyrken eller mørket af pixels, mens de senere lag vil udvælge former og kanter, der kan bruges til at genkende objekter i billedet.

Forskellige typer af neurale netværk

Der er forskellige typer af neurale netværk, og hver af de forskellige neurale netværkstyper har sine egne fordele og ulemper (og derfor deres egne anvendelsestilfælde). Den type dybe neurale netværk beskrevet ovenfor er den mest almindelige type neurale netværk, og det omtales ofte som et feedforward neuralt netværk.

En variation af neurale netværk er det tilbagevendende neurale netværk (RNN). I tilfælde af tilbagevendende neurale netværk bruges looping-mekanismer til at holde information fra tidligere analysetilstande, hvilket betyder, at de kan fortolke data, hvor rækkefølgen betyder noget. RNN'er er nyttige til at udlede mønstre fra sekventielle/kronologiske data. Tilbagevendende neurale netværk kan være enten ensrettet eller tovejs. I tilfælde af et tovejs neuralt netværk kan netværket tage information fra senere i sekvensen såvel som tidligere dele af sekvensen. Da den tovejs RNN tager mere information i betragtning, er den bedre i stand til at tegne de rigtige mønstre fra dataene.

Et Convolutional Neural Network er en speciel type neuralt netværk, der er dygtig til at fortolke de mønstre, der findes i billeder. En CNN fungerer ved at sende et filter over billedets pixels og opnå en numerisk repræsentation af pixels i billedet, som den derefter kan analysere for mønstre. Et CNN er opbygget således, at de foldede lag, som trækker pixels ud af billedet, kommer først, og så kommer de tæt forbundne feed-forward-lag, dem, der rent faktisk vil lære at genkende objekter, kommer efter dette.

Blogger og programmør med speciale i Maskinelæring , Deep Learning emner. Daniel håber at kunne hjælpe andre med at bruge AI's kraft til socialt gode.