complete guide artificial neural network machine learning
Denna handledning förklarar vad som är artificiellt neuralt nätverk, hur fungerar ett ANN, struktur och typer av ANN och neuralt nätverksarkitektur:
I denna Maskininlärningsträning för alla , vi utforskade allt om Typer av maskininlärning i vår tidigare handledning.
Här, i denna handledning, diskuterar du de olika algoritmerna i Neural Networks, tillsammans med jämförelsen mellan maskininlärning och ANN. Innan vi lär oss hur ANN bidrar till maskininlärning måste vi veta vad ett artificiellt neuralt nätverk är och kort kunskap om maskininlärning.
Låt oss utforska mer om maskininlärning och artificiellt neuralt nätverk !!
=> Läs igenom hela serien för maskininlärning
Vad du kommer att lära dig:
- Vad är maskininlärning?
- Vad är ett artificiellt neuralt nätverk?
- Struktur av ett biologiskt neuralt nätverk
- Jämförelse av biologisk neuron och artificiell neuron
- Kännetecken för ANN
- ANN-struktur
- Aktiveringsfunktion
- Vad är en artificiell neuron?
- Hur fungerar artificiell neuron?
- Grundläggande modeller av ANN
- Neural Network Architecture
- Exempel på artificiellt neuronnätverk
- Jämförelse mellan maskininlärning och ANN
- Neurala nätverk och djupinlärning
- Konstgjorda neurala nätverksapplikationer
- Begränsningar av neurala nätverk
- Slutsats
- Rekommenderad läsning
Vad är maskininlärning?
Maskininlärning är ett vetenskapligt fält som gör att datorer kan lära sig och agera utan att programmeras uttryckligen. Det är ett underfält av artificiell intelligens.
Vad är ett artificiellt neuralt nätverk?
ANN är en icke-linjär modell som används i stor utsträckning inom maskininlärning och har en lovande framtid inom artificiell intelligens.
Artificial Neural Network är analogt med ett biologiskt neuralt nätverk. Ett biologiskt neuralt nätverk är en struktur av miljarder sammankopplade nervceller i en mänsklig hjärna. Den mänskliga hjärnan består av nervceller som skickar information till olika delar av kroppen som svar på en utförd handling.
På liknande sätt är ett artificiellt neuralt nätverk (ANN) ett beräkningsnätverk inom vetenskap som liknar egenskaperna hos en mänsklig hjärna. ANN kan modellera som de ursprungliga neuronerna i den mänskliga hjärnan, därför kallas ANN-bearbetningsdelar Artificiella neuroner.
ANN består av ett stort antal sammankopplade nervceller som är inspirerade av hjärnans funktion. Dessa nervceller har förmågan att lära sig, generalisera träningsdata och hämta resultat från komplicerade data.
Dessa nätverk används inom områdena klassificering och förutsägelse, mönster- och trendidentifieringar, optimeringsproblem etc. ANN lär sig av träningsdata (känd inmatning och målutgång) utan någon programmering.
Det inlärda neurala nätverket kallas en expertsystem med förmågan att analysera information och svara på frågorna inom ett visst område.
Den formella definitionen av ANN från Dr.Robert Hecht-Nielson, uppfinnare av en första neurodatorer är:
'... ett datorsystem som består av ett antal enkla, mycket sammankopplade bearbetningselement, som behandlar information genom sitt dynamiska tillståndssvar på externa ingångar'.
Struktur av ett biologiskt neuralt nätverk
Ett biologiskt neuralt nätverk består av:
- Soma: Detta kallas också cellkroppen. Det är där cellkärnan är belägen.
- Dendriter: Dessa är trädliknande nätverk som är anslutna till cellkroppen. Den är gjord av nervfibern.
- Axon: Axon bär signalen från cellkroppen. Den delas upp i strängar och varje tråd slutar i en glödlampliknande struktur som kallas synaps. De elektriska signalerna skickas mellan synaps och dendriter.
(bild källa )
Jämförelse av biologisk neuron och artificiell neuron
Biologisk neuron | Konstgjord neuron |
---|---|
ML används i e-handel, hälso- och sjukvård, produktrekommendationer etc. | ANN används inom ekonomidomän, maskininlärning och artificiell intelligens. |
Den är gjord av celler. | Cellerna motsvarar nervceller. |
Den har dendriter som är sammankopplingar mellan cellkroppen. | Anslutningsvikterna motsvarar dendriter. |
Soma får inmatningen. | Soma liknar nettoingångsvikt. |
Axonen tar emot signalen. | Utgången från ANN motsvarar axon. |
Kännetecken för ANN
- Icke linjäritet: Mekanismen som följs i ANN för generering av insignalen är olinjär.
- Övervakat lärande: In- och utdata mappas och ANN tränas med utbildningsdatasetet.
- Oövervakad inlärning: Målutmatningen ges inte, så ANN lär sig på egen hand genom att upptäcka funktionerna i inmatningsmönstren.
- Adaptiv natur: Anslutningsvikterna i ANN-noderna kan justera sig själva för att ge önskad utgång.
- Biologisk neuronanalogi: ANN har en mänsklig hjärninspirerad struktur och funktionalitet.
- Feltolerans: Dessa nätverk är mycket toleranta eftersom informationen distribueras i lager och beräkning sker i realtid.
ANN-struktur
Artificiella neurala nätverk bearbetar element antingen i form av algoritmer eller hårdvaruenheter modellerade efter neuronal struktur i en hjärnbark i människan.
Dessa nätverk kallas också helt enkelt Neurala nätverk. NN består av många lager. De flera lager som är sammankopplade kallas ofta ”Multilayer Perceptron”. Neuronerna i ett lager kallas 'Noder'. Dessa noder har en ”aktiveringsfunktion”.
ANN har tre huvudlager:
- Ingångslager: Ingångsmönstren matas till inmatningsskikten. Det finns ett inmatningsskikt.
- Dolda lager: Det kan finnas ett eller flera dolda lager. Bearbetningen som sker i de inre skikten kallas 'dolda lager'. De dolda lagren beräknar utgången baserat på ”vikterna” som är ”summan av viktade synapsförbindelser”. De dolda lagren förfina ingången genom att ta bort överflödig information och skicka informationen till nästa dolda lager för vidare bearbetning.
- Utgångslager: Detta dolda lager ansluts till 'utgångsskiktet' där utdata visas.
Aktiveringsfunktion
Aktiveringsfunktionen är ett internt tillstånd hos en neuron. Det är en funktion av inmatning som neuronen får. Aktiveringsfunktionen används för att konvertera insignalen på noden på ANN till en utsignal.
Vad är en artificiell neuron?
Ett artificiellt neuralt nätverk består av mycket sammankopplade bearbetningselement som kallas noder eller nervceller.
Dessa nervceller fungerar parallellt och är organiserade i en arkitektur. Noderna är anslutna till varandra genom anslutningslänkar. Varje neuron har en vikt som innehåller information om insignalen.
Hur fungerar artificiell neuron?
En artificiell neuron får en input. Dessa ingångar har en vikt som kallas ”synaps”. Dessa nervceller (även kallade noder) har 'aktiveringsfunktion'. Denna aktiveringsfunktion fungerar på ingången och bearbetar den för att ge en utgång.
Den vägda summan av ingångar blir en insignal till aktiveringsfunktionen för att ge en utgång. Dessa ingångsviktar är justerbara så att neuralnätverket kan justera sina parametrar för att ge önskad effekt.
Få vanliga aktiveringsfunktioner som används i artificiellt neuralt nätverk är:
# 1) Identitetsfunktion
Det kan definieras som f (x) = x för alla värden på x. Detta är en linjär funktion där utgången är densamma som ingången.
typ av fel i programvarutestning
# 2) Binär stegfunktion
Denna funktion används i enskiktsnätverk för att konvertera nätingången till utdata. Utgången är binär, dvs. 0 eller 1. t representerar tröskelvärdet.
(bild källa )
# 3) Bipolär stegfunktion
Den bipolära stegfunktionen har bipolära utgångar (+1 eller -1) för nätingången. T representerar tröskelvärdet.
# 4) Sigmoidal funktion
Den används i backpropagation-nätverk.
Det är av två typer:
- Binär Sigmoid-funktion: Det kallas också som unipolär sigmoidfunktion eller logistisk sigmoidfunktion. Området för sigmoidal funktionell är 0 till 1.
- Bipolär Sigmoid: Den bipolära sigmoidala funktionen varierar från -1 till +1. Det liknar den hyperboliska tangentfunktionen.
(bild källa )
# 5) RampFunction
De vägd summa av ingångar betyder 'produkten av vikten på ingången och värdet på ingången' som sammanfattas för alla ingångar.
Låt jag = {I1, I2, I3 ... In} vara inmatningsmönstret till neuron.
Låt W = {W1, W2, W3 ... Wn} vara den vikt som är associerad med varje ingång till noden.
Vägt ingångssumma = Y = (? Wi * Ii) för i = 1 till n
Grundläggande modeller av ANN
De artificiella neurala nätverksmodellerna består av 3 enheter:
- Vikt eller synaptiska kopplingar
- Inlärningsregeln som används för att justera vikterna
- Aktivering av nervceller
Neural Network Architecture
I ANN är neuronerna sammankopplade och utgången från varje neuron är ansluten till nästa neuron genom vikter. Arkitekturen för dessa sammankopplingar är viktig i ett ANN. Detta arrangemang är i form av lager och förbindelsen mellan lagren och inom lagret är den neurala nätverksarkitekturen.
De vanligaste nätverksarkitekturerna är:
- Enskiktsmatningsnätverk
- Multi-Layer Feed-Forward Network
- Enkel nod med egen feedback
- Enstaka lager återkommande nätverk
- Flera lager återkommande nätverk
Låt oss ta en titt på var och en av dessa i detalj.
# 1) Framåtnätverk i ett lager
Ett lager är ett nätverk bildat av nervceller. Dessa nervceller är anslutna till de andra nervcellerna i nästa lager. För ett enda lager finns det bara in- och utgående lager. Ingångsskiktet är anslutet till noder med utgångslager med vikter.
Alla ingångsnoder är anslutna till var och en av utgångsnoderna. Termen matning framåt visar att det inte finns någon feedback som skickas från utgångsskiktet till ingångsskiktet. Detta bildar ett nätverksmatningsnätverk i ett lager.
(bild källa )
# 2) Multi-Layer Feed-Forward Network
Flerskiktsnätverket består av ett eller flera lager mellan ingång och utgång. Ingångsskiktet tar bara emot en signal och buffrar den medan utlagret visar utgången. Skikten mellan ingången och utgången kallas dolda lager.
De dolda lagren är inte i kontakt med den yttre miljön. Med mer antal dolda lager är utgångssvaret mer effektivt. Noderna i föregående lager är anslutna till varje nod i nästa lager.
Eftersom det inte finns något utgående lager anslutet till ingången eller dolda lager, bildar det ett flerskiktsmatningsnätverk.
# 3) Enkel nod med egen feedback
Nätverken där utmatningslagrets utdata skickas tillbaka som en inmatning till ingångsskiktet eller andra dolda lager kallas Feedback Networks. I återkopplingssystem med en nod finns det ett enda inmatningsskikt där utdata omdirigeras tillbaka som återkoppling.
# 4) Återkommande nätverk i ett lager
I ett återkommande nätverk i ett lager bildar återkopplingsnätverket en sluten slinga. I den här modellen får en enda neuron feedback till sig själv eller de andra nervcellerna i nätverket eller båda.
# 5) Återkommande nätverk med flera lager
I flera lagers återkommande nätverk finns flera dolda lager och utdata omdirigeras tillbaka till neuronerna i de tidigare lagren och andra neuroner i samma lager eller samma neuron i sig.
Exempel på artificiellt neuronnätverk
Låt oss ta nedanstående nätverk med den givna ingången och beräkna nettoingångsneuronen och få utgången från neuronen Y med aktiveringsfunktion som binär sigmoidal.
Ingången har 3 nervceller X1, X2 och X3, och enkelutgång Y.
De vikter som är associerade med ingångarna är: {0,2, 0,1, -0,3}
Ingångar = {0,3, 0,5, 0,6}
Nettoingång = {x1 * w1 + x2 * w2 + x3 * w3}
Nettoingång = (0,3 * 0,2) + (0,5 * 0,1) + (0,6 * -0,3)
Nettoingång = -0,07
Output för Binary Sigmoidal:
X är -0,07
Produktionen blir 0,517
Jämförelse mellan maskininlärning och ANN
Maskininlärning | Artificiellt neuralt nätverk |
---|---|
Maskininlärning lär sig av indata och upptäcker utdatamönster av intresse. | ANN används i maskininlärningsalgoritmer för att träna systemet med synapser, noder och anslutningslänkar. |
ML är en delmängd av området artificiell intelligens. | ANN är också en del av artificiell intelligens fält av vetenskap och en delmängd av maskininlärning. |
ML-algoritmer lär sig av data som matas till algoritmen för beslutsändamål. Några av dessa algoritmer är klassificering. Clustering, association data mining. | ANN är en djupt lärande vetenskap som analyserar data med logiska strukturer som människor gör. Några av ANN: s inlärningsscheman är Hebbian, Perceptron, Back propagation, etc. |
ML-algoritmer har självlärande kapacitet men skulle kräva mänsklig intervention om resultatet är felaktigt. | ANN-algoritmer har möjligheter att justera sig själva med hjälp av anslutningsvikter om resultatet blir fel. |
ML-algoritmer kräver programmeringskunskaper, datastruktur och kunskap om stor databas. | ANN kräver också starka färdigheter inom matematik, sannolikhet, datastrukturer etc. |
ML-program kan förutsäga resultatet för inlärda datamängder och justera sig för nya data. | ANN kan lära sig och fatta intelligenta beslut på egen hand för nya data men det är djupare än maskininlärning. |
Övervakad och övervakad inlärning faller under maskininlärning. | Lärande som Kohenen, radiell förspänning, feed-forward neuralt nätverk faller under ANN. |
Några exempel på ML är Googles sökresultat etc. | Några exempel på ANN är ansiktsigenkänning, bildigenkänning etc. |
Neurala nätverk och djupinlärning
Deep Learning-nätverk innehåller flera dolda lager mellan ingången och utgången. Dessa nätverk kännetecknas av djupet på de dolda lagren i dem. Ingångsdata passerar genom flera steg innan utdata visas.
Dessa nätverk skiljer sig från det tidigare NN som perseptron som hade ett enda dolt lager och kallades Shallow Networks. Varje dolt lager i det djupa inlärningsnätverket tränar data med vissa funktioner baserat på utgången från föregående lager.
Datan passerar genom många lager av icke-linjär funktion vid noden. Ju mer antal lager, desto mer komplexa funktioner kan kännas igen eftersom nästa lager utför aggregering av funktioner från tidigare lager.
Flera dolda lager i nätverket ökar komplexiteten och abstraktionen. Detta djup betecknas också som en funktionshierarki. På grund av detta kan deep learning-nätverk hantera högdimensionella data.
Några exempel på djupinlärningsnätverk inkluderar kluster av miljoner bilder baserat på dess egenskaper och likheter, filtrering av e-postmeddelanden, applicering av filter på meddelanden i CRM, identifiering av tal etc.
Deep Learning Networks kan utbildas i både märkt och omärkt uppsättning data. För den omärkta datauppsättningen utför nätverk som Boltzmann urvalsmaskiner automatisk extrahering av funktioner.
Nätverket lär sig automatiskt genom att analysera ingången genom sampling och minimera skillnaden i output och distribution av input. Neurala nätverket här hittar korrelationer mellan funktionerna och resultaten.
De djupinlärningsnätverk som tränats på märkta data kan tillämpas på ostrukturerad data. Ju mer träningsdata som matas till nätverket, desto mer exakt blir det.
Nätverkets förmåga att lära av omärkta data är en fördel jämfört med andra inlärningsalgoritmer.
Konstgjorda neurala nätverksapplikationer
Neurala nätverk har framgångsrikt använts i en mängd olika lösningar som visas nedan.
# 1) Mönsterigenkänning: ANN används för mönsterigenkänning, bildigenkänning, visualisering av bilder, handskrift, tal och andra sådana uppgifter.
# 2) Optimeringsproblem: Problem som att hitta den kortaste vägen, schemaläggning och tillverkning där problembegränsningar ska uppfyllas och optimala lösningar måste uppnås använder NN.
# 3) Prognoser: NN kan förutsäga resultatet för situationer genom att analysera tidigare trender. Applikationer som bank, aktiemarknad, väderprognoser använder Neural Networks.
# 4) Styrsystem: Kontrollsystem som datorprodukter, kemiska produkter och robotik använder neurala nätverk.
Begränsningar av neurala nätverk
Nedan finns några av nackdelarna med Neural Networks.
- Dessa nätverk är svarta lådor för användaren eftersom användaren inte har några roller förutom att mata in och observera utdata. Användaren är inte medveten om den utbildning som sker i algoritmen.
- Dessa algoritmer är ganska långsamma och kräver många iterationer (även kallade epoker) för att ge exakta resultat. Detta beror på att processorn beräknar vikterna, aktiveringsfunktionen för varje nod separat, vilket gör att den tar både tid och resurser. Det orsakar också ett problem med en stor mängd data.
Slutsats
I denna handledning lärde vi oss om artificiellt neuralt nätverk, dess analogi med biologiskt neuron och typer av neuralt nätverk.
ANN faller under maskininlärning. Det är en beräkningsmodell som består av flera neuronnoder. Dessa noder tar emot ingång, bearbetar ingången med aktiveringsfunktion och skickar utdata till nästa lager.
Ingångarna är förknippade med anslutningslänkvikter som kallas synaps. En grundläggande ANN består av ett inmatningsskikt, vikter, aktiveringsfunktion, dolt lager och ett utgående lager.
Aktiveringsfunktionerna används för att konvertera ingången till utgången. Några av dem är binära, bipolära, sigmoidala och en rampfunktion. Det finns olika typer av ANN, till exempel Single-Layer Feed Forward, Multilayer Feed Forward, Recurrent networks, etc. baserat på antalet dolda lager och återkopplingsmekanismer.
ANN med många dolda lager mellan ingången och utgången bildar djupt inlärningsnätverk. De djupa inlärningsnäten har hög komplexitet och abstraktionsnivå som gör dem kapabla att beräkna högdimensionella data med tusentals parametrar.
ANN används inom området prognoser, bildbehandling, styrsystem etc. Dessa har framgångsrikt tillämpats som en lösning på en rad problem inom vetenskapen.
Vi hoppas att den här guiden förklarar allt du behöver veta om artificiella neurala nätverk !!
=> Besök här för den exklusiva maskininlärningsserien
Rekommenderad läsning
- Data Mining Vs Machine Learning Vs Artificial Intelligence Vs Deep Learning
- Testning av nätverkssäkerhet och bästa verktyg för nätverkssäkerhet
- Typer av maskininlärning: Övervakad vs Övervakad inlärning
- 11 mest populära maskininlärningsverktyg 2021
- Maskininlärningshandledning: Introduktion till ML och dess tillämpningar
- Guide till Subnet Mask (Subnetting) & IP Subnet Calculator
- Bedömning och hantering av nätverkssårbarhet
- 15 bästa nätverksskanningsverktyg (nätverks- och IP-skanner) 2021