Short history of Artificial intelligence
Turing test
- mens/computer zetten er vragen aan stellen en mens/computer antwoord
- Afhankelijk van de antwoorden moeten ze raden of het een machine of mens is
- Kan een machine een mens nabootsen -> intelligente machine
Perceptron
Perceptron : een mechanisme dat probeert één menselijke hersencel na te bootsen
- Hoe werkt het?
Het werkt op basis van een bepaalde grenswaarde , is invoer groter dan deze ->
geeft een signaal, is deze kleiner dan niet
- Voorbeeld
Stel dat een machine moet bepalen of er een gat in een postkaart zit. In plaats van
haar een stappenplan te geven, start ze met een willekeurig programma. Door haar
vervolgens telkens voorbeelden te tonen met de aanduiding "juist" of "fout" past
ze haar programma stap voor stap aan. Zo leert de machine.
- Verschil met vorige
Vroeger schreef je een expliciet stappenplan (een algoritme). Bij een perceptron is
dat niet nodig: voldoende voorbeelden zijn genoeg om de machine iets bij te
brengen.
Belangrijk omdat het perceptron de basis Vormt van ‘deep learning’
Eliza : eerste chatbot
- Het werkte volledig op basis van handgeschreven regels : de programmeur bepaalde
op voorhand welke antwoorden er gegeven werden op welke invoer. Hoewel het er voor
de gebruiker er echt uitziet begrijpt het programma niets, het matcht gewoon patronen
en gaf voorgeprogrammeerde reacties terug
70’s AI winter -> teleurstelling na beloftes over Ai die niet waargemaakt werden
80’s expert systems
Hand-coded human knowledge : codeer de kennis van
menselijke experts in een system zodat een machine die
kennis kan toepassen.
Example of the Mycin system
Expert systemen
- We steken domeinkennis in het systeem->bijvoorbeeld medische kennis
- Het systeem werkt op basis van regeld die door mensen worden opgesteld, bv als
symptoom x aanwezig is dan is diagnose Z waarschijnlijk
- Het kon ook kansen en onzekerheden inschatten
beperkingen:
- Hoe formuleer je kennis correct?
- Hoe ga je om met tegenstrijdige regels?
,90’s Machine Learning
Machine Learning is een grote verschuiving in hoe we computers laten werken. In plaats van
een computer een expliciet stappenplan te geven, laat je haar zelf patronen ontdekken uit
data. Dit gebeurt via algoritmes die automatisch zoeken naar het beste model.
- 2 belangrijke paradigma’s
• Supervised learning. : op basis van voorbeelden willen we
dat de machine leert wat het label is dat ze er aan
moeten toekennen
" Je geeft de machine voorbeelden met de juiste labels
" De machine leert een model op basis van die voorbeelden
" Dat model gebruik je daarna om een nieuwe ongeziene voorbeelden te
classificeren.
• Reinforcement learning : in plaats van voorbeelden met correcte antwoorden te
geven laat je de machine zelf experimenteren. Ze krijgt beloningen voor goede
acties en straffen voor de slechte. Zo leert ze een strategie die verder gaan dan
louter menselijk gedrag kopiëren, ze kan eigen oplossingen ontdekken.
Machine Learning : How?
- Algoritmes (step by step) om een goed model te vinden
- Voorbeeld : health indicator
• Je verzamelt meetbare kenmerken van patiënten
(leeftijd, bloeddruk, gewicht...) en bijhorende
uitkomsten. Het algoritme leert dan een model dat zo
goed mogelijk overeenkomt met die data. Daarna
kan je dat model gebruiken om voorspellingen te
maken voor nieuwe patiënten.
ander voorbeeld : tax fraude
Je verzamelt gegevens van belastingaangiftes, met aanduiding welke al dan niet frauduleus
waren. Het model leert welke kenmerken typisch zijn voor fraude, en kan daarna nieuwe
gevallen beoordelen.
Learning Models by Optimizing
Een model begint met willekeurige gewichten (parameters). Het algoritme past die gewichten
stap voor stap aan om de fouten te minimaliseren. Dit proces heet optimalisatie: de machine
neemt de manuele zoektocht naar de beste instelling over, en het model wordt telkens beter
naarmate het meer stappen zet.
Supervised learning : video
- Starten met random gewichten toe te voegen
- Dan gaan we voorbeelden creëren zodat deze gewichten niet meer random zijn
- Nadeel hiervan
• Machine gaat nabootsen wat een gewone speler doet, geen nieuwe technieken
aanleren.
90’s machine learning : Reinforcement learning
Learning from data vs learning from an environment
Reinforcement learning : we hebben ons model deze kan een actie
doen waardoor de omgeving kan veranderen, het programma kan dit
,waarnemen en je kan een reward/penalty krijgen (extra punt, - ) deze ga je waarnemen en zo
gaat hij het model aanpassen om meer rewards te krijgen
- Voordeel : aanleren wat een beter resultaat geeft in bepaalde situaties -> nieuwe
technieken
Toepassingen ervan : een computer die instaat was om mensen te verslaan
Gebruikte technieken
- Supervised learning
- Reinforcement learning :Bv inschatten hoe goed een bordopstelling is
- Watson -> over taal , groundbreaking omdat ze de taal en de vraag goed moeten kunnen
begrijpen (analyse van taal)
- AlphaGo -> echte doorbraak, spel wordt gespeeld en de computer verslaagt de
wereldkampioen
- Ook deepblue, watson
What changed?
2 grote doorbraken
- Hardwarematig : nieuwe en krachtige hardware
• GPU : graphics processing unit bedoelt om grafische weergaven sneller te maken
(spelletjes etc)
• Ook goed voor de neurale netwerken in goede banen te leiden en te versnellen.
• Rekenkracht is snel vooruit gegaan
- Meer data beschikbaar
• World wide web
• Bedrijven houden veel meer data bij
Revival of neural networks
Aantal inputs : sensoren (ogen nemen dingen waar) gaan naar
andere neuronen.
Deep neural networks
De rekenkracht wordt telkens groter, deep neural networks ->
very deep neural networks
- Vb neural networks for computer vision : meer data wordt als maar belangrijker, de
modellen die meer data gebruiken presteren beter, alles met meer parameters is beter
Enormous jumps in performance
- Algoritmes werken op de datasets
- Jaar na jaar zien we de toenamens, worden beter en een snellere evolutie
Pre-training
Belangrijk idee : een model eerst vooraf trainen op een
grote hoeveelheid data en het daarna verfijnen voor een
specifieke taak.
Voorbeeld : gezichtsherkenning
Je kan een groot aantal gezichten gebruiken, bijvoorbeeld
van Facebook om een model te trainen.
, - encoder = neuraal netwerk dat de invoer (het gezicht) omzet naar een compactere
voorstelling
- In het middel zit een laag met een beperkt aantal neuronen. Dit vormt de bottleneck.
- De decoder is een neuraal netwerk dat probeert om vanuit die compacte voorstelling
opnieuw het oorspronkelijke beeld te reconstrueren.
- Alle informatie moet door die bottleneck passeren. Daardoor leert het model enkel de
belangrijkste kenmerken te bewaren die nodig zijn om het gezicht correct te herstellen.
- Het model onthoudt dus niet elke pixel afzonderlijk, maar leert compactere eigenschappen
zoals
o De vorm van de neus
o De stand van de ogen
o De huidskleur
- Op die manier maakt het model een beschrijving met een lagere compelxiteit : de info
blijft behouden maar in een veel beknoptere vorm
Stap 2 : finetune on actual task
- Op basis van deze beknopte beschrijving mensen gaan herkennen en niet meer op
basis van de foto -> eenvoudiger om te leren van een beknopte beschrijving idpv van
een foto
Grote voordeel van deze pre-training
- Je hebt geen correcte labels meer nodig voor alle afbeeldingen (wat duur is)
- Het model kan eerst leren uit willekeurige of ongelabelde foto’s
- Tijdens deze fase leert het via bottleneck automatisch nuttige kenmerken en
patronen uit de beelden te halen.
- De compacte voorstelling die in de middelste laag ontstaat kan daarna gebruikt
worden als basis voor verdere training of verfijning op een specifieke taak.
2020s : Generative AI
= artificial intelligence capable of generating text, images and large language model
Taalmodel
- pre-trainen zodanig dat het de taal leert begrijpen door te voorspellen wat het
volgende woord gaat sijn
o Input : deel van een zin
o Output : wat is een logisch volgende woord
- We hebben heel veel data waarop we kunnen gaan pre-trainen om de machine te
kunnen leren wat het volgende woord zou kunnen zijn
2020s : Multi-modal AI
Modaliteit : soort van input
- Gesprekken
- Foto’s
- Muziek
- Tekst
- Deze dingen aan elkaar verbinden = multi-model AI
- Interne representatie van wat die waarneemt in prenten of tekst -> deze met elkaar gaan
verbinden , overlappen
Reinforcement learning with human feedback