6. Natural Language Processing#

6.1. Leerdoelen#

  • Je weet het verschil tussen het reproduceren en begrijpen van (menselijke) taal

  • Je weet hoe een computer taal als input kan verwerken

  • Je kan een simpele chatbot maken

6.2. Voorbereiding#

6.2.1. Bekijk de video’s en beantwoord de bijbehorende vragen#

  1. How Computers Translate Human Language (5 min)

Leg kort uit wat ‘syntax’, ‘morphology’ en ‘semantics’ zijn. Welke van de drie vind jij dat een chatbot het beste moet kunnen beheersen (in een gesprek)?

  1. Crash Course NLP (13 min)

Waarvoor worden neural networks gebruikt in NLP?

  1. The Turing Test (4 min)

Denk jij dat de Turing Test een goede manier is om de intelligentie van een systeem te meten?

6.2.2. Turing Test#

Lees de gesprekken in het onderstaande bestand. Je gaat nu zelf de Turing Test uitvoeren als beoordelaar van gesprekken. In de gesprekken ben jij ‘A’, een persoon dus. Je gaat nu zelf bepalen of je vind dat ‘B’, je gesprekspartner, een mens of robot is. Geef voor elk gesprek aan of je denkt dat ‘B’ een mens of robot is en waarom.

Bijlage: Gesprekken

6.2.3. Voer een gesprek#

Kijk naar ‘communicerende’ programma’s en ‘chatbots’ op het internet. Bijvoorbeeld Eliza, Kuki, Alice en/of anderen. Geef een voorbeeld van een interessant gesprek dat je had met (een van) deze programma’s.

  1. Kuki

  2. Eliza

  3. Alice

6.3. Tijdens de les#

Je gaat een (simpele) chatbot maken. Je mag het zo moeilijk maken als je zelf wilt. Voor degene met niet zoveel programmeer ervaring hebben we een google colab aangemaakt, die je kan volgen om een simpele chatbot in elkaar te zetten.

Chatbot: Google Colab

Tijdens de les bespreken we ook wat gedachten experimenten m.b.t. taal en hoe computers taal leren begrijpen.

6.4. Opdracht#

Het afmaken van de chatbot waarmee je bent begonnen tijdens de les en het beantwoorden van de reflectievragen in je portfolio.