Hoe werkt (generatieve) AI?

Hoe werkt (generatieve) AI?

Een les over ChatGPT en tekst generatie.

1 / 36
volgende
Slide 1: Slide
newEditorWiskundeNatuur, Leven en Technologie+8Middelbare schoolvmbo t, mavo, havo, vwoLeerjaar 1-6

In deze les zitten 36 slides, met interactieve quizzen en tekstslides.

time-iconLesduur is: 50 min
Dit is niet oké

Introductie

In deze interactieve les duiken de leerlingen in de fascinerende wereld van generatieve AI! We beginnen met een uitleg over wat generatieve AI precies is. Daarna volgen ze stap voor stap het proces waarmee AI tot antwoorden komt, en leren ze hoe AI patronen herkent. Tot slot ontdekken ze de geheimen achter waarom AI soms fouten maakt.

Instructies

Voorkennis van leerlingen
Leerlingen hebben geen specifieke voorkennis nodig.

Voorbereiding docent
- Lezen van docent instructies
- Printen van werkbladen

Leerdoelen/vaardigheden
Na deze les:
- kun je omschrijven wat AI is.
- kun je de vijf stappen van (generatieve) AI omschrijven.
- kun je opnoemen waardoor een (generatief) AI-model fouten kan maken.
- kun je in grove lijnen omschrijven hoe complexe modellen zoals ChatGPT, Microsoft's Bing Chat, en Google Gemini werken. 

Aansluiting curriculum
Deze les sluit aan bij de volgende onderwerpen:
- Digitale geletterdheid: AI

Onderdelen in deze les

Hoe werkt (generatieve) AI?

Een les over ChatGPT en tekst generatie.

Deze slide heeft geen instructies

Informatie voor de docent

Deze lessenserie bestaat uit drie lessen die ingaan op (generatieve) AI, met een focus op text generatie: 

Les 1: Wat is (generatieve) AI en hoe werkt het?

Les 2: Hoe kunnen we het beste antwoord krijgen op onze vragen?

Les 3: Wat kan er mis gaan met (generatieve) AI?


In deze les:

We gaan we een kijkje nemen naar hoe generatieve AI werkt. De leerlingen gaan zelf aan de slag als AI om text te genereren. 

Neem een kijkje in het docentenhandboek voor een uitgebreide uitleg over hoe je deze les kan inzetten.







Deze slide heeft geen instructies

Informatie voor de docent

Vooraf

Lees vooraf de notities bij de dia's door en print de bijbehorende werkbladen (één werkblad per tweetal).


Benodigdheden

Iconen


Zet het vinkje 'toon bij leerling' aan

Toon notities bij elke dia

Navigeren door de les

Vergroot een afbeelding

Klik hier

Hotspot met meer informatie

Laptop voor elke leerling

Uitgeprinte werkbladen

Deze slide heeft geen instructies

Leerdoelen

Na deze les...

- kun je omschrijven wat AI is.

- kun je de vijf stappen van (generatieve) AI omschrijven.

- kun je opnoemen waardoor een (generatief) AI-model fouten kan maken.

- kun je in grove lijnen omschrijven hoe complexe modellen zoals ChatGPT, Microsoft's Bing Chat, en Google Gemini werken. 








Deze slide heeft geen instructies

Deze video geeft een korte introductie over AI met enkele voorbeelden. Het doel is om eerst breed AI te belichten.

Wat is generatieve AI?

Generatieve AI is een subcategorie van Artificial Intelligence die zich focust op het maken van nieuw materiaal. 


Denk aan: het genereren van tekst, video, of muziek! ChatGPT is dus een voorbeeld van generatieve AI.

Deze slide zoomt in op generatieve AI. Leg uit dat generatieve AI is het maken van elk type nieuw materiaal. Denk dus ook aan muziek en beeldmateriaal.

Hoe werkt generatieve AI?

Generatieve AI is gebouwd om nieuwe content te creëren, maar hoe leren ze dit dan?


Data verzamelen: 

- Trainen op grote hoeveelheden gegevens, zoals boeken, artikelen, of afbeeldingen.


Modellen gebruiken:

- Speciale modellen om de structuur van bijvoorbeeld taal of beelden te begrijpen.

- Leren patronen herkennen, net als dat wij leren door te oefenen.








Patronen begrijpen:

- Kijken naar hoe woorden of beelden samenhangen. Bijvoorbeeld, het leert dat "boek" vaak samen met "lezen" voorkomt.


Creatief zijn:

- Nieuwe dingen bedenken door de patronen die het heeft geleerd toe te passen.

Deze slide legt uit hoe deze nieuwe content wordt gegenereerd. 


Data verzamelen: Hoe meer data je hebt hoe meer je er van kan leren. Voor chatGPT is bijvoorbeeld het hele internet aan tekst afgezocht. 


Modellen gebruiken: Maak leerlingen bewust van het gebruik van modellen in generatieve AI. 

Tip: maak eventueel de vergelijking met hoe een kind leert. Een kind krijgt als het jong is te maken met een omgeving van taal en leert hiervan. 


Patronen begrijpen:

Een model begrijpt dat sommige woorden vaak in dezelfde context worden gebruikt. Dit is de samenhang van woorden. 


Creatief zijn:

De laatste stap is het toepassen van het model om nieuw materiaal te genereren. 

Opdracht: tekst genereren

Jullie gaan nu in de schoenen van een chatbot stappen! 


Jullie krijgen een vraag van een gebruiker over het favoriete eten van Lieke. Jullie antwoord begint met 'Het favoriete eten ...'. In deze opdracht gaan jullie dit antwoord afmaken. 


De stappen die jullie gaan doorlopen zijn:

Stap 1: Data verzamelen

Stap 2: Data voorbereiden

Stap 3: Trainen

Stap 4: Genereren

Stap 5: Output geven








We weten nu hoe generatieve AI in grote lijnen werkt. Om nog verder in te zoomen op hoe een virtuele chatbot zoals ChatGPT, Microsoft's Bing Chat en Google Bard werkt, gaan jullie zelf in de schoenen van een chatbot stappen! 


Jullie krijgen een vraag van een gebruiker over het favoriete eten van Lieke. Jullie antwoord begint met 'Het favoriete eten ...'. In deze opdracht gaan wij dit antwoord afmaken. Hiervoor zullen we alle stappen van een chatbot doorlopen. 

Stap 1: Data verzamelen

Trainingsdata is een verzameling voorbeelden waar een AI van leert. Dit kan van alles zijn: teksten, plaatjes, geluiden, en meer. Door deze data te bestuderen, begrijpt de AI patronen en structuren. Net zoals jij patronen leert in wiskunde of grammatica.


Belangrijk voor trainingsdata: veel, diverse en hoge kwaliteit data.


Slechte of eenzijdige data kan leiden tot: beperkte of verkeerde output. 



Stel je voor dat je een robot hebt die verhalen kan schrijven. Hoe leert die robot dat? Hier komt trainingsdata om de hoek kijken. Trainingsdata is een verzameling voorbeelden waar een AI van leert. 


Bij generatieve AI, die bijvoorbeeld teksten of beelden kan maken, is het cruciaal dat de AI leert van veel verschillende voorbeelden. Dit kan van alles zijn: teksten, plaatjes, geluiden, en meer. Door deze data te bestuderen, begrijpt de AI patronen en structuren. Net zoals jij patronen leert in wiskunde of grammatica.


Het belang van goede trainingsdata is groot. Als de data divers en van hoge kwaliteit is, kan de AI creatiever en nauwkeuriger werken. Slechte of eenzijdige data leidt tot een beperkte en soms zelfs verkeerde output. Denk aan het leren van wiskunde met een boek vol fouten: je resultaten zullen ook niet kloppen.

 Vraag

Welke data zouden we willen gebruiken om AI zoals ChatGPT te trainen?

A

Leesboeken

B

Een verzameling met veel types tekst

C

Medische websites

D

Social media berichten

Je wil het liefst zo divers mogelijke data hebben. Als je alleen maar data zou gebruiken in je algoritme over sprookjes, dan zou je algoritme het verschil niet kunnen weten tussen een sprookje en het echte leven.

Stap 1: Data verzamelen

We willen tekst voorspellen: dus we willen trainen op teksten.


Kleine tekst voor deze opdracht - wij kunnen niet zo snel rekenen als een computer.


We hebben de volgende trainingsdata die wij kunnen gebruiken voor het trainen.


 

In deze opdracht willen we trainingsdata voor een chatbot, dus zullen we een voorbeeldtekst gebruiken. Omdat wij mensen zijn en niet zo snel kunnen rekenen als een computer zullen we maar klein tekstje gebruiken om op te trainen.


We hebben de volgende trainingsdata die wij kunnen gebruiken voor het trainen.

 Vraag

Wat denk je dat het favoriete eten is van Lieke als je kijkt naar de trainingsdata?

Typ hier je antwoord:

Ga eventueel een slide terug als de afbeelding niet goed leesbaar is. Laat de leerlingen dan het antwoord bedenken voordat je weer terug gaat naar het invoerveld. 

Stap 2: Data voorbereiden

Voor je een chatbot kunt trainen, moet je data voorbereiden. 


Voor ons algoritme gaan we een paar stappen uitvoeren, maar een echte chatbot kan nog veel meer stappen maken in de voorbereiding van de data!


Waarom doen we dit?:

- Om de chatbot een duidelijk en gestructureerd beeld 

te geven van de tekstdata. 

- Het verbetert de nauwkeurigheid en relevantie van 

de antwoorden.

- Maakt de dataset bruikbaarder.

 

Voor je een chatbot kunt trainen, moet je data voorbereiden. Een belangrijk onderdeel hiervan is het opschonen van data en het toepassen van tokenization. Maar wat betekent dit precies? Voor ons algoritme gaan we een paar stappen uitvoeren, maar een echte chatbot kan nog veel meer stappen maken in de voorbereiding van de data!


Waarom is dit eigenlijk nodig?

Het opschonen van data en toepassen van tokenization zorgen ervoor dat de chatbot een duidelijk en gestructureerd beeld krijgt van de tekstdata. Dit verbetert de nauwkeurigheid en relevantie van de antwoorden die de chatbot kan geven. Het maakt de dataset niet alleen bruikbaarder, maar zorgt er ook voor dat de chatbot slimmer en effectiever wordt in het begrijpen en reageren op gebruikersvragen.

Stap 2: Data voorbereiden

Opschonen van data

  1. Verwijderen van onnodige informatie: Verwijder zaken als spelfouten, dubbele vragen, en irrelevante informatie. 

  2. Normaliseren van tekst: Je maakt alles kleine letters, verwijdert leestekens en zorgt voor een consistente schrijfwijze van woorden. Zo worden "HOOFDLETTERS", "Hoofdletters", en "hoofdletters" allemaal hetzelfde behandeld.


 

Opschonen van data


Verwijderen van onnodige informatie: Tijdens het opschonen verwijder je zaken als spelfouten, dubbele vragen, en irrelevante informatie. Dit maakt de dataset overzichtelijker en zorgt ervoor dat de chatbot leert van correcte en relevante voorbeelden.


Normaliseren van tekst: Dit houdt in dat je alle tekst naar een uniforme vorm omzet. Bijvoorbeeld, je maakt alles kleine letters, verwijdert leestekens en zorgt voor een consistente schrijfwijze van woorden. Zo worden "HOOFDLETTERS", "Hoofdletters", en "hoofdletters" allemaal hetzelfde behandeld.

Stap 2: Data voorbereiden

Nu jullie!


Jullie krijgen 3 minuten. Voer de volgende stappen uit in tweetallen:

  1. Pak jullie uitwerkblad 'Stap 2: Data voorbereiden' erbij en maak de opdracht 'Data normaliseren'.

  2. Normaliseer de eerste twee zinnen van de trainingstekst:

    - verwijder hoofdletters

    - verwijder leestekens

3

minute

00

second

Laat leerlingen de eerste twee zinnen normaliseren. De leerlingen moeten alle hoofdletters en leestekens verwijderen. 


Hier komt het volgende resultaat uit:

lieke is zestien jaar en zit op het vlier in deventer hier heeft ze een leuke vriendengroep waar ze af en toe wat eten van steelt


Stap 2: Data voorbereiden


Tokenization is het opdelen van tekst in kleinere eenheden. Vaak woorden of zinnen, dit worden tokens genoemd. Deze stap helpt de chatbot beter de structuur van de tekst te begrijpen. 


Zo werkt het:

  1. Woord-tokenization: tekst opgesplitst in afzonderlijke woorden. Je geeft dit aan door komma's toe te voegen tussen elk woord.

  2. Zin-tokenization: Soms is het nuttig om de tekst in zinnen te splitsen, vooral bij langere teksten. Dit helpt de chatbot om zinnen in hun context te begrijpen. Dit geef je aan door de "[ ]" tekens. 




 

Tokenization

Tokenization is het proces waarbij tekst wordt opgedeeld in kleinere eenheden, vaak woorden of zinnen, die tokens worden genoemd. Dit helpt de chatbot om de structuur en betekenis van de tekst beter te begrijpen. Zo werkt het:


Woord-tokenization: Hierbij wordt de tekst opgesplitst in afzonderlijke woorden. Bijvoorbeeld, de zin "Hoe laat is het?" wordt getokenized als ["Hoe", "laat", "is", "het"]. Dit helpt de chatbot om elk woord afzonderlijk te analyseren.


Zin-tokenization: Soms is het nuttig om de tekst in zinnen te splitsen, vooral bij langere teksten. Dit helpt de chatbot om zinnen in hun context te begrijpen.

Stap 2: Data voorbereiden

Nu jullie!


Jullie krijgen 3 minuten. Voor de volgende stappen uit in tweetallen:

  1. Pak op jullie uitwerk blad 'Stap 2 - tokenization' erbij.

  2. Voer tokenization uit voor:

    - woorden

    - zinnen

3

minute

00

second

Laat de leerlingen de stap 'Tokenization' uitvoeren voor de eerste twee zinnen. In de slide hierna komt het antwoord voor de hele tekst.

Stap 2: Data voorbereiden

Als je alle stappen doorloopt voor de hele tekst krijg je de volgende data:


[lieke, is, zestien, jaar, en, zit, op, een, middelbare, school, in, amsterdam]

[hier, heeft, ze, een, leuke, vriendengroep, waar, ze, af, en, toe, wat, eten, van, steelt]

[alles, is, van, lieke]

[pasta, tot, taart, het, komt, allemaal, bij, haar, terecht]

[de, standaard, lunch, die, kim, meeneemt, is, pasta, dus, daar, is, overschot, aan]

[helaas, is, pasta, het, minst, favoriete, eten, van, lieke]

[haar, favoriet, is, de, chocolade, taart, die, tim, meeneemt]


Deze slide heeft geen instructies

Stap 3: Trainen

Trainen door middel van frequentieanalyse: welke woorden worden vaak door andere woorden opgevolgd. 


Dit proces helpt de chatbot om patronen in tekst te herkennen en voorspellingen te doen over het volgende woord in een zin. 


Jullie gaan een kijkje nemen hoe jullie dit zouden kunnen doen voor onze data. 



Bij het trainen van een simpele chatbot gebruiken we frequentieanalyse om te begrijpen welke woorden vaak door andere woorden worden gevolgd. Dit proces helpt de chatbot om patronen in tekst te herkennen en voorspellingen te doen over het volgende woord in een zin. We gaan een kijkje nemen hoe we dit zouden kunnen doen voor onze data. 

Stap 3: Trainen

Je kunt nu analyseren hoe vaak een bepaald woord door een ander woord wordt gevolgd. 


Voorbeeld:

Je ziet in de tekst twee maal het woord 'en'. Eén keer wordt het opgevolgd door 'zit' en één keer het woord 'toe'. 

Bij een frequentie analyse zoek je alle worden op die hetzelfde zijn. In het voorbeeld is dit gedaan voor het woord 'en'. Vervolgens ga je simpelweg tellen hoe vaak welk woord hem opvolgt. 

Als je dit voor elk woord doet in je tekst kun je een hele grote tabel maken. 


Horizontaal zien we het eerste woord en verticaal zien we het opvolgende woord. 


Als je dit gaat invullen voor het woord 'en', mogen we het cijfer '1' noteren bij 'zit' en 'toe'. 


De data hiernaast is een fictief voorbeeld, dus niet hetzelfde als op jullie werkblad.

Stap 3: Trainen

Als je de frequentieanalyse uitvoert voor de hele tekst krijg je een super grote tabel. Hierin kun je visualiseren hoe woorden tot elkaar in context staan. Een klein gedeelte van dit overzicht staat op deze slide.  

Nu jullie!

Pak het werkblad erbij, er is al een deel ingevuld. Jullie gaan in tweetallen een frequentie-analyse doen voor de dik gedrukte woorden.


Voor elk woord

- Zoek alle instanties op in de hele tekst.

- Tel welke woorden daarop volgen.

- Schrijf je resultaten op in het overzicht.






Goed om te weten 

Als een woord aan het eind van een zin staat, wordt hij niet opgevolgd door een ander woord. 


Stap 3: Trainen

Leerlingen moeten nu de tabel verder aanvullen op het werkblad. 


Dingen om op te letten

Leerlingen hoeven geen 0 te noteren als er geen verband is gevonden in de frequentie analyse.

Leerlingen hoeven alleen de woorden te doen die dik gedrukt zijn.

Woorden aan het eind van een zin, zoals 'Amsterdam', hebben geen opvolgende woorden.

Het antwoordenblad is toegevoegd aan deze les.

Stap 4: Genereren

Jullie kunnen nu simpelweg de rest van ons antwoord voorspellen door te kijken wel woord het vaakst het laatste woord wat we hebben opgeschreven opvolgt. 


Neem als voorbeeld de vraag en ons eerste deel van ons antwoord hier beneden en een deel van een schema. We zien hier dat na 'is' het vaakst 'zestien' komt, dus het juiste antwoord is 'Lieke is zestien'.



Leerlingen moeten nu in de aangevulde tabel op het werkblad kijken welke woorden nodig zijn om de zin af te maken. 


Gebruik het voorbeeld op deze slide om het principe uit te leggen. 


Voorbeeld:

Als je 'is' opzoek bij het eerste woord zie je dat er een 4 genoteerd staat bij zestien en een 2 bij aardig. Dit houd in dat het woord 'zestien' het vaakst na 'is' komt en hier het woord zou zijn wat we selecteren.

Doe nu hetzelfde voor de originele vraag.


Jullie krijgen twee minuten. In dezelfde tweetallen:

  1. Bekijk het begin van de reactie 'Het favoriete eten ...'. 

  2. Bedenk de volgende vier woorden.


Stap 4: Genereren

2

minute

00

second

Laat de leerlingen dit nu doen voor de volgende vier woorden door het ingevulde werkblad te gebruiken.


Het antwoord:

Het favoriete eten van Lieke is pasta. 

 Vraag

Stap 5: Output geven - Welk antwoord gaan jullie de gebruiker geven?

Typ hier je antwoord:

Deze slide heeft geen instructies

Resultaat

Het favoriete eten van Lieke is natuurlijk pasta!


PASTA???? Huh? Dat klopt niet?? In de tekst stond dat het favoriete eten van Lieke de chocoladetaart van Tim was. 

Je meeste leerlingen zullen invullen dat het juiste antwoord 'pasta' is. Dit is alleen niet correct als je naar de trainingstekst kijkt. 

 Vraag

Jullie hebben niet het antwoord gekregen wat jullie hadden verwacht. Bedenk waar het mis had kunnen gaan. Geef zo veel mogelijk redenen!

Typ hier je antwoord:

Laat leerlingen eerst zelf nadenken over waar het fout had kunnen gaan.

Waar is het mis gegaan?

Het zou op veel punten mis kunnen zijn gegaan. Enkele voorbeelden zijn:

  • Kleine dataset: Onze voorspelling is gebaseerd op een kleine dataset. Echte machine learning modellen trainen op heel veel meer data! 

  • Data voorbereiden: Jullie hebben enkele stappen gedaan om onze dataset voor te bereiden, maar in machine learning modellen kunnen er meer en complexere stappen worden genomen. 

  • Complexiteit van model: Jullie hebben een heel makkelijk model toegepast, namelijk het tellen van woorden. Echte generatieve AI gebruikt veel complexere modellen en machine learning. 


In les 3 zullen we verder ingaan op wat er mis zou kunnen gaan bij grote generatieve modellen en wat de gevolgen daarvan zijn.

Het heeft bij ons model op meerdere punten mis kunnen gaan. 


Kleine dataset

Chatbots zoals ChatGPT zijn getraind op bijna het hele internet aan data en wij hebben enkel een mini tekstje gebruikt. Dit is dus een heel groot verschil.


Data voorbereiden

Wij hebben normalisatie en tokenization gedaan, maar er zijn nog veel meer stappen. Per type model verschilt het welke stappen wenselijk zijn om wel of niet te doen. Hier zijn onderzoekers lang bezig mee om dit uit te kunnen zoeken.


Complexiteit van model

Wij hebben een frequentie analyse gedaan. Dit is niet een model die je in chatbots zoals ChatGPT nog zou zien, maar enkel in oude primitieve chatbots. Momenteel word er veel gebruik gemaakt van machine learning en dit een complexer proces.

Hoe werkt ChatGPT dan?

Generatieve AI werkt een stuk complexer dan wat wij zojuist hebben gedaan. 


In dit filmpje van 'Barend legt uit' krijgen nog meer te weten over hoe het dan precies zit. 





Deze slide heeft geen instructies

Terugblik

In deze les hebben jullie de stappen doorgelopen van een generatieve AI en een kijkje genomen naar hoe een chatbot zoals chatGPT werkt. 


Nu kun je:

- de vijf stappen van (generatieve) AI omschrijven.

- opnoemen waardoor een (generatief) AI model fouten kan maken.

- in grove lijnen omschrijven hoe complexe modellen zoals ChatGPT, Microsoft's Bing Chat, Google Bard werken. 

Deze slide heeft geen instructies

In de volgende les

...behandelen we wat prompting is, waarvoor je generatieve AI in een schoolproject kan gebruiken, hoe je de beste vraag kan stellen aan generatieve AI en gaan de leerlingen de strijd met elkaar aan om de beste prompt te schrijven. 

Deze slide heeft geen instructies

Geïnspireerd?

Als je dit een interessant onderwerp vond, dan is een vervolgopleiding in deze richting misschien iets voor jou.


Neem eens een kijkje bij Informatica, Computer Science of Artificial Intelligence (universiteit of hbo).


Weet je welk (vakken)profiel je hiervoor nodig hebt? Zoek dat eens uit!

Toelichting

Deze dia is bedoeld om leerlingen te helpen zich te oriënteren op vervolgopleidingen, hoewel dat in de onderbouw nog een ver-van-mijn-bed-show is. Onbekend maakt onbemind en op deze manier maken ze kennis met wellicht onbekende studierichtingen.


De makers van deze les willen graag weten wat je van de les vond. Ga daarvoor naar de (korte) vragenlijst. Heel veel dank!


Feedback gevraagd

Link naar vragenlijst voor leerlingen: 


ut.onl/leerling4tu 

De makers van deze les willen graag weten wat je van de les vond. Ga daarvoor naar de (korte) vragenlijst. Heel veel dank!


Feedback gevraagd

Vragenlijst voor docenten

Link naar vragenlijst voor docenten:


ut.onl/docent4tu


Check www.4tuschools.nl voor meer inspirerende lessen!

Deze slide heeft geen instructies

Nationale Wetenschapsagenda | Explainer: Wat is AI (Artificial Intelligence)? (2021, 14 oktober).  https://www.youtube.com/watch?v=TSbHrkwd_cA


Vernieuwenderwijs | Chat GPT (en andere taalmodellen) - Barend legt uit (2023, 20 december). https://www.youtube.com/watch?v=iOaJZ3oP2T4



Bronnen

Deze slide heeft geen instructies