En artificiell neuron ( matematisk neuron McCulloch - Pitts , formell neuron [1] ) är en nod i ett artificiellt neuralt nätverk , som är en förenklad modell av en naturlig neuron . Matematiskt representeras en artificiell neuron vanligtvis som någon icke-linjär funktion av ett enda argument - en linjär kombination av alla insignaler. Denna funktion kallas aktiveringsfunktion [2] eller driftfunktion , överföringsfunktion . Resultatet skickas till en enda utgång. Sådana artificiella neuroner kombineras till nätverk - de kopplar utgångarna från vissa neuroner till andras ingångar. Konstgjorda neuroner och nätverk är huvudelementen i en idealisk neurodator . [3]
En biologisk neuron består av en kropp med en diameter på 3 till 100 mikron, som innehåller en kärna (med ett stort antal kärnporer) och andra organeller (inklusive en högutvecklad grov ER med aktiva ribosomer , Golgi-apparaten ), och processer. Det finns två typer av skott. Ett axon är vanligtvis en lång process anpassad för att leda excitation från kroppen av en neuron. Dendriter är som regel korta och mycket grenade processer som fungerar som huvudplatsen för bildandet av excitatoriska och hämmande synapser som påverkar neuronen (olika neuroner har olika förhållande mellan axonets och dendriternas längd). En neuron kan ha flera dendriter och vanligtvis bara en axon. En neuron kan ha kopplingar med 20 000 andra neuroner. Den mänskliga hjärnbarken innehåller cirka 80 miljarder neuroner.
Den matematiska modellen av en artificiell neuron föreslogs av W. McCulloch och W. Pitts tillsammans med en modell av ett nätverk bestående av dessa neuroner. Författarna visade att nätverket på sådana element kan utföra numeriska och logiska operationer [4] . I praktiken implementerades nätverket av Frank Rosenblatt 1958 som ett datorprogram, och senare som en elektronisk enhet - en perceptron . Ursprungligen kunde neuronen endast fungera med signalerna logisk noll och logisk etta [5] , eftersom den byggdes på basis av en biologisk prototyp, som bara kan vara i två tillstånd - upphetsad eller oexciterad. Utvecklingen av neurala nätverk har visat att för att utöka omfattningen av deras tillämpning är det nödvändigt att neuronen kan arbeta inte bara med binära, utan också med kontinuerliga (analoga) signaler. En sådan generalisering av neuronmodellen gjordes av Widrow och Hoff [6] , som föreslog att använda den logistiska kurvan som avfyrningsfunktionen hos neuronen.
Anslutningar genom vilka utsignalerna från vissa neuroner går till andras ingångar kallas ofta synapser , i analogi med kopplingarna mellan biologiska neuroner. Varje anslutning kännetecknas av sin egen vikt . Anslutningar med positiv vikt kallas excitatoriska och de med negativ vikt kallas hämmande [7] . Neuronen har en utgång, ofta kallad axon , i analogi med den biologiska prototypen. Från en enda utgång från en neuron kan en signal komma fram till ett godtyckligt antal ingångar från andra neuroner.
Matematiskt är en neuron en viktad adderare vars enda utdata ges av dess indata och viktmatrisen enligt följande:
, varHär och är respektive signalerna vid neuronens ingångar och ingångarnas vikter, funktionen u kallas det inducerade lokala fältet och f(u) är överföringsfunktionen. De möjliga värdena för signalerna vid neuronens ingångar anses givna i intervallet . De kan vara antingen diskreta (0 eller 1) eller analoga. Den extra ingången och dess motsvarande vikt används för att initiera neuronen [8] . Med initiering menas förskjutningen av aktiveringsfunktionen hos neuronen längs den horisontella axeln, det vill säga bildandet av neurons känslighetströskel [5] . Dessutom läggs ibland en viss slumpmässig variabel, som kallas ett skift, medvetet till utmatningen av en neuron. Skiftet kan betraktas som en signal på en ytterligare, alltid laddad, synaps.
Överföringsfunktionen bestämmer beroendet av signalen vid neurons utgång på den viktade summan av signalerna vid dess ingångar. I de flesta fall är den monotont ökande och har ett intervall på eller , men det finns undantag. För vissa nätverksinlärningsalgoritmer är det också nödvändigt att det är kontinuerligt differentierbart på hela den numeriska axeln [8] . En artificiell neuron kännetecknas helt av sin överföringsfunktion. Användningen av olika överföringsfunktioner tillåter att introducera olinjäritet i driften av neuronen och det neurala nätverket som helhet.
I grund och botten klassificeras neuroner baserat på deras position i nätverkstopologin. Dela med sig:
Signalen vid utgången av neuronen är linjärt relaterad till den viktade summan av signalerna vid dess ingång.
,var är en funktionsparameter. I artificiella neurala nätverk med en skiktad struktur utgör neuroner med överföringsfunktioner av denna typ som regel ingångsskiktet. Förutom en enkel linjär funktion kan dess modifieringar användas. Till exempel, en semi-linjär funktion (om dess argument är mindre än noll, så är det lika med noll, och i andra fall beter den sig som en linjär) eller en stegfunktion (en linjär funktion med mättnad), som kan vara uttrycks med formeln [10] :
I detta fall kan funktionen flyttas längs båda axlarna (som visas i figuren).
Nackdelarna med de steg- och halvlinjära aktiveringsfunktionerna i förhållande till den linjära kan kallas det faktum att de inte är differentierbara på hela den numeriska axeln, vilket gör att de inte kan användas vid inlärning enligt vissa algoritmer.
Ett annat namn är Heaviside-funktionen . Representerar en lucka. Tills den viktade signalen vid neuronens ingång når en viss nivå är signalen vid utgången noll. Så snart signalen vid neurons ingång överstiger den specificerade nivån, hoppar utsignalen med ett. Den allra första representanten för skiktade artificiella neurala nätverk , perceptronen [11] , bestod uteslutande av neuroner av denna typ [5] . Den matematiska notationen för denna funktion ser ut så här:
Här är förskjutningen av aktiveringsfunktionen i förhållande till den horisontella axeln; följaktligen bör man förstå den viktade summan av signalerna vid neurons ingångar utan att ta hänsyn till denna term. På grund av det faktum att denna funktion inte är differentierbar på hela x-axeln, kan den inte användas i nätverk som tränas av backpropagation-algoritmen och andra algoritmer som kräver differentierbarhet för överföringsfunktionen.
En av de mest använda typerna av överföringsfunktioner för tillfället. Införandet av funktioner av sigmoidtyp berodde på begränsningarna hos neurala nätverk med en tröskelaktiveringsfunktion för neuroner - med en sådan aktiveringsfunktion är vilken som helst av nätverksutgångarna antingen noll eller en, vilket begränsar användningen av nätverk som inte har klassificeringsproblem . Användningen av sigmoidfunktioner gjorde det möjligt att byta från binära neuronutgångar till analoga [12] . Överföringsfunktioner av denna typ är som regel inneboende i neuroner belägna i de inre lagren av det neurala nätverket.
Logistisk funktionMatematiskt kan den logistiska funktionen uttryckas på följande sätt:
Här är t en funktionsparameter som bestämmer dess branthet . När t närmar sig oändligheten degenererar funktionen till en tröskelfunktion. När sigmoiden degenererar till en konstant funktion med ett värde på 0,5. Omfånget för denna funktion är i intervallet (0,1). En viktig fördel med denna funktion är enkelheten i dess derivata:
Det faktum att derivatan av denna funktion kan uttryckas i termer av dess värde underlättar användningen av denna funktion när man tränar ett nätverk med hjälp av backpropagation-algoritmen [13] . En egenskap hos neuroner med en sådan överföringskarakteristik är att de förstärker starka signaler mycket mindre än svaga, eftersom områdena med starka signaler motsvarar platta delar av egenskapen. Detta förhindrar mättnad från stora signaler [14] .
Hyperbolisk tangentAnvänder funktionen hyperbolisk tangent
skiljer sig från den logistiska kurvan ovan genom att dess värdeområde ligger i intervallet (-1; 1). Eftersom förhållandet är korrekt
,då skiljer sig båda graferna endast i axlarnas skala. Derivatan av den hyperboliska tangenten uttrycks naturligtvis också av en kvadratisk värdefunktion; egenskapen att motstå mättnad gäller exakt detsamma.
Modifierad hyperbolisk tangentAnvänder den modifierade hyperboliska tangentfunktionen
skalas längs y-axeln till intervallet [-1; 1] kan du få en familj av sigmoidala funktioner.
Radial Basis Transfer Function (RBF) tar som ett argument avståndet mellan ingångsvektorn och något fördefinierat aktiveringsfunktionscentrum. Värdet på denna funktion är högre, ju närmare ingångsvektorn är mitten [15] . Som radiell bas kan du till exempel använda Gauss-funktionen :
.Här är avståndet mellan mitten och vektorn för insignalerna . Den skalära parametern bestämmer avklingningshastigheten för funktionen när vektorn rör sig bort från centrum och kallas fönsterbredden , parametern bestämmer aktiveringsfunktionens förskjutning längs abskissaxeln. Nätverk med neuroner som använder sådana funktioner kallas RBF-nätverk . Olika mått [16] kan användas som avstånd mellan vektorer , det euklidiska avståndet används vanligtvis:
.Här är den -:e komponenten av vektorn matad till ingången av neuronen, och är den -:e komponenten av vektorn som bestämmer positionen för överföringsfunktionens centrum. Följaktligen kallas nätverk med sådana neuroner probabilistisk och regression [17] .
I verkliga nätverk kan aktiveringsfunktionen för dessa neuroner återspegla sannolikhetsfördelningen för någon slumpvariabel , eller beteckna eventuella heuristiska beroenden mellan variablerna.
Funktionerna som listas ovan är bara en bråkdel av de många överföringsfunktioner som för närvarande används. Andra överföringsfunktioner inkluderar [18] :
Modellen för en deterministisk artificiell neuron beskrivs ovan, det vill säga tillståndet vid neurons utgång bestäms unikt av resultatet av driften av adderaren av insignaler. Stokastiska neuroner beaktas också , där neuronbytet sker med en sannolikhet beroende på det inducerade lokala fältet, det vill säga överföringsfunktionen definieras som:
,där sannolikhetsfördelningen vanligtvis har formen av en sigmoid:
,en normaliseringskonstant införs för villkoret för normalisering av sannolikhetsfördelningen . Således aktiveras neuronen med sannolikhet . Parametern är analog med temperaturen (men inte neuronens temperatur) och bestämmer störningen i det neurala nätverket. Om vi tenderar till 0 kommer den stokastiska neuronen att förvandlas till en vanlig neuron med en Heaviside-överföringsfunktion (tröskelfunktion).
En neuron med en tröskelöverföringsfunktion kan modellera olika logiska funktioner.
, var
Tabellerna illustrerar hur det är möjligt, genom att ställa in vikterna för insignaler och känslighetströskeln, att få neuronen att utföra konjunktion (logisk "AND") och disjunktion (logisk "ELLER") över ingångssignaler, samt logisk negation av ingångssignalen [19] . Dessa tre operationer räcker för att modellera absolut vilken logisk funktion som helst av valfritt antal argument.
INTE | T | -1,0 | |
---|---|---|---|
w | -1,5 | ||
x | 0 | ett | |
f | ett | 0 |
Och | T | 1.5 | |||
---|---|---|---|---|---|
w 1 | 1.0 | ||||
w 2 | 1.0 | ||||
x 1 | 0 | 0 | ett | ett | |
x2 _ | 0 | ett | 0 | ett | |
f | 0 | 0 | 0 | ett |
ELLER | T | 0,5 | |||
---|---|---|---|---|---|
w 1 | 1.0 | ||||
w 2 | 1.0 | ||||
x 1 | 0 | 0 | ett | ett | |
x2 _ | 0 | ett | 0 | ett | |
f | 0 | ett | ett | ett |