Tentaförberedelse Flashcards
Hur kommer ökandet av antalet hidden neurons (neuroner i hidden layers) att påverka prestandan hos ett neuralt nätverk? Vad händer om man lägger till för få hidden layers? Vad händer om man lägger till för många hidden layers?
För få hidden neurons: Nätverket kommer inte att ha tillräckligt med kapacitet för att lära sig komplexa mönster, vilket leder till underfitting (dålig prestanda).
För många hidden neurons: Nätverket löper riskt att memorera specifik träningsdata istället för att generalisera, vilket leder till overfitting.
Vad är syftet med back propagation vid träning av neruala nätverk, och vilken roll spelar gradient descent-algoritmen?
Backpropagation är en algoritm som används för att träna MLP:er genom att beräkna felet vid outputlagret och gå baklänges genom nätverket. Detta hjälper till att avgöra hur mycket varje vikt bidrar till nätverkets felaktiga output (lösa credit assignment problem). Gradient descent-algoritmen justerar sedan vikterna för att minimera detta fel. Denna process upprepas över flera iterationer (epoker) tills nätverket lär sig korrekt output.
Varför stannade forskningen av perceptroner av under flera år, och vad var det som återväckte intresset av neurala nätverk?
Forskning om perceptroner stannade av efter att Minsky & Papert (1969) visade att SLP:er inte kunde lära sig XOR eller andra icke-linjärt separerbara problem. Detta ledde till missuppfattningen att artificiella neurala nätverk var fundamentalt begränsade. Intresset för neurala nätverk återupplivades dock på 1980-talet när forskare upptäckte backpropagation-algoritmen, som möjliggjorde träning av MLPs. Med ökad datorkapacitet och datatillgång blev neurala nätverk så småningom praktiska, vilket ledde till den moderna deep learning-revolutionen.
Vad är backpropagation och varför är det viktigt för träning av neurala nätverk?
Backpropagation är en träningsalgoritm som används för att uppdatera vikterna i ett neuralt nätverk genom att sprida felvärdet bakåt genom lagren. Processen fungerar så här:
- Forward pass: En insignal skickas genom nätverket, och en utgång beräknas.
- Felberäkning: Skillnaden mellan det faktiska svaret och det förväntade svaret beräknas.
- Backpropagation: Felet sprids bakåt genom nätverket, och vikterna justeras för att minska felet.
- Iterativ förbättring: Processen upprepas i många epoker tills nätverket lär sig att producera rätt svar.
Backpropagation är avgörande eftersom det gör det möjligt att träna deep neural networks och optimera deras prestanda
Vad var den ursprungliga idén bakom symbolisk AI, och varför blev den svår att skala upp?
Symbolisk AI byggde på en top-down-approach, där man försökte modellera intelligenta system genom att definiera explicita logiska regler. Problemet var att:
- Verkliga problem är för komplexa för att uttryckas med en uppsättning regler.
- Det var omöjligt att förutse alla tänkbara situationer som ett AI-system kan ställas inför.
- Symbolisk AI fungerade bra i begränsade miljöer (t.ex. schack), men kunde inte generalisera till den verkliga världen.
Därför blev det svårt att skala upp symbolisk AI till nivåer som motsvarar mänsklig intelligens.
Hur tränas ett neuralt nätverk med ett dataset som MNIST?
MNIST är ett dataset med handritade siffror (0–9) som används för att träna neurala nätverk att känna igen siffror. Träningen sker i följande steg:
- Förbehandling: Varje bild konverteras till en vektor av pixlar (1 = färgad pixel, 0 = tom pixel).
- Forward pass: Bilden matas in i nätverket, och en första gissning görs.
- Lossberäkning: Om svaret är felaktigt beräknas ett felvärde (loss).
- Backpropagation: Vikterna justeras för att minimera felet.
- Iterativ träning: Processen upprepas över flera epoker tills nätverket kan klassificera nya siffror korrekt.
När träningen är klar kan nätverket känna igen handskrivna siffror även om det aldrig har sett just den bilden tidigare
I vilka situationer kan en SLP vara användbar? Vilka typer av problem kräver att man använder en MLP?
I vilka situationer kan en SLP vara användbar? Vilka typer av problem kräver att man använder en MLP?
SLPs är användbara för enkla binära klassificeringsproblem där data är linjärt separerbara (t. ex. att skilja mellan skräppost och icke-spam e-postmeddelanden när en enda tröskel räcker).
MLPs behövs för mer komplexa problem, såsom
- Medicinsk diagnostik (klassificering av sjukdomsförekomst baserat på flera symtom).
- Handskriven sifferigenkänning (att lära sig icke-linjära mönster i bilder).
- Upptäckt av ekonomiskt bedrägeri (upptäcka mönster i stora datauppsättningar med flera funktioner).
MLP:s förmåga att lära sig komplexa datastrukturer gör dem ovärdeliga för deep learning.
Vad menas med att ett problem är linjärt separerbart, och varför kräver XOR ett mer komplext nätverk än en SLP?
En SLP kan bara klassificera data som är linjärt separerbar, vilket innebär att en enda rät linje kan separera de olika klasserna i en tvådimensionell problemrymd. XOR-funktionen är dock inte linjärt separerbar - det finns ingen enskild linje som korrekt kan avgränsa dess 1- och 0-outputs. Denna begränsning ledde till tidig skepsis mot perceptroner, som beskrivs av Minsky & Papert (1969). Problemet löstes senare med Multi-Layer Perceptrons som kan representera flera linjära separationer med hjälp av hidden layers.
Vad händer under en träningsepok, och varför förbättras inlärningen av multipla epoker?
En epok hänvisar till ett helt pass genom träningsdatauppsättningen. Att träna ett neuralt nätverk över flera epoker gör att modellen gradvis kan lära sig bättre viktvärden och minska mänden felaktiga outputs.
- I tidiga epoker kommer nätverket att ge väldigt felaktig output, men lär sig gradvis vad de korrekta outputen ska vara.
- I takt med att antalet epoker ökar finjusterar nätverket vikterna för att fånga subtila datamönster.
- För få epoker → modellen lär sig inte tillräckligt (underfitting).
- För många epoker → modellen memorerar specifika träningsdata istället för att generalisera (overfitting).
Att hitta rätt antal epoker är avgörande för optimal träning.
Vad är “The Credit Assignment Problem” och hur hjälper back propagation till att lösa det?
The Credit Assignment Problem hänvisar till utmaningen att bestämma vilka specifika vikter i ett neuralt nätverk som är ansvariga för fel när nätverket producerar felaktig output. I SLPs existerar inte detta problem eftersom det bara finns ett lager av vikter att justera. Men i MLPs kan fel härröra från vilket lager som helst, vilket gör det svårt att veta exakt vilka vikter som måste justeras. Backpropagation löser detta genom att:
- Beräkna hur stort felet är (hur mycket erhållen output skiljer sig från förväntat output).
- Propagera felet från outputlagret baklänges genom nätverket, lager för lager.
- Justera vikterna med hjälp av gradient descent.
Detta systematiska tillvägagångssätt gör det möjligt för MLP:er att lära sig komplexa funktioner effektivt.
Vad är fördelen med att använda hidden layers i en MLP, och hur hjälper det till att lösa XOR-problemet?
Hidden layers gör det möjligt för en MLP att utföra flera linjära separationer på inputdatan innan den når outputlagret. Varje dold neuron kombinerar funktioner på ett icke-linjärt sätt, vilket gör att nätverket kan separera komplexa mönster. Man kan se en MLP som en kobination av flera SLPs som var och en kan utföra sin egna linjära separation.
Hur skiljer sig ANNs från symbolisk AI?
ANNs använder en bottom-up-approach, där systemet inte programmeras med fasta regler, utan istället lär sig från data genom att justera vikter mellan neuroner. De viktigaste skillnaderna är:
- ANNs kan lära sig mönster automatiskt istället för att förlita sig på manuellt kodade regler.
- ANNs är bättre på att hantera komplexa och “luddiga” problem, som bild- och taligenkänning.
- ANNs förbättras med större datamängder och kraftfullare hårdvara, medan symbolisk AI inte skalas lika effektivt.
Why does the Transformer use positional encoding?
To improve the training speed of the model.
To help the model learn relationships between different positions in a sequence.
To replace the need for attention mechanisms.
To reduce the computational complexity of self-attention.
To help the model learn relationships between different positions in a sequence.
Vad innebär backpropagation i träning av neurala nätverk?
Att justera vikterna i nätverket genom att arbeta baklänges från felet i outputen.
Att först träna nätverket på små dataset innan man använder större dataset.
Att skicka signaler framåt genom nätverket för att generera en output.
Att manuellt justera nätverkets parametrar för att förbättra dess prestanda.
Att justera vikterna i nätverket genom att arbeta baklänges från felet i outputen.
Vilken var det största nackdelen med enkla perceptroner som fick utvecklingen att avstanna?
Att den inte kan lära sig icke linjärt separerbara funktioner som XOR.
Den kan bara utföra binära klassifikationer.
Den kan inte klassificera data med fler än två egenskaper.
Den fungerar inte utan hidden layers.
Att den inte kan lära sig icke linjärt separerbara funktioner som XOR.
Vad analyseras med en confusion matrix?
Viktjusteringarna hos ett neuralt nätverk.
Accuracy hos en klassificeringsmodell.
Antal hidden layers som behövs i en Multi Layer Perceptron.
Optimeringsfunktionen som används i backpropagation.
Accuracy hos en klassificeringsmodell.
När man tränar MLP, vad syftar man på när man pratar om “credit assignment problem”?
Att avgöra exakt vilka vikter som orsakar den felaktiga outputen.
Att välja rätt aktiveringsfunktion.
Att reducera mängden träningsdata som behövs.
All välja rätt optimerare (optimizer).
Att avgöra exakt vilka vikter som orsakar den felaktiga outputen.
Vilken form (shape) har arrayen [ [ [1, 2], [3, 4], [5, 6] ], [ [7, 8], [9, 10], [11, 12] ] ] ?
(2,3,2)
(3,2,2)
(2,2,3)
Rätt svar
(2,3,2)
Vad är funktionen hos en perceptron?
Den utför logiska operationer som AND, OR och XOR.
Det är en typ av artificiell neuron som multiplicerar input med vikter och summerar dem.
Den klassificerar data i en confusion matrix.
Det är en typ av artificiell neuron som multiplicerar input med vikter och summerar dem.
Which of the following properties are true for Layerwise-Relevance Propagation (LRP) model explainers? (more than one of the below is correct)
They are primarily global methods
They are surrogate models
They are model-specific
They are post hoc approaches
They are model-specific
They are post hoc approaches
Vad är syftet med loss functions i ANNs?
Att kontrollera felstorleken hos nätverkets output.
Att bestämma hur mycket vikterna ska ökas med.
Att mäta andelen korrekta förutsägelser för träningsdatan.
Rätt svar
Att kontrollera felstorleken hos nätverkets output
Vad är den huvudsakliga rollen hos en optimerare (optimizer) när man tränar ett neuralt nätverk?
Att mäta felmarginalen mellan förväntad och erhållen output.
Att uppdatera vikterna vid back propagation.
Att klassificera data i olika kategorier.
Att automatiskt öka antalet gömda lager.
Att uppdatera vikterna vid back propagation.