AI og algoritmer

Uro i balance
24. oktober 2023
Ozo-botter på tur gennem eventyrland
25. oktober 2023
Uro i balance
24. oktober 2023
Ozo-botter på tur gennem eventyrland
25. oktober 2023

8. klasse


Fag

Matematik, Samfundsfag

Faglige emner

Kunstig intelligens, Algoritmer

Teknologier

OpenAI (ChatGPT og Dall-E 2), Scratch, Teachablemachine

Af Mette Dahl Thellufsen




Beskrivelse

Der arbejdes i dette forløb med, hvad kunstig intelligens er, hvordan kunstig intelligens fungerer og hvad kunstig intelligens anvendes til? Forløbet har fokus på ansigtsgenkendelse og eleverne skal programmere en ansigtsgenkender.

Forløbsbeskrivelse

INDLEDNING

Begrundelsen for forløbet er at kunstig intelligens/AI er i rivende udvikling og anvendes mere og mere. Det er derfor vigtigt, at eleverne udvikler deres kritiske tænkning over og vurdering af disse nye digitale teknologier.
Samtidig bygger en computers “funktioner” på matematik og algoritmer i form af programmeringssprog, og forståelse af dette vil i fremtiden blive et vigtigt element i elevers mulighed for at indgå som kompetente, handlende medborgere i samfundet.

Den overordnede problemstilling i dette forløb er:

  • Hvad er kunstig intelligens?
  • Hvordan fungerer kunstig intelligens?
  • Hvordan anvender vi kunstig intelligens i vores hverdag?

Den konkrete problemstilling tager udgangspunkt i ansigtsscannere og ansigtsgenkendelse, som også bliver udfordringen i  designdelen i dette forløb.

Herunder kommer eleverne til at arbejde med algoritmer og deres opbygning, og der tages udgangspunkt både i pseudokodning, flowcharts og blokprogrammering.

Forløbet er bygget op over en introducerende del, hvor der arbejdes både med grundlæggende færdigheder koblet på en mere undersøgende/eksperimenterende del, derefter en designdel, hvor eleverne skal arbejde med en designopgave og til slut en kort outro-del med opsamlinger og evalueringer.

Forløbet er afprøvet på 8. klassetrin i matematik, hvor der forud for forløbet er arbejdet med algebra og ligninger, og hvor der hele tiden er blevet relateret til, at ligninger er algoritmer. Klasserne har også tidligere på året arbejdet med andre talsystemer, herunder det binære talsystem og hvordan al data, som computerprocessorer benytter til at indlæse instruktioner (fx tekst, lyd og billeder) er skrevet i binær kode. Elevernes kendskab til kodning var for manges vedkommende på begynderniveau.

 

Forløbet er bygget op over fire dele:

  1. del (1-2 lektion)
  • Introduktion til, hvad kunstig intelligens er, og hvordan kunstig intelligens fungerer? Hvilke udfordringer følger med kunstig intelligens?
  • Leg med ChatGPT og Dall-E 2.
  • Præsentation af teachablemachine og leg med billedgenkendelse.

 

  1. del (3 lektioner)
  • Fagligt arbejde med algoritmer herunder pseudokodning og flowcharts samt øvelser med disse
  • Fagligt arbejde med blokprogrammering.
  • Hvad er scratch og hvordan fungerer det?
  • Leg med Scratch programmeringskort

 

  1. del (4 lektioner)
  • Design i forhold til en given problemstilling.
  • Fælles oplevelse; Ansigtsgenkendelse på Brøndby Stadion og anvendelsen af ansigtsgenkendelse i et samfund som Kina samt udfordringerne ved biometriske data.
  • Designopgaven og arbejdet med denne.

 

  1. del (1 lektion)
  • Outro - opsamlinger og evalueringer.

 

Der vil blive arbejdet ud fra følgende overordnede læringsmål i forhold til teknologiforståelse, matematik, fysik/kemi og samfundsfag:

 

Mål teknologiforståelse/designopgaven

Rammesættelse

Er fastsat fra start - da forløbet er over en kortere periode.

 

Idegenerering

Du kan udtænke, udvælge og kvalificere dine ideer, så de opfylder problemstillingen i designopgaven.

 

Fabrikation

Du kan beskrive, tilrette og konstruere et program i et blokbaseret programmeringssprog som Scratch.

Du kan genkende og anvende funktioner som sekvenser, løkker og forgreninger i din algoritme for din ansigtsgenkender, samt udvælge og oprette relevante variabler.

Du kan foretage systematisk afprøvning og fejlretning af dit program.

 

Argumentation og refleksion

Du kan ved hjælp af relevant fagsprog argumentere for dine valg og fravalg i designprocessen og reflektere over din designkompetence.

Du kan kritisk reflektere over ansigtsgenkendelses betydning for den enkelte person, for fællesskaber og for samfundet.

 

Mål matematik

Du kan planlægge og gennemføre en problemløsningsproces.

Du kan anvende algebraiske udtryk i (matematiske) undersøgelser.

Du har viden om og kan anvende variabler.

Du kan undersøge sammenhænge i omverdenen med datasæt og ved hjælp af digitale værktøjer.

 

Mål fysik/kemi

Du kan designe og gennemføre undersøgelser vedrørende digital styring.

Du har viden om simpel programmering.
Du kan designe enkle teknologiske løsninger på udfordringer fra hverdag og samfund.

Du har viden om metoder til udvikling af tekniske løsninger.

 

Mål samfundsfag

Du kan analysere, hvordan en ansigtsscanner kan være med til at skabe sociale forskelle, der handler om uligheder i adgangen til og fordelingen af samfundsmæssige ressourcer og goder.

Du kan beskrive, hvordan ansigtsscannere kan være med til at skabe sociale uligheder i Danmark og i verden med udgangspunkt i biometriske data.

 

FORLØBSBESKRIVELSE

Lektion 1 - 2 Opstart på emnet

Eleverne introduceres til, at vi i den næste periode/de to næste fagdage skal arbejde med AI (kunstig intelligens) og hvordan kunstig intelligens fungerer i en computer/i et system.

Men først skal vi se, om vi kan finde en enighed om, hvad en robot er og hvilke eksempler på robotter eleverne kender.

 

Runde 1

Parvis arbejder eleverne med at skrive på gule post-its: Hvad er en robot? Eksempler på robotter? Ca. 10 minutters brainstorm.

Eleverne får nu mulighed for at søge på definitioner på ‘en robot’. Der udarbejdes en fælles definition på klassen.

 

Runde 2

Nu skal eleverne fjerne/tilføje post-its i forhold til definitionen.

Opsamling, hvad kunne vi lade stå? Hvad måtte vi fjerne? Hvorfor?

Formålet med runde 1 og 2 er at få sat begreber og billeder på, hvornår der er tale om en maskine og hvornår vi har med en robot at gøre.

Varighed ca. 20 minutter.

 

Hvad skal der så til, for at en robot/et system har kunstig intelligens?
Eleverne diskuterer parvist, hvad kunstig intelligens er og skriver deres bud på post-it.

Til at uddybe elevernes forståelse af, hvad kunstig intelligens er, og hvordan det fungerer, ser de to film:

  • “Hvad er kunstig intelligens?” fra Ingeniørforeningen
  • “Hvordan tænker kunstig intelligens?" fra DR P3

Eleverne skriver 5 facts ned undervejs.
Opsamling i fællesskab. Hvilke fakta om kunstig intelligens har vi noteret?

Eleverne præsenteres for openAI (chatGPT og Dall-E 2) som to kunstige intelligenser og teachablemachine som et program, hvor du kan træne din computer.

Derefter har eleverne “fri leg” i 15 minutter med ressourcerne, før vi samler op i fællesskab og deler elevernes umiddelbare indtryk?

  • Hvad kan programmerne?
  • Hvad kan de ikke?

Varighed ca. 40 minutter

 

Den umiddelbare reaktion fra mange af eleverne om ChatGPT lyder: “Så kan den bare skrive vores opgaver!” Det fører til en refleksions- og perspektiveringsopgave: “Hvilken udfordringer følger der med chatrobots?”

Klassen ser et nyhedsindslag fra DR (TV-avisen d. 21.01.2023, kl.16, 11:33 minutter inde i programmet) og hører artiklen fra DR: “Den overraskede alle med sin intelligens”. De noterer undervejs fordele og ulemper vedrørende chatbots.

Lad eleverne angive argumenter for, hvornår chatbots kan anvendes og hvornår de ikke kan anvendes?

Varighed ca. 30 minutter.

 

Lektion 2, 3 og 4: Faglige færdigheder

I de næste lektioner arbejdes der med elevernes faglige færdigheder og forståelse for, hvordan algoritmer er opbygget. Der tages udgangspunkt i filmen: “Algoritmer - en begrebsguide til teknologiforståelse” fra EMU, samt elevernes forforståelse for algoritmer fra matematik.

Der sættes eksempler på begreberne sekvens, løkke og forgrening fra film og præsentation med madopskrifter og regneudtryk. Der fremhæves eksempler på input og output i disse.

Derefter arbejdes der med tre former for programmeringssprog:

 

Pseudokode

Skrives på listeform og skal være entydig. Eleverne laver en øvelse med “tømning af postkasse”, hvor de beskriver i konkrete sætninger (pseudokode), hvad en person konkret skal gøre. De arbejder derefter med øvelsen “Lav en algoritme til at finde skatten”.

 

Formålet er “at de skal  forstå, hvad en algoritme er, og hvorfor det er nødvendigt, at en algoritme er entydig. Der arbejdes med iterationer og diskussioner i klassen [...] hvor de enkelte grupper lader en anden gruppe afprøve deres skattealgoritme og finder frem til udfordringer, som grupperne efterfølgende kan diskutere, inden grupperne laver næste version af deres skattekort. Er der for eksempel brugt skridt eller en mere præcis måleenhed som meter? Er det forklaret, hvilken vej man skal vende, når man starter, og betyder drej til højre, at man skal dreje 90 grader?” (EMU, begrebsguide til teknologiforståelse)

 

Flowchart

Se filmen “Flowcharts - en begrebsguide til teknologiforståelse”. Der er fokus på symbolernes betydning (specielt handling og beslutning), hvordan forgreninger/løkker meget let kan visualiseres i forhold til pseudokoden. Øvelse:

Eleverne skriver “tømning af postkasse” om til et flowchart.

 

Blokprogrammering

Algoritmens delelementer er her bygget ind i blokke. Blokkene har forskellige farver alt efter hvilken type, de er (fx bevægelse, løkker, variabler eller logik).

Blokkene har forskellige former og passer ind i hinanden som et puslespil. Hvis blokkene ikke passer sammen, er det fordi, man prøver at få computeren til at lave noget, den ikke vil kunne forstå.

Der tages udgangspunkt i ClassicMaze til at få en begyndende forståelse af algoritmens delelementer. Eleverne arbejder alle her i ca 15 minutter.

Derefter skiftes der over til Scratch, da dette program skal bruges i designopgaven). Elevernes arbejde med bloksproget styres ved hjælp af Scratch kodekort. Eleverne får besked på, at formålet er, at de skal kunne designe/vælge en Sprite og en baggrund. De skal også kunne programmere bevægelse, handling, lyd, tale og gentagelser (løkker) ind i deres projekt og kunne anvende variabler.

Til slut lægges en analyseopgave ind, hvor eleverne skal analysere et kodningsstykke i Scratch:

  • Hvordan ser blokkene ud i forhold til løkker og forgreninger?
  • Hvilke variabler fik du brug for? Hvorfor?

 

Lektion 5, 6, 7 og 8: Designopgaven

Nu skal klassen arbejde med designopgaven i dette forløb.

 

Intro

Vi kigger nærmere på et eksempel på anvendelse af kunstige intelligens i  ansigtsscannere til ansigtsgenkendelse. Samtale på klassen. Er der nogen, som kender til dette/er stødt på dette? Fx i paskontrollen i lufthavne?

I vores feltstudie anvendes disse tekster og film (se links til ressourcerne nederst i forløbsbeskrivelsen):

  • “Sådan fungerer Brøndby Stadions ansigtsgenkendelse”
  • “Virkelighedens Big Brother. I Kina får du plus- og minuspoint efter din opførsel.”
  • “I Kina bruges ansigtsgenkendelse flittigt”
  • “How I am fighting bias in algorithms”

Ud fra teksterne og filmene diskuteres i grupper løbende:

  • Hvordan får man computeren til at genkende et ansigt?
  • Hvad er “biometriske data”?
  • Hvad bruges ansigtsgenkendelse til?
  • Hvilke udfordringer er der ved ansigtsgenkendelse (positive/negative)?

Eleverne præsenteres derefter for designopgaven:

I skal designe en ansigtsgenkender, som skal give adgang til eller forbyde adgang til et klasseværelse. Der må meget gerne være medtænkt tekst, lyd og visuelle virkemidler, som understøtter budskabet.

Eleverne inddeles i grupper af ca. 3. Det sikres, at alle har forstået, hvad opgaven går ud på.
Gruperne idégenererer indledningsvist på idéer til

  • Hvordan kan de træne deres maskine (teachablemachine), så de er sikre på, at den lukker de rigtige ind og de rigtige ude? (Obs på tøj, hårfarve, hårlængde, afstand, ansigtsmimik, baggrund mm)
  • Opbygning af ansigtsscanneren i programmet Scratch. Hvilke blokke kan de få brug for, hvad skal der indgå en sprite, hvordan skal deres baggrund se ud mv.

Idégenereringen visualiseres i form af skrift og skitser.

Ud fra gruppens idéer påbegyndes fabrikationen af deres ansigtsscanner. I første omgang trænes maskinen til at genkende de korrekte mennesker, og inden koden eksporteres til Scratch afprøves den i virkeligheden. Der kan opstå behov for flere iterationer.

Derefter programmerer gruppen en algoritme i Scratch for deres ansigtsgenkender. Eleverne har muligheder for at finde hjælpekoder. Der vil også her med stor sandsynlighed skulle tilrettes og tilpasses efterhånden som grupperne afprøver deres ansigtsgenkendere.

 

Lektion 9: Outro

Grupperne fremviser på klassen deres ansigtsgenkender og vi afprøver dem i fællesskab.

De argumenterer for deres valg og fravalg i designprocessen og reflekterer over deres models succes eller mangel på samme. Vi taler om udfordringer pga. tøjfarve, baggrund, hårfarve, hårlængde, ansigtsudtryk mm.

Hvis man vil gøre noget ekstra ud af denne del, kan fx afdelingslederen fra udskolingen inviteres ned og evt. vælge en “vinder”.

 På klassen afrundes med fælles opsamling og evaluering ud fra følgende spørgsmål:

  • Hvad ved vi nu om ansigtsgenkendelse, ansigtsscannere og biometriske data?
  • Kan de anvendes på udvalgte steder >< overalt?
  • Hvilke udfordringer følger der med indførsel af ansigtsscannere forskellige steder i samfundet?

 

AFRUNDING

Dette forløb falder grundlæggende mellem mange stole. Jeg har valgt at gennemføre forløbet i begge mine 8. klasser, selv om jeg kun har den ene klasse til matematik, mens jeg har den anden klasse til både matematik og alle naturfagene.

Det er et bevidst valg, da jeg som beskrevet i indledningen mener, at det er vigtigt, at eleverne udvikler kompetencer til at kunne forholde sig kritisk til de digitale teknologier, som allerede nu optræder i elevernes hverdag, og som fremtiden vil bringe flere af.

Et emne som dette er svært at få medtænkt i den daglige fagfaglige undervisning i et enkelt fag. Det er i stedet oplagt i et tværfagligt forløb, og kunne uden problemer spænde over et længere forløb og med flere fag involveret, som fx engelsk og  dansk, hvor hvert fag overvejer/reflekterer over, hvilke faglige områder eleverne kan arbejde med i et tværfaglige forløb. Et sådant tværfagligt emne kunne hedde “Overvågning i vores hverdag”.

Opnåede jeg så, det jeg ville? Hvis jeg ser på mine faglige mål, så vil der langt hen af vejen lyde et stort ja. Men hvordan har jeg kunnet se dette? I og med, at der har været så mange øvelser/opgaver med et visuelt output, har jeg fået mange tegn fra de enkelte elever på, hvor de var i forhold til målet for den enkelte delopgave.
Gennem de mange makkeropgaver/gruppeopgaver/opsamlinger på klassen, hvor alle elever har skulle give beskrivelser/begrundelser/argumenter/refleksioner mundtligt vedrørende robotter, kunstig intelligens samt ansigstscannere og deres betydning for det enkelte individ og fællesskabet, har jeg observeret, at flere elever har budt ind i de fælles opsamlinger, fordi de har fået ‘trænet’ deres argumentation i de mindre grupper forud for de fælles dialoger på klassen.

Derudover havde jeg et ønske om at observere, hvad en anderledes undervisningsform i forhold til den traditionelle klasseundervisning gør ved eleverne. Min elevgruppe har ikke været vant til projekt-og problembaseret undervisning og de har i en stor del af deres tid på mellemtrin været coronaisoleret.

For det første oplevede jeg grundlæggende et større engagement, da jeg tog udgangspunkt i en autentisk og relevant problemstilling. Derudover oplevede jeg elever, som blev længere tid i opgaven og som ofte glemte pauser, da de lige var i gang med at løse et problem. Jeg oplevede også elever, som blomstrede op i samarbejdet, fordi der var flere muligheder at byde ind med.

Jeg havde dog også nogle få elever, som havde det svært i dette, da der ikke på samme måde var den daglige struktur/diskurs for undervisningen. For dem blev det sværere at fastholde sig i opgaven, da der ikke var en stram styring i alle delopgaver i forløbet.

Til slut må det siges, at det for nogle elever også blev en frustration, når teknologien “stod af” og de blev udfordret af fx kameraforbindelsen til Scratch  og derfor skulle starte forfra.



Runde 1: Hvad er en robot? Eksempler på robotter:

Runde 1: Hvad er en robot? Eksempler på robotter:

Elevernes arbejde med skattejagten/pseudokode:

Elevernes arbejde med skattejagten/pseudokode:

Elevernes arbejde med skattejagten/pseudokode:

Elevernes arbejde med skattejagten/pseudokode:

Elevernes arbejde med skattejagten/pseudokode:

Elevernes arbejde med skattejagten/pseudokode:

Elevernes arbejde med skattejagten/pseudokode: