Module 2B - Neurale Netwerken Flashcards

1
Q

Wat zijn neurale netwerken?

A
  • Neurale netwerken bestaan uit een aantal neuronen (units) en verbindingen tussen de neuronen. Een neuraal netwerk kan een “echt” biologisch neuraal netwerk zijn, zoals dat in je hersenen, of een “artificieel” neuraal netwerk dat wordt gesimuleerd in een computer.
  • Ze zijn geïnspireerd door neuronen uit ons brein.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Uit wat bestaat een biologisch neuraal netwerk?

A
  • Een groot aantal eenvoudige eenheden = neuronen of zenuwcellen, die bestaan uit een cellichaam en draden die de neuronen met elkaar verbinden. Via die draden ontvangen de neuronen signalen en geven ze deze aan elkaar door.
    • Dendrieten = draden of uitlopers van de neuronen die informatie (of input) ontvangen: axonen.
  • Synapsen: Elk axon via contactpunten die synapsen heten, verbonden zijn met een of meerdere dendrieten.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Hebben we een eindige hoeveelheid neuronen?

A
  • Nee, op basis van informatie die binnenkomst, afkomstig uit bijvoorbeeld onze zintuigen, maken onze hersenen constant nieuwe neuronen aan, of hersencellen bij (neurogenese). Afhankelijk van de signalen die er binnenkomen, kan een neuron soms een signaal afgeven voor de andere neuronen, en soms niet.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wat is synaptogenese?

A
  • Tussen neuronen en uitlopers vormen er zich ook regelmatig nieuwe verbindingen (synaptogenese). Met dit proces versterken we verbindingen die we regelmatig gebruiken. Kennis die we vaak aanspreken, halen we dus sneller op dan kennis die we minder vaak gebruiken.
  • Als je zo bepaalde dingen niet meer doet, verzwakt die kennis of verdwijnt ze zelfs helemaal. Connecties tussen neuronen sterven dus mogelijk af.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Uit wat bestaat een artificieel neuraal netwerk?

A
  • Net zoals de biologische neuronen de fundamentele bouwstenen vormen van het brein, vormen kunstmatige neuronen de elementaire eenheden in een artificieel neuraal netwerk.
  • Artificiële neurale netwerken zijn dus netwerken die bestaan uit kunstmatige neuronen of rekeneenheden, wiskundige functies, die een of meer inputs ontvangen en deze optellen om een output te produceren.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Zijn neuronen binair?

A
  • Nee, ze kunnen dus, in tegenstelling tot bits, een variabele waarde hebben tussen 0 en 1.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Hoe kun je een neuraal netwerk beschrijven?

A
  • Als een grote rekensom omdat die neuronen informatie aan elkaar doorgeven en analyseren op een manier die vergelijkbaar is met onze hersenen.
  • Neurale netwerken hebben ook de mogelijkheid om zelfstandig te leren = complexe adaptieve systemen → ze zijn in staat om hun interne structuur te veranderen op basis van data, gewoonlijk door het aanpassen van gewichten.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wat zijn de gewichten binnen een neuraal netwerk?

A
  • Elke verbinding tussen neuronen heeft een gewicht en een getal dat het signaal ertussen regelt. Dat gewicht bepaalt hoe sterk het signaal via die connectie aankomt bij het doelneuron, en kan positief (stimulerend) of negatief (remmend) zijn.
  • Uiteindelijk is voor ieder paar neuronen in het netwerk een functie met gewichten gedefinieerd, die aangeeft hoe het vuren van één neuron invloed heeft op het andere neuron.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Hoe passen de gewichten zich aan?

A
  • Als het netwerk de juiste output genereert, worden gewichten niet aangepast. Als het netwerk een foute output genereert, dan past het systeem de gewichten aan om toekomstige resultaten te verbeteren.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Hoe ontstaat een neuraal netwerk?

A
  • Een neuraal netwerk ontstaat wanneer je verschillende neuronen aan elkaar koppelt. Doorgaans vormen onderzoekers hierbij lagen in het netwerk door één laag van neuronen aan de volgende te koppelen. De laag die de originele input ontvangt, noemen we de invoerlaag (inputlaag), terwijl de laatste laag de uitvoerlaag (outputlaag) is.
  • Alle neuronen die hiertussen zitten, bevinden zich in één of meerdere verborgen verwerkingslagen → zo krijgen we diepe neurale netwerken (deep learning of deep neural networks) omwille van hun verschillende, diepe lagen. Hoe meer tussenlagen een netwerk bevat, hoe meer nuances het kan onderscheiden. Als er genoeg data beschikbaar zijn, ontdekt een neuraal netwerk op deze manier mogelijk zeer complexe relaties tussen de input- en outputlaag.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Wat is de architectuur van een neuraal netwerk?

A
  • De architectuur van het netwerk bestaat vaak uit lagen. De inputlaag bestaat uit neuronen die hun input direct uit de gegevens krijgen. Bij het herkennen van afbeeldingen gebruikt de inputlaag bijvoorbeeld de pixelwaarden van de input als input. Het netwerk heeft doorgaans ook verborgen lagen die de output van andere neuronen als input gebruiken, en waarvan de output weer als input van andere lagen neuronen wordt gebruikt.
  • De outputlaag genereert ten slotte de output van het gehele netwerk. Alle neuronen van een bepaalde laag krijgen input van neuronen uit de eerdere laag en geven hun output aan de volgende laag.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Wat is een doel van het bouwen van kunstmatige modellen van de hersenen?

A
  • Neurowetenschap: onderzoek naar de hersenen en het zenuwstelsel in het algemeen:
    • BRAIN initative of het Europese Human Brain Project
  • Andere reden: biologische systemen als inspiratiebron te gebruiken om betere technieken voor AI en machinaal leren te ontwikkelen → zinvol om dit als inspiratiebron te gebruiken bij AI-systemen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Wat zijn de eigenschappen van neurale netwerken in vergelijking met traditionele computers?

A
  1. Informatieverwerking: omdat de neuronen allemaal in hun eentje informatie kunnen verwerken tegelijkertijd.
  2. Opslag en geheugen niet gescheiden: Bij traditionele computers zijn opslag en geheugen gescheiden. Dit is niet zo bij neuronen: deze verzorgen zowel de opslag als de verwerking van informatie, zodat het niet nodig is om gegevens uit het geheugen te halen om deze te kunnen verwerken.
    • De gegevens kunnen gedurende korte tijd in de neuronen zelf worden opgeslagen (ze sturen ze al dan niet op een bepaald moment door) of voor langere tijd in de verbindingen tussen de neuronen, hun zogenaamde gewichten.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Wat is het gevolg van deze eigenschappen van neurale netwerken tov klassieke computers?

A
  • Hoewel het zeker mogelijk is om neurale netwerken in traditionele computers te simuleren, wat lange tijd ook het geval was, wordt hun maximale capaciteit uitsluitend benut als we speciale hardware (computerapparatuur) gebruiken die veel informatie tegelijkertijd - of parallel - kan verwerken.
  • Grafische processoren (of graphics processing units, GPU’s) kunnen dit en zijn een rendabele oplossing geworden voor omvangrijke deep-learningmethoden.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Hoe leren neurale netwerken?

A

Om zelfstandig beslissingen te kunnen nemen → kennis aanleren of ‘getraind’ worden: Ze moeten dus leren om voor een bepaald probleem aan de hand van bepaalde input een correcte output te leveren.

3 technieken:

  1. Supervised learning
  2. Unsupervised learning
  3. Reinforcement learning
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Supervised learning

A
  • Methode waarbij je werkt met gelabelde data waarmee je voorspellingen wilt doen → dataset die je gaat gebruiken om te modelleren bevat vaak zowel de eigenschappen als de uitkomst van hetgeen voorspeld moet worden.
    • Dus: het systeem krijgt van de ‘supervisor’ voorbeelden waarbij duidelijk aangegeven staat wat de gewenste output is bij een gegeven input.
  • Vergelijkbaar met hoe kinderen leren waarbij de ouder hen aanleert wat een hond is of een kat.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Voorbeeld cijferhandschriftherkenning met gesuperviseerd leren?

A
  • Dan geef je het neurale netwerk een grote hoeveelheid voorbeelden, in dit geval cijfers, met een gewenst ofwel bekend resultaat. Zo’n trainingsset bestaat bijvoorbeeld uit zo’n zestigduizend plaatjes van cijfers met de gewenste uitkomst. Je begint met willekeurig gekozen parameters en kijkt welke uitvoer dat oplevert: waarschijnlijk gewoon ruis.
  • Elke keer dat het neurale netwerk een output geeft, vergelijk je die met het gewenste resultaat. Hoe meer dat afwijkt, hoe sterker variabelen moeten worden aangepast. Elke parameter kan een positieve of negatieve vector krijgen, die aangeeft hoeveel de parameter moet worden aangepast om de gegeven uitvoer met de gewenste uitvoer overeen te laten komen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Wat is backpropogation?

A
  • Elke parameter kan een positieve of negatieve vector krijgen, die aangeeft hoeveel de parameter moet worden aangepast om de gegeven uitvoer met de gewenste uitvoer overeen te laten komen. Dit aanpassen van de parameters om de verschillen tussen de cijfers die het neurale netwerk waarneemt, en de correcte cijfers te minimaliseren, wordt ook wel backpropagation genoemd.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Waarvoor gebruiken we backpropogation?

A
  • Optimalisatie: Bij een eenvoudige functie is dat makkelijk, maar met meer variabelen moet met afgeleide functies gewerkt worden, waarbij in kleine stapjes de minima worden opgezocht. Voor die minima geldt dat het neurale netwerk een uitkomst geeft die zo min mogelijk afwijkt van de bekende, gegeven waarde.
  • Het trainen van een netwerk is dus feitelijk een optimalisatie of het zoeken van de lokale minima van een multivariabele functie. Met grote trainingssets kunnen deze parameters steeds beter afgesteld worden, zodat betrouwbare resultaten worden geleverd.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Wat is een hidden layer?

A
  • Tussenlaag tussen invoer en uitvoer. Indien er meer dan 2 tussenlagen zijn → diepe neurale netwerken waarbij elke laag een specifieke taak heeft, waardoor een vraagstuk in steeds eenvoudigere deelvragen kan worden opgesplitst. Je kan zeer complexe taken onderverdelen in eenvoudige deelvragen, die door de eerder beschreven neurale netten kunnen worden uitgevoerd, met diepere lagen die een steeds hoger abstractieniveau mogelijk maken.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Wat zijn de subgroepen binnen gesuperviseerd leren?

A
  1. Classificatie: voor het voorspellen van een groep of een categorie
  2. Regressie: voor het voorspellen van een waarde, een getal.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Wat zijn classificatieproblemen?

A
  • Typisch het onderverdelen in categorieën: bv. hond of kat.
  • In eenvoudigste gevallen: ja of nee vorm = binaire classificatieproblemen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Hoe lossen we classificatieproblemen op?

A
  • In plaats van handmatig precieze regels te formuleren voor het uitvoeren van de classificatie, geven we het computersysteem een aantal voorbeelden die elk de juiste benaming krijgen toegewezen en die worden gebruikt om het algoritme te ‘trainen’ in het automatisch herkennen van de juiste benaming voor de trainingsvoorbeelden en (dat is de bedoeling althans) andere afbeeldingen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Wat voor oplossing krijgen we bij oplossen van classificatieproblemen?

A
  • Hiermee kan een categorie of een groep worden voorspeld: bv. is deze foto een appel of een peer; is het spam of geen spam.
  • Hiermee kan een categorie of een groep worden voorspeld: bv. is deze foto een appel of een peer; is het spam of geen spam.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Wanneer gebruiken we classificatiemodellen?

A
  • Bv. fraudedetectie, handschriftherkenning, taalherkenning, spamfilters.
  • Bekende classificatie-algoritmes zijn: Naive Bayes; Logistic Regression; Decision Tree; Support Vector Machine (SVM); k-Nearest Neighbor (kNN)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Wat zijn regressieproblemen?

A
  • Voorspellen over het aantal mensen dat op een advertentie van Google zal klikken: gebaseerd op de inhoud van de advertentie;
  • Voorspelling aantal verkeersongelukken op basis van weersomstandigheden, snelheidslimiet
    • = regressieproblemen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Voorbeeld regressieprobleem en huisprijs?

A
  • Hiervoor maken we een model waarmee we op basis van eigenschappen van een woning de waarde van de woning kunnen voorspellen.
  • Historische dataset met eigenschappen en de verkoopprijs → zo het algoritme trainen tot een model, dat vervolgens op basis van gegevens van een ander huis kan voorspellen wat hiervan de verkoopprijs zal zijn.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Wat zijn features?

A
  • Voorspellende eigenschappen: bv. ligging van het huis, grootte, bouwjaar,…
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Wat is feature engineering?

A
  • Feature Engineering is het proces waarbij je de eigenschappen selecteert, bewerkt of maakt zodanig dat je je model kan trainen met op de best voorspellende eigenschappen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Hoe kunnen we regressievraagstukken modelleren?

A

Er bestaan verschillende algoritmes waarmee regressievraagstukken gemodelleerd kunnen worden, zoals lineaire regressie en polynoom regressie

31
Q

Betrouwbaarheid van modellen en vaak voorkomende fouten

A
  • Wanneer je een algoritme traint op een verzameling data krijgt je een zogenaamd model. Hetzelfde algoritme met andere gegevens geeft een ander model, net zoals een ander algoritme met dezelfde trainingsdata ook tot een ander model leidt.
  • Een goed resultaat betekent dat het model in staat is om goede voorspellingen te doen → cruciaal als je dit gaat gebruiken om automatische beslissingen te nemen.
    • Vergelijk het met het bakken van een taart: het recept is het algoritme, de ingrediënten de data. Als je andere ingrediënten of een ander recept gebruikt, dan verandert de taart ook. Hoe weten we nu of een goed model hebben gecreëerd?
32
Q

Nauwkeurigheid of betrouwbaarheid berekenen

A
  • Omdat we bij gesuperviseerd leren werken met gelabelde data waaraan de juiste kwalificatie (spam of geen spam) of de werkelijke waarde (prijs van de woning) is toegekend, kunnen we na het trainen van het model de voorspellingen vergelijken met de werkelijkheid.
33
Q

Hoe gaan we de nauwkeurigheid testen?

A
  • Doorgaans doet men dit door de originele dataset op te splitsen in 80% trainingsdata waarmee het model wordt getraind, en 20% testdata waarmee de voorspellingskwaliteit van het model wordt gevalideerd.
  • Om te beoordelen hoe goed we de uitvoer daadwerkelijk kunnen voorspellen, kunnen we immers niet louter afgaan op de trainingsgegevens. Een model kan weliswaar een goede voorspeller voor trainingsgegevens zijn, maar dat is geen bewijs dat dit generaliseerbaar is naar andere gegevens.
34
Q

Verschillende fases nauwkeurigheid testen

A
  1. Modeltraining
  2. Validatiefase
  3. Operationele fase
35
Q

Modeltraining

A
  • Trainingsfase: Het systeem zoekt in die fase zo goed mogelijk het verband of het patroon tussen de aangeleverde input- en outputdata. Op basis van de inputdata probeert het algoritme dus een gekende set van outputdata te voorspellen, en kennis te vergaren.
  • Dit verloopt over verschillende iteraties van voorbeelden. In elke iteratie worden de bekomen voorspellingen vergeleken met de gewenste, en worden kleine aanpassingen aan de gewichten doorgevoerd om de voorspellingen te verbeteren. Het trainen stopt wanneer het systeem aangeeft dat de gewenste nauwkeurigheid bereikt werd.
36
Q

Validatiefase

A
  • Om te weten of ons model de gewenste nauwkeurigheid ook bereikt bij vooraf ongekende voorbeelden → validatiefase. Hierbij vragen we het model om voorspelingen te maken van gegevens waarvan het model de resultaten niet kent (maar wij wel), de testdata.
37
Q

Operationele fase

A
  • Als het model slaagt voor de test (= de gewenste nauwkeurigheid bereikt), is het klaar om in de praktijk in gebruik te nemen, waar we het laten werken met nieuwe data. Dit noemen we de operationele fase.
38
Q

Verwarrings- of foutenmatrix

A
  • Dit is een tabel waarin de relaties tussen positieve en negatieve voorspellingen (bijvoorbeeld wel spam / geen spam) en de werkelijkheid (email is werkelijk spam / geen spam) worden weergegeven, of wordt er een statistische samenvatting gemaakt van de voorspellingskwaliteit op basis van de volgende parameters:
    1. Accuraatheid
    2. Precisie
    3. Recall
    4. Specificiteit
    5. F1 score
39
Q

Accuraatheid

A
  • hoe vaak voorspelt het model correct?
40
Q

Precisie

A

als het model positief voorspelt, hoe vaak is dit correct?

41
Q

Recall

A

welk deel van de werkelijk positieve waarden is juist voorspeld?

42
Q

Specificiteit

A

Welk deel van de werkelijk negatieve waarden is juist voorspeld?

43
Q

F1 score

A

het harmonische gemiddelde van Precision en Recall

44
Q

Determinatiecoëfficiënten R²

A
  • Bij regressiemodellen wordt onder meer gewerkt met determinatiecoefficiënten (R²), d.i. een getal tussen 0 en 1 wat de spreiding weergeeft al dan niet verklaard door het model (een waarde dichter bij 1 is beter).
45
Q

Wat als de trainingsgegevens sterk afwijken van de aparte testgegevens?

A
  1. Underfitting: betekent dat een model een te simplistisch beeld van de werkelijkheid geeft.
  2. Overfitting: model té complex: machine learning is hier heel gevoelig aan. Gevaar: Een bepaalde aanname als de waarheid wordt aangezien terwijl dit in de praktijk niet blijkt te kloppen.
46
Q

Hoe ga je als wetenschapper om met under- en overfitting?

A
  • Een model kiezen dat niet té beperkt is maar niet niet te flexibel = Bias-Variance tradeoff.
  • Het kan worden voorkomen door meer trainingsdata te gebruiken (neurale netwerken hebben soms gigantische hoeveelheden gegevens nodig voor zij betrouwbare voorspellingen genereren) of regularisatie toe te passen (d.i. een aanpassing in je algoritme waardoor overfitting wordt tegengegaan).
47
Q

Cross-validatie

A
  • Daarbij wordt de dataset verdeeld in meerdere delen, waarbij het algoritme op elk van de delen wordt getraind om zo meerdere modellen te krijgen. Deze methode wordt ook gebruikt om de aanwezigheid van vooral overfitting te valideren.
  • Wanneer het model perfect presteert op de data waarmee het getraind is, maar belabberd op nieuwe data, dan weet je dat je te maken hebt met overfitting.
48
Q

Wat zijn ongebalanceerde datasets?

A
  • Bij classificatie is het een gebruikelijke uitdaging voor datawetenschappers dat de ene groep of klasse significant sterker vertegenwoordigd is dan de andere.
49
Q

Accuracy Paradox

A
  • Denk aan de situatie dat de dataset gegevens bevat van 80 normale e-mails, en slechts van 20 spamberichten. Wat nu kan ontstaan heet ook wel de Accuracy Paradox, een model kan overfitten op de grootste groep waardoor die groep goed voorspeld wordt, maar de kleine groep totaal niet
50
Q

Oplossingen accuracy paradox?

A
  • Het gebruik van meer data → betere verdeling.
  • Andere methoden: het toepassen van resampling (om zelf voor balans te zorgen), het toevoegen van zogenaamde synthetische voorbeelden of samples, of het gebruik van andere algoritmes (bv. een beslissingsboom of decision tree).
51
Q

Tip bij gesuperviseerd leren?

A

Tip: Vraag altijd aan de data-analist wat hij of zij heeft gedaan om het model te valideren, of er een training en een test steekproef zijn gemaakt. Wanneer de uitkomsten van het model immers niet (goed) zijn gevalideerd, is de kans groot dat de voorspellingen weinig nuttig zullen zijn in de praktijk.

52
Q

Wat is ongesuperviseerd leren?

A
  • Hierbij worden de labels of juiste antwoorden niet meegeleverd → het systeem moet zelf structuur aanbrengen in de data, onder een idee te hebben wat die data voorstellen. Het algoritme zoekt naar overeenkomsten in de data en maakt op basis daarvan verzamelingen:
    • Visualisatie
    • Clustering
53
Q

Waarom hebben we ongesuperviseerd leren?

A
  • Omdat het labelen van ongestructureerde trainingsdata een arbeidsintensief en vaak duur proces is – wat een belangrijk nadeel vormt van gesuperviseerd leren – ontwikkelde men andere methoden om algoritmes te trainen.
54
Q

Wat is visualisatie?

A

Visualisatie: waarbij soortgelijke items bij elkaar worden gezet en ongelijksoortige items verder uit elkaar

55
Q

Clustering?

A

Clustering: waarbij we gegevens gebruiken voor het identificeren van groepen of “clusters” van items die op elkaar lijken, maar verschillen van gegevens in andere clusters.

56
Q

Voorbeeld ongesuperviseerd leren supermarkt

A
  • Supermarktketens die via klantenkaarten gegevens verzamelen over het aankoopgedrag van hun klanten. Om meer inzicht te krijgen in de klant kan een winkel gegevens visualiseren door middel van een grafiek waarin iedere klant met een stip wordt weergegeven en waarin klanten die vaak dezelfde producten kopen dichter bij elkaar zijn gezet dan klanten die andere producten kopen.
  • Maar de winkel kan ook clustering toepassen voor het verkrijgen van een reeks klantcategorieën, zoals “liefhebbers van gezond voedsel met een smalle beurs”, “liefhebbers van exclusieve vis”, “zes dagen van de week frisdrank en pizza”, en ga zo maar door.
57
Q

Gaat Machinaal Leren de clusters ook namen geven?

A
  • Let wel: de methode voor machinaal leren deelt klanten alleen in clusters in, maar draagt niet automatisch de benamingen voor de clusters aan (zoals “liefhebbers van vis”, en dergelijke). Die taak is aan de gebruiker.
58
Q

Voorbeelden Netflix bij ongesuperviseerd leren?

A
  • Zij maken ook gebruik van dit soort systemen om aanbevelingen te maken → Het systeem verdeelt de klanten in groepen die op elkaar lijken, en raadt jou producten aan die andere mensen in jouw groep vaker kopen.
  • Netflix gebruikt daarbij niet de traditionele demografische segmenten die door Nielsen et al. worden gehanteerd (zoals leeftijd, geslacht, locatie, enzovoort). Het heeft een eigen, verfijnde segmentatie opgebouwd rond inhoudsgebruik, waarbij het gebruikers op basis van hun kijkgewoonten ingedeeld heeft in ruwweg 2.000 micro-clusters, en het is deze indeling die ten dele het kijkalgoritme van Netflix aanstuurt.
59
Q

Wat is bekrachtigingsleren?

A
  • Soms kennen we het gewenste einddoel van een probleem, maar weten we niet hoe we daar optimaal geraken → reinforcement learning = bekrachtigingsleren of versterkend leren.
  • We geven het systeem geen voorbeelden, maar leert het wat het moet doen door fouten te maken (waarvoor het wordt bestraft), of goede dingen te doen (waarvoor het wordt beloond). Het systeem ontdekt zelf welke strategie het beste resultaat oplevert om tot het doel te komen.
60
Q

Hoe gaat bekrachtigingsleren in zijn werk?

A
  • Het systeem gaat daarbij een interactie aan met de omgeving en ontvangt een beloningsstatus afhankelijk van hoe het presteert. Omgekeerd krijgt het een straf voor foute prestaties. Met elke poging leert het systeem beter en beter wat werkt en wat niet.
  • Een nieuwe actie (exploratie) weegt het algoritme af ten opzichte van eerder opgedane kennis (exploitatie). Na een tijd neemt het systeem na verloop van tijd beslissingen om de beloning te maximaliseren en de straf te minimaliseren met behulp van dynamische programmering.
61
Q

Verschil met leren onder supervisie en reinforcement leren?

A
  • Dus: bekrachtigingsleren verschilt van leren onder supervisie doordat het niet nodig is dat gelabelde input / output-paren worden gepresenteerd en dat suboptimale acties niet expliciet moeten worden gecorrigeerd. In plaats daarvan ligt de focus op het vinden van een balans tussen verkenning (van onbekend terrein) en exploitatie (van huidige kennis).
62
Q

Wanneer gebruiken we bekrachtigingsleren?

A
  • Allerlei contexten en disciplines: speltheorie, operationeel onderzoek, informatietheorie, en zwermintelligentie.
  • Het systeem van DeepMind (overgenomen door Google) dat in 2016 de Zuid-Koreaan Lee Sedol (wereldwijd geroemd als de beste speler van het strategische bordspel Go) versloeg. Toen het algoritme begon met Go spelen, snapte het niet hoe het spel werkte.
    • Maar door het heel wat keren opnieuw te spelen, en doordat het systeem beloond werd wanneer het won, en bestraft wanneer het verloor, leerde het uiteindelijk het spel te spelen, en dat zelfs beter dan mensen.
63
Q

Wat zijn feed-forward neurale netwerken?

A
  • Een feedforward neuraal netwerk (FFNN) is een artificieel neuraal netwerk waarin verbindingen tussen de knooppunten geen cyclus vormen. Het feedforward neurale netwerk was het eerste en eenvoudigste type kunstmatige neurale netwerk dat werd bedacht.
64
Q

Hoe beweegt de informatie in een feed-forward neuraal netwerk?

A
  • In dit netwerk beweegt de informatie slechts in één richting - voorwaarts, nooit achteruit - van de invoerknooppunten, door de verborgen knooppunten (indien aanwezig) en naar de uitvoerknooppunten. Er zijn geen cycli of lussen in het netwerk.
65
Q

Illustratie van een FFNN?

A
  • Hier zien we een volledig geconnecteerd FFNN: de output van elk neuron wordt gestuurd naar alle neuronen in de volgende laag. De gewichten van die connecties (“w”) en (“v”) worden aangeleerd tijdens het trainen dat gesuperviseerd verloopt.
66
Q

Met welke soort data kan je werken met een FFNN?

A
  • Er wordt dus met gelabelde trainingsdata gewerkt, waarbij het systeem inputvoorbeelden krijgt samen met de corresponderende output of oplossing. Eenmaal het systeem getraind is, hebben alle connecties hun finale gewicht en kan er nieuwe input worden aangeboden.
67
Q

Wat zijn recurrente neurale netwerken?

A
  • Een terugkerend of recurrent neuraal netwerk (RNN) is een type van artificiële neurale netwerken die vorige inputs kunnen meetellen in hun predictie van de huidige toestand van het systeem, of eenvoudiger gezegd: netwerken waarbij een signaal kan terugkeren in het neuraal netwerk.
68
Q

Verschil recurrerente neurale netwerken en FFNN’s?

A
  • Afgeleid van FFNN’s, maar kunnen hun interne toestand (geheugen) gebruiken om reeksen van invoer met variabele lengte verwerken → Hierdoor krijgt het netwerk extra geheugen en kunnen patronen bijvoorbeeld makkelijker aangeleerd worden.
69
Q

Voor wat kunnen we recurrerende neurale netwerken gebruiken?

A
  • Zins- of spraakherkenning: Bij het inlezen van nieuwe woorden van een zin, kan er immers rekening worden gehouden met de informatie over de vorige woorden. Deze manier van modelleren maakt het mogelijk om de syntax en semantiek (d.i. de betekenis van de zin) te modelleren.
70
Q

Illustratie recurrerente netwerken,

A
71
Q

Wat zijn convolutionele neurale netwerken?

A
  • Een convolutioneel neuraal netwerk (CNN) is een type diep neuraal netwerk waarin - in tegenstelling tot bij een volledig verbonden neuraal netwerk of fully connected network - niet alle neuronen met elkaar zijn verbonden.
72
Q

Waarom heb je een CNN nodig?

A
  • Voor kleine afbeeldingen en eenvoudige taken (zoals het herkennen van een cijfer of letter) werken volledig verbonden neurale netwerken prima. Maar voor meer gesofisticeerde visuele taken, zoals objecten op foto’s herkennen, heb je niet veel aan een input van 28x28 pixels, zoals bij handschriftherkenning.
    • Een foto is immers veel groter en er staan vaak verschillende objecten op. Als je dat met dezelfde methode zou benaderen als het herkennen van cijfers, dus alle neuronen met elkaar verbonden, dan zou je een absurd complex neuraal netwerk krijgen.
  • Voor een foto van 600 bij 400 pixels met laten we zeggen één tussenlaag van vijftig neuronen, zou je al twaalf miljoen variabelen voor de eerste laag moeten doorrekenen. Dan hebben we het nog niet over diepere lagen en de uitvoer gehad; dan zou het netwerk nog veel complexer worden.
73
Q

Vergelijking fully connected, locally connected en convolutional?

A

*

74
Q

Wat is een convolutie?

A
  • Hierbij worden 2 functies gecombineerd tot een nieuwe functie en dat maakt het netwerk geschikter voor zijn taak.
  • Voorbeeld foto:
  • Over het algemeen heeft een pixel linksboven in een foto immers weinig te maken met een pixel rechtsonder. Bij CNN’s worden afbeeldingen opgedeeld in kleine rasters van goed behapbare stukjes. Zo worden de bij handschriftherkenning gebruikte vierkantjes van 28x28 pixels verder opgedeeld in gebiedjes van 5x5 pixels (local receptive fields).
  • Die 25 pixels staan in verbinding met slechts één neuron in de eerste verborgen laag neuronen en delen bovendien de parameters voor de weging van de input. Voor elk volgend neuron in de eerste verborgen laag schuift het local receptive field één pixel op en vormt zo een eerste detectielaag van 24x24 neuronen.