Artificiellt neuralt nätverk (ANN) i maskininlärning – Data Science Central
On september 24, 2021 by adminArtificiellt neuralt nätverk – Introduktion
Artificiellt neuralt nätverk (ANN) eller neurala nätverk är beräkningsalgoritmer.
Det är tänkt att simulera beteendet hos biologiska system som består av ”neuroner”. ANN är beräkningsmodeller som är inspirerade av djurens centrala nervsystem. Den är kapabel till maskininlärning samt mönsterigenkänning. Dessa presenteras som system av sammankopplade ”neuroner” som kan beräkna värden från indata.
Ett neuralt nätverk är en orienterad graf. Det består av noder som i den biologiska analogin representerar neuroner, som är sammankopplade med bågar. Det motsvarar dendriter och synapser. Varje båge associerad med en vikt medan vid varje nod. Tillämpa de värden som tas emot som indata av noden och definiera Aktiveringsfunktion längs de inkommande bågarna, justerad av bågarnas vikter.
Ett neuralt nätverk är en algoritm för maskininlärning som bygger på modellen av en mänsklig neuron. Den mänskliga hjärnan består av miljontals neuroner. Den sänder och bearbetar signaler i form av elektriska och kemiska signaler. Dessa neuroner är sammankopplade med en särskild struktur som kallas synapser. Synapserna gör det möjligt för neuronerna att skicka signaler. Från ett stort antal simulerade neuroner bildas neurala nätverk.
Ett artificiellt neuralt nätverk är en teknik för informationsbehandling. Det fungerar på samma sätt som den mänskliga hjärnan behandlar information. ANN innehåller ett stort antal sammankopplade bearbetningsenheter som arbetar tillsammans för att bearbeta information. De genererar också meningsfulla resultat från den.
Vi kan tillämpa neurala nätverk inte bara för klassificering. Det kan också användas för regression av kontinuerliga målattribut.
Neurala nätverk har stor betydelse för datautvinning som används inom olika sektorer. Till exempel ekonomi, kriminalteknik osv. och för mönsterigenkänning. Det kan också användas för dataklassificering i en stor mängd data efter noggrann träning.
Ett neuralt nätverk kan innehålla följande tre lager:
- Ingångslager – Aktiviteten hos ingångsenheterna representerar den råa information som kan matas in i nätverket.
- Dolt lager – För att bestämma aktiviteten hos varje dold enhet. Aktiviteten hos de ingående enheterna och vikterna på förbindelserna mellan de ingående och de dolda enheterna. Det kan finnas ett eller flera dolda lager.
- Utgångslager – Utgångsenheternas beteende beror på de dolda enheternas aktivitet och vikterna mellan de dolda enheterna och utgångsenheterna.
Konstnärliga neurala nätverkslager
Konstnärliga neurala nätverk är typiskt organiserade i lager. Lagren består av många sammankopplade ”noder” som innehåller en ”aktiveringsfunktion”. Ett neuralt nätverk kan innehålla följande tre lager:
a. Ingångsskikt
Ingångsskiktets syfte är att som ingångsvärde ta emot värdena för de förklarande attributen för varje observation. Vanligtvis är antalet ingångsnoder i ett ingångslager lika med antalet förklarande variabler. ’Ingångsskiktet’ presenterar mönstren för nätverket, som kommunicerar till ett eller flera ’dolda lager’.
Ingångsskiktets noder är passiva, vilket innebär att de inte ändrar uppgifterna. De tar emot ett enda värde på sin ingång och duplicerar värdet till sina många utgångar. Från inmatningsskiktet dupliceras varje värde och skickas till alla dolda noder.
b. Dolt lager
De dolda lagren tillämpar givna transformationer på ingångsvärdena inne i nätverket. I detta är inkommande bågar som går från andra dolda noder eller från ingångsnoder anslutna till varje nod. Det ansluter med utgående bågar till utgångsnoder eller till andra dolda noder. I det dolda lagret sker den faktiska bearbetningen via ett system av viktade ”anslutningar”. Det kan finnas ett eller flera dolda lager. De värden som kommer in i en dold nod multipliceras med vikter, en uppsättning förutbestämda tal som är lagrade i programmet. De viktade ingångarna adderas sedan för att ge ett enda tal.
c. Utgångslager
De dolda lagren länkas sedan till ett ”utgångslager”. Utgångsskiktet tar emot kopplingar från dolda skikt eller från ingångsskiktet. Det returnerar ett utgångsvärde som motsvarar förutsägelsen av svarsvariabeln. I klassificeringsproblem finns det vanligen bara en utgångsnod. De aktiva noderna i utgångslagret kombinerar och ändrar data för att producera utgångsvärdena.
Förmågan hos det neurala nätverket att tillhandahålla användbar datamanipulering ligger i ett korrekt val av vikter. Detta skiljer sig från konventionell informationsbehandling.
Strukturen hos ett neuralt nätverk
Strukturen hos ett neuralt nätverk kallas också för dess ”arkitektur” eller ”topologi”. Den består av antalet lager, elementära enheter. Den består också av en mekanism för justering av interkonchangend vikt. Valet av struktur avgör vilka resultat som kommer att uppnås. Det är den mest kritiska delen av genomförandet av ett neuralt nätverk.
Den enklaste strukturen är den där enheterna fördelas på två lager: Ett inmatningsskikt och ett utmatningsskikt. Varje enhet i ingångsskiktet har en enda ingång och en enda utgång som är lika med ingången. Utgångsenheten har alla enheter i ingångsskiktet kopplade till sin ingång, med en kombinationsfunktion och en överföringsfunktion. Det kan finnas mer än en utgångsenhet. I detta fall är den resulterande modellen en linjär eller logistisk regression, beroende på om överföringsfunktionen är linjär eller logistisk. Nätverkets vikter är regressionskoefficienter.
Om man lägger till ett eller flera dolda lager mellan ingångs- och utgångslager och enheter i detta lager ökar det neurala nätverkets prediktiva förmåga. Men antalet dolda lager bör vara så litet som möjligt. Detta säkerställer att det neurala nätverket inte lagrar all information från inlärningsmängden utan kan generalisera den för att undvika överanpassning.
Overfitting kan förekomma. Det inträffar när vikter gör att systemet lär sig detaljer i inlärningsmängden i stället för att upptäcka strukturer. Detta inträffar när storleken på inlärningsuppsättningen är för liten i förhållande till modellens komplexitet.
Ett dolt lager finns eller inte, nätverkets utgångslager kan ibland ha många enheter, när det finns många klasser att förutsäga.
Fördelar och nackdelar med neurala nätverk
Låt oss se några fördelar och nackdelar med neurala nätverk:
- Neurala nätverk presterar bra med linjära och icke-linjära data, men en vanlig kritik mot neurala nätverk, särskilt inom robotteknik, är att de kräver en stor mångfald av träning för att kunna fungera i verkligheten. Detta beror på att varje inlärningsmaskin behöver tillräckligt många representativa exempel för att fånga den underliggande struktur som gör att den kan generalisera till nya fall.
- Neurala nätverk fungerar även om en eller ett fåtal enheter misslyckas med att reagera på nätverket, men för att implementera stora och effektiva neurala programvarunätverk måste mycket bearbetnings- och lagringsresurser engageras. Även om hjärnan har hårdvara som är skräddarsydd för uppgiften att bearbeta signaler genom en graf av neuroner, kan en simulering av även en mycket förenklad form av Von Neumann-teknik tvinga en konstruktör av ett neuralt nätverk att fylla miljontals databasrader för sina anslutningar – vilket kan förbruka enorma mängder datorminne och hårddiskutrymme.
- Neurala nätverk lär sig av de analyserade uppgifterna och behöver inte programmeras om, men de kallas ”svarta lådan”-modeller och ger mycket liten insikt i vad modellerna verkligen gör. Användaren behöver bara mata den med indata och se den träna och vänta på resultatet.
Slutsats
ANN:s betraktas som enkla matematiska modeller för att förbättra befintlig teknik för dataanalys. Även om den inte kan jämföras med den mänskliga hjärnans kraft är den ändå den grundläggande byggstenen för artificiell intelligens.
Lämna ett svar