Sprogmodeller for elever

Når en bred gruppe af elever skal introduceres til sprogmodeller, kan dette være en dagsorden:

  1. Introduktion omkring børns og maskiners læring, og hvad er en model og målet med den? Hvilke brugs-senarier kan der være for modeller? (sundhed, robotter, sprog, anbefalinger, beslutningsstøtte m.v.)
  2. Træne egen simple model med analoge midler og hovedregning: “Er det frugt?
  3. Opsamle centrale pointer.
  4. Træne en billed-klassifier i Techable Machine: “Er det frugt?”
  5. Opsamling på pointer.
  6. Skitsere vigtige trin i konstruktion af en sprogmodel og karakteristiske træk.
  7. Lade eleverne arbejde med at undersøge en sprogmodel mht. de nævnte træk.

Jeg har forsøgt at designe en aktivitet, som honorerer punkt 2, og lever op til en række krav:

  1. Introducerer nogle af de tekniske begreber og metoder, som indgår i sprogmodeller.
  2. Er på et niveau, hvor alle kan være med.
  3. Er så hands-on som muligt.
  4. Ikke tager for lang tid at afvikle.

Dét er en ret svær balance at ramme. Blandt andet er en grundlæggende struktur i sprogmodeller de neurale netværk, som er i mange lag og dimensioner og træningen kræver mange gentagelser. Det bliver hurtigt omfattende, abstrakt og tidskrævende at designe og træne et neuralt netværk -det er derfor man bruger en computer. Alle beregninger i aktiviteten skal desuden kunne løses af elever i hovedet, for det reducerer risikoen for black box.

Den væsentligste egenskab ved modellerne, at de kan forudsige. Derfor har jeg designet aktiviteten, så eleverne skal hånd-træne en meget simpel perceptron-model (uden bias), som kan forudsige om et objekt er en frugt eller ej (target). Objekterne tilgås som spillekort med tre binære egenskaber (features): Er formen rund/oval? Er farven blå? Er objektet produceret i Danmark (se billede).

De tre features er valgt fordi: en frugt er ofte rund, en frugt er sjældent blå og frugt eller ej er uafhængig af hvor den er produceret.

Kortene indeholder en blanding af objekter, som er frugter fx æble, og ikke frugter fx Lego. Eleverne arbejder i par og tager et kort frem ad gangen. Alle følges ad i starten, men eleverne arbejder efterhånden selvstændigt (faded guidance): De gennemgår et trænings-flow, herunder beregner vægtet sum, bestemmer output og opdaterer vægte, hvis der er uoverensstemmelse mellem kort og modellens forudsigelse (se billede).

Sammen med kortene introduceres de første begreber: trænings-data, model, vægte, træning.

Når alle kortene er brugt, skal eleverne gentage proceduren med kortene igen og igen, indtil modellen kan forudsige rigtigt fem gange i træk.

Derefter udleveres nye kort med objekter, som eleverne skal teste modellen på. Der er både frugter, som modellen kan forudsige korrekt (fx en fersken eller rød legoklods), og objekter, som den forudsiger forkert på fx en banan eller en blå blomme.

Opsamlingen kan introducere lidt flere begreber (præcision og bias), samt nogle vigtige principper:

  • Modeller kan forudsige noget (frugt eller ikke-frugt).
  • Modeller lærer at forudsige, ved at vægtene bliver tilpasset gennem træning.
  • Præcisionen af forudsigelserne er afhængig af træningsdata (antal og variation fx hvis vi kommer med en blå frugt (blomme), forudsiger modellen nok forkert).
  • Præcisionen af forudsigelserne er afhængig af modellen (bl.a. hvilke og antal af features; kombination af modeller i et neuralt netværk).
  • Der kan være tendenser (bias) i træningsdata, som gør forudsigelserne unuancerede (vi har kun trænet på en slags frugter). Bias kan mindskes ved at bruge mere varierede træningsdata.
  • Forudsigelsen kan ændres fra enten/eller til en andel (fx via softmax-lignende funktion).

There will be a test.. skal eleverne have opsamlende quiz?

En alternativ tilgang kunne være at forbinde eleverne i et netværk, hvor hver elev er en knude i netværket. Hver elev har sin egen vægt, og data sendes gennem netværket.

Dét kan hurtigt udvikle sig til kaos: Hvem skal opdatere vægtene? Skal alle følges ad? Hvad sker der, hvis nogen regner forkert? Elever ved kun hvad der sker hos dem selv og ikke i hele netværket fx kommer de ikke til at forholde sig til forudsigelsen.

Udgivet i AI, Digital Dannelse, Informatik, Maskinlæring | Kommentarer lukket til Sprogmodeller for elever

Min helt egen lærings-chatbot

Det er lidt af et dilemma, hvorvidt jeg skal vise eleverne alt det, som ChatGPT kan, for det viser dem også tydeligt, hvordan de kan snyde med botten ved at lade den løse deres opgaver. Mange elever kender nok allerede mulighederne. Men min sindsro ville være større, hvis jeg kunne anvende en bot, som de ikke kunne snyde med. En pædagogisk chatbot, som er rettet mod læring og ikke mod at producere tekst. Fra genAI til pædAI.

Jeg har eksperimenteret lidt med openAI’s agenter (GPT’er). Her kan jeg fodre en chat med specifikke tekster fx sider fra wikipedia, om det emne vi arbejder med, og med retningslinjer for bottens adfærd. Men man skal være logget ind på openAI for at tilgå agenterne, og det må jeg ikke bede eleverne om af gode GDPR-grunde.

Men nu har jeg lavet min egen applikation, som ikke kræver login fra brugeren. Ideen er, at bygge videre på ChatGPT. Når man køber adgang til ChatGPT, får man samtidig adgang til at skrive programmer, der kan kommunikere med ChatGPT (via et API). Så man kan skrive sit eget program, der kan sende input til en GPT-model og få svar retur.

Første version af systemet kan prøves her.

Det er et velkendt problem med ChatGPT, at systemer mister fokus, og glemmer dele, som ligger længere tilbage i chatten. Det er bl.a. en konsekvens af, at attention-mekanismen bruger sekvens-embeddings, så ord (tokens), der står senere i prompt (og kontekst), får større betydning for næste output-token.

Selvom man prompter ChatGPT med grundige instruktioner i, at systemet skal fokusere på læring og ikke må skrive elevernes opgaver, så glemmer den det hurtigt. Når man prompter for at blive quizzet, glemmer den reglerne efter nogle få spørgsmål.

Min løsning er, at jeg laver min egen side med en brugergrænseflade (herover), hvor brugeren kan skrive en prompt til ChatGPT. Før hver prompt sendes til ChatGPT (gpt-4o-mini), klistrer jeg en system-prompt sammen med brugerens prompt, uden at brugeren ser det fx:

Rolle: Du er en biologi-lærer i dansk gymnasium stx gennem 15 år. Kontekst: Du skal være lærings-assistent for en elev. Du er interesseret i, at eleven lærer begreber, metoder og teorier i biologi. Du vil lave quizzer med eleven. Du er opmærksom på, at du ikke vil løse opgaver for eleven. Du vil ikke skrive elevens produkter. Du vil ikke skrive eksempler på svar eller afsnit fx til rapporter eller opgave-besvarelser. Du vil hjælpe med at forklare og formidle viden i biologi. Opgave: Hjælp elever med at lære biologi-faget. Du spørger ind til elevens læring, interesser og fremskridt. Format: korte svar. Tone: Venlig og tålmodig.”

Det er afgørende, at alle beskeder til og fra botten samles (fx i et array), og det hele sendes med til ChatGPT hver gang, for ellers mister systemet sammenhængen i samtalen.

En lidt mere generel pointe er, at jeg nu har en chatbot, som jeg kan customize og aligne, som jeg vil. Jeg kan manipulere med output og særligt med input.

Fx kan jeg lave en vejlednings-bot, der som input får de vejledningsspørgsmål, som vi som regel stiller til eleverne, den videnskabelige basismodel og måske læreplanen. Og så får den en instruktion om, at den skal optræde som vejleder og stille mange og bestemte spørgsmål. Alt det får eleven ikke at se, og hvis alt går vel, kan botten ikke bruges til andet end at vejlede.

Jeg kan lave en quiz-bot, som tager begreber og svar fra en liste, som ligger i en variabel. Dertil kan der være en liste over korrekt og ikke-korrekt besvarede begreber. På den måde støtter jeg systemets hukommelse. I modsætning til mange multiple-choice systemer, kan denne bot rette fritekst og kan forklare, når noget skal uddybes.

Nu mangler jeg bare at teste, om eleverne kan få chatbotten til at snyde.


Opdatering: ultimo november 2024

Nogle elever gider ikke bruge chatbotten, fordi den er tunet til ikke at besvare opgaver.

Mange elever kan ikke forstå, hvorfor de skal skrive med en chatbot, når den alligevel ikke kan give konkrete svar om kilder m.m.

Jeg har fået lavet en SRP-vejleder-chatbot. Jeg tænker på at prøve et chatrum til flere brugere, hvoraf chatbotten kun er een af stemmerne, for at øge samarbejdet mellem eleverne.

Udgivet i AI, Biologi, Informatik, Maskinlæring, Programmering | Kommentarer lukket til Min helt egen lærings-chatbot

DNA-model med laserskærer

September 2024: En kollega spurgte, om vi havde en fysisk model af DNA liggende? -Nej, men hvorfor ikke? Jeg researchede de sædvanlige kilder: Etsy, Thingiverse, 3dcults og Google. Ingen modeller som er gode eller til at betale for penge.

Første prototype

I et blogindlæg fra MIT fandt jeg en løs beskrivelse af en laserskåret 3d model. Ingen filer, men en tegning af brikkerne. Jeg vektoriserede tegningen i Inkscape og skar en pap-prototype af brikkerne. De passede sammen, men efter 2-3 basepar blev det klart, at modellen aldrig ville blive en spiral. Noget i modellen passede ikke sammen.

Efter 4-5 iterationer i pap kom jeg frem til nogle mål, som passer nogenlunde sammen (bl.a. ca. 36 grader mellem hvert nukleotid, og længden af bindingen mellem baserne).

Planen er, at skære baserne i 3mm mdf med tekst, og skære backbone samt bindinger i pap, så der bliver en vis fleksibilitet i modellen.

Jeg vil prøve at implementere:

  • major og minor groove i modellen ved at lave stykker af backbone, som er kortere og længere.
  • den antiparallel struktur bliver synlig.
  • forskellen på AT og GC. Måske bindinger med hhv. 2 og 3 hydrogenbindinger.
  • tydeligere adskillelse mellem fosfat og ribose, som p.t. er eet stykke.
  • Undgå at basen ser ud som om, at den binder to nukleotider sammen (det er ribose, som gør det)

Det er stadig meget tvivlsomt, om eleverne kan samle modellen, men en kollega har lovet at teste det.

oktober 2024: Backbone blev opdateret med symboler inkl. 3′ og 5′. Hver base og backbone fik en pil, som skulle vise, hvilken retning brikkerne skulle samles. Siderne af DNA blev farvet hhv. brun og hvid for at gøre det nemmere at samle hver side.

Jeg lavede 10 sæt i pap a 8 basepar, som eleverne i 1g NV (grupper a 3) skulle samle. Der blev også lavet to samlede og limede modeller, som eleverne kunne kigge efter.

De fleste elever kunne ikke finde ud af det. Dels var deres viden om DNA meget begrænset. Dels var der mange kombinationer af brikker, hvorfor de havde svært ved at komme i gang. De få elever, som det lykkedes for, var dem, som sad med de limede modeller.

Jeg har nogle ideer til, hvordan eleverne kan komme i mål:

  • Eleverne samle nukleotider først, og jeg skal tjekke, om de er korrekte.
  • Fælles start af de første basepar.
  • Ingen må tage de limede modeller, som skal stå, så alle kan se dem.

November 2024: Det blev ikke meget bedre af at bygge nukleotider først 🙁 Så modellen skal måske leve videre som demonstrations-model eller der skal være nogle (2) byggede og limede basepar, som eleverne kan bygge videre på, fordi starten er det sværeste.

(opdateres nok)

Udgivet i Biologi, Bioteknologi | Kommentarer lukket til DNA-model med laserskærer

Skab digitale modeller med generativ AI

Når eleverne træner modellerings-kompetencer, kan det foregå gennem arbejde med digitale interaktive modeller til at forstå, formidle og forudsige faglige pointer. Men det er svært at kvalificere eleverne, så de selv kan programmere de digitale modeller.

For programmering er et kreativt håndværk, som tager tid at lære. Heldigvis er det blevet meget nemmere at være kreativ med IT. For eleverne kan nærme sig programmering uden at skrive kode.

Efter chatbots er kommet frem, først og fremmest repræsenteret af ChatGPT, kan eleverne i stedet beskrive, hvad et program skal kunne, og prompte en chatbot til at skrive et bud på programkoden.

De nye chatbots (fx ChatGPT 4o) er så gode til at skrive kode, at elever (et stykke hen ad vejen) kan prompte en interaktiv digital model frem. Claude’s Sonnet-chatbot har endda et interface, hvor prompt, kode og kørsel af koden vises i samme skærmbillede. Der er dog også chatbots på markedet, som p.t. ikke magter opgaven fx skoleGPT.

Eleverne kan opbygge en digital model gennem en række prompts. Det kræver præcise prompts at få specifikke forhold frem i modellen, hvorfor eleverne arbejder med prompt engineering.

Den kode, som chatbotten leverer, kan være skrevet i HTML, flyttes til en tekst-editor og vises i en browser. Koden kan også flyttes til et online-udviklingsmiljø som Trinket eller Replit.

En generel fremgangsmåde og nogle opmærksomheds-punkter nedenfor. Ordet “Modellen” henviser her til den model, som eleverne prøver at skabe, og ikke til den model, som ligger i chatbotten.

  1. Eleverne/læreren skal vælge en del af et simpelt system fra faget, som de vil modellere. I biologi/kemi kan det være en kemiske reaktion eller en enkel biologisk proces fx rovdyr-byttedyr, molekyler, hormoner, del af et stofkredsløb o.l.
  2. Lav en skitse af modellen og beskriv indholdet med tekst/pile.
  3. Eleverne skal overveje, hvilke dele af systemet de vil begynde med at modellere.
  4. Det er en fordel at modellere systemer, som er velegnede til agent-baserede modeller, som bygger på en objekt-orienteret tilgang. Det er svært at animere og få elementer i modellen til at ligne konkrete dele af verden fx konkrete molekyler, organer eller cellulære strukturer.
  5. Begynd med en standard prompt, som beskriver hvilket kodesprog modellen skal skrives i, og hvad modellen overordnet skal simulere. Skriv at modellen skal opbygges gennem en række prompts. Rolle, kontekst, opgave, format og sprog kan strukturere prompten.
  6. Brug versionering, så det er nemmere at holde styr på forskellene på de modeller, som bliver outputtet. Begynd med version 1.0.0. Hvis en outputtet model bliver forkert, kan man let gå tilbage til en bestemt version, som var mere korrekt.
  7. Bed chatbot’en placere tekster i modellen. Bliv ved med at prompte indtil placeringerne og teksterne står korrekt. Beskriv den form, som hvert sted skal repræsenteres af fx kasse eller cirkel, samt deres farver.
  8. Bed chatbot’en tilføje nogle af de agenter, som skal bevæge sig mellem stederne. Præciser farve, form og bevægelseshastighed for agenterne.
  9. Udvid med flere egenskaber til og/eller interaktion mellem agenterne.
  10. Udvid med brugerens muligheder for at interagere med modellen fx gennem knapper, slidere og evt. tekstfelter.
  11. Udvid med flere agenter.

Produkter fra chatbots må aldrig stå alene, så eleverne skal reflektere grundigt over på hvilke punkter modellen afspejler virkeligheden (det faglige indhold), og på hvilke punkter den ikke gør. De bør også reflektere over de generelle muligheder og begrænsninger ved modeller.

De kan reflektere over hvilket fagligt indhold, der var let/svært, at få frem i modellen og hvorfor. En af pointerne her, vil ofte være, at en chatbot skal promptes meget specifikt og med meget kontekst, for at opnå et bestemt udtryk. De vil muligvis også komme frem til, at for mange ændringer på samme tid, ikke giver de ønskede resultater. I stedet bør variabel-kontrol udøves, så modellen forbedres trinvist.

Aktiviteten rammer flere læringsmål:

  1. Modellering (dekomposition) af indhold fra faget.
  2. Arbejde med prompting af chatbots, uden at målet er en tekst, hvorfor fokus på hurtige veje til et produkt og på snyd bliver mindre.

Jeg er spændt på, om eleverne:

  • Magter at dekomponere det faglige indhold til en simpel model og skitsere denne. Måske kræver det et større fagligt overblik end forventet at vælge et system, som er velegnede til denne form for modellering. I så fald, må jeg støtte dem med forslag fx et simpelt kredsløb mellem hjerte, væv og lunger.
  • Vil simulere systemer, som er så komplekse, at en chatbot ikke kan skrive et program, der fungerer. For eleverne kan ikke opdage eller rette fejl i koden.
  • Tager magten over chatbotten eller chatbotten tager magten over eleverne. Vil de blot acceptere (delvist forkerte) forslag, som chatbotten kommer op med? Det kan kræve en del prompt-forsøg og tålmodighed at få en model til at se ud på en bestemt måde. Og det er svært at få dynamiske systemer i balance.
  • Formår at jonglere med chatbot, HTML-dokument og browser til fortolkning af HTML.

Eksempel: Her er et eksempel, som er lidt mere avanceret, end jeg forventer af eleverne. Det er kønshormonerne GnRH, LH, FSH og testosteron, som udviser feedback på hinanden. Systemet er endnu ikke helt balanceret, og viser derfor nogle ret store udsving i testosteron-indhold.

Nogle af de prompts, som er brugt til at skabe eksemplet ovenfor:

  1. Standard prompt (ikke vist)
  2. …en række af flere prompts..
  3. Flyt kassen med Testikler lidt til venstre. Udvid den hvide ramme for kredsløbet lidt til venstre og til højre. Udskil GnRH fra Hypothalamus, også når der ikke klikkes på knappen.
  4. Testosteron skal sørge for, at der udskilles mindre GnRH og FSH og LH.
  5. Gør den hvide ramme lidt smallere igen på højre og venstre side.
  6. Udskil færre FSH og LH på grund af GnRH.
  7. Begynd simuleringen uden hormoner. GnRH skal medføre færre FSH og LH frigivet.
  8. Tilføj en legend hvor det kan ses hvad de hhv. røde, grønne, gule og sorte prikker repræsenterer.
  9. Kasserne med hhv. hypothalamus, hypofysen og testikler skal forblive på deres x og y koordinater, men prikkerne skal passer bagved kasserne.
  10. Ændr knappen “release GnRH” til “indspøjt AAS”. Når der klikkes på knappen skal der tilføres et ekstra hormon “AAS”, som er blåt. AAS skal tilføres til venstre i kredsløbet. ASS skal opføre sig ligesom Testosteron. På legend skal der tilføjes en blåt prik og teksten “AAS (kunstigt testosteron)”.
  11. AAS skal have samme hæmmende virkning på frigivelsen af GnRH, LH og FSH, som Testosteron har.
Udgivet i Biologi, Bioteknologi, Computational thinking, Informatik, Kemi, Programmering | Kommentarer lukket til Skab digitale modeller med generativ AI

Skoleåret 2024-25

Jeg er færdig med efteruddannelse, og håber derfor at få mere overskud til alt andet 🙂

Arbejde videre med hukommelses-teknikker herunder flipkort.

Køre fag i en Agile ramme, dvs. afprøve og evaluere læringsaktiviteter og gentag aktiviteter, som ser ud til at virke.

Undersøge Generativ AI i undervisningen og formidling heraf.

I informatik vil jeg prøve par-programmering mhp. eksamensgrupper. Efter at have arbejdet med escape room gennem flere år, vil jeg arbejde med museumsformidling sammen med Naturama.

Udgivet i Biologi, Informatik, Kemi | Kommentarer lukket til Skoleåret 2024-25

Agilitet i HF-undervisning

På mit sidste kursus (software engineering), blev jeg introduceret til Cynefin-modellen, som beskriver fem typer situationer (domæner) og giver bud på beslutninger, der kan løse dem (beslutnings-domæner):

Cynefin model
  1. Simple problemer: Enhver kan se løsningen, som ligger ligefor. Der er entydig en enkel sammenhæng mellem årsagen til problemet og løsningen. Det er muligt at opstille en best practice, fordi der er en indlysende og gennemprøvet måde at løse problemet.
  2. Kaotisk: Der er ingen sammenhæng mellem årsager og virkninger. Derfor er det tilfældigt hvad der virker og ikke virker. Bedste bud på en løsning er, at en ledelsesperson tager en beslutning for alle involverede, som kan bringe systemet til et af de andre domæner.
  3. Komplicerede problemer: Her er en sammenhæng mellem problemet og løsninger tilstede, men den er svær at finde. Derfor skal problemet analyseres af en (eller flere) kompetente eksperter, som kan analysere problemet og udpege løsninger. Det kan være nødvendigt at indsamle data før analysen. Problemet er så kompliceret, at det er umuligt at opstille én entydig best practice. I stedet kan der opstilles en good practice, som et katalog over handlinger, som kan bidrage til at løse situationen.
  4. Komplekse problemer: Her er så mange aktører og sammenhænge, at problemerne ikke lader sig dele op i isolerede problemer. Desuden skifter forudsætningerne ofte, så noget der har virket, måske ikke virker igen. Derfor er det ikke muligt for en ekspertgruppe at analysere (deducere) og udpege løsninger. Det er hverken muligt at opstille best eller good practice. I stedet skal der anvendes metoder fra det Agile rammeværktøj: En divers gruppe med forskellige kompetencer skal afprøve forskellige handlinger, på vej mod en løsning. Gruppen skal forstærke de handlinger, som viser tegn på at løse situationen, og formindske de handlinger, som viser tegn på at forøge problemerne.
  5. Uorden (disorder/forvirring): Ligger midt i modellen. Her placeres situationen, hvis man ikke ved hvilket af de andre domæner, den kan placeres i.

Mange forhold i undervisning udgør heldigvis simple problemer med simple løsninger, som er nemme at gennemskue. Meget af den traditionelle undervisning ligger også her. Hvis problemet er, at eleverne mangler viden og kompetencer om emnet, så gennemgår læreren det eller eleverne læser det, så løses der opgaver osv. Det er som regel undervisningen i velfungerende stx-klasser, som ligger her.

Noget undervisning indeholder situationer, som er sværere at gennemskue. Det er de komplicerede problemer. Fx hvad skal der ske med skærmene i skolen? Vi skal både bruge dem, og de tager en masse ufaglig opmærksomhed. Der er blevet lavet en række ekspert-undersøgelser på området og udgivet en good practice i skærmbrug, som de fleste følger.

Simple og komplicerede situationer kan som regel løses ved at lægge en plan og følge den. Det kan kaldes at følge en vandfaldsmodel, hvor hver aktivitet er fastlagt i en bestemt rækkefølge og resultater forudsigeligt. Meget undervisning foregår på den måde, når læreren gentager det, som blev gjort sidste år. Metoden virker heldigvis i mange undervisnings-situationer.

Nogle undervisnings-situationer placerer sig i det kaotiske domæne: Her er meget frustration blandt underviserne (og eleverne), og intet ser ud til at virke. Derfor kan man ønske, at nogen bestemmer, at nu skal undervisningen køre på en bestemt måde, som kan bringe situationen hen til et af de andre domæner. Det kan være klassen opløses eller deles i to halvdele, eleverne får faste pladser eller alle produkter skal afleveres. Eleverne kan ønske, at læreren udøver høj grad af autoritet.

Nogle lærings-situationer påvirker så mange forhold, at de ligger i det komplekse domæne. Der er nogle årsag-virkning sammenhænge, men de er filtrede sammen. For eksempel undervisning i HF, som jeg placerer i det komplekse domæne, fordi elevgruppen er ofte meget blandet med stor faglig spredning, diverse diagnoser og meget forskellige sociale kompetencer. Desuden kan eleverne skifte meget gennem forløbet, da deres sociale-, familie- og sundhedsmæssige forhold kan skifte.

Situationer i det komplekse domæne, som undervisning i HF, skal udføres med metoder, som ligger inden for det Agile rammeværktøj. Underviseren skal afprøve forskellige lærings-designs/aktiviteter, og undersøge effekten, for derefter at udbygge de dele, der virker lige nu, og nedtone de dele, som ikke virker. Hvad der virker, kan ændre sig gennem forløbet eller fra hold til hold, fordi eleverne og læreren ændrer sig. I dén situation, er det en fordel at være en erfaren underviser, fordi man har en række af lærings-designs liggende, og kan prøve dem af på et nyt hold.

Målet med hver aktivitet er læring, og det kan være svært af måle. Et bud kan være en formativ evaluering fx i form af:

  • en grundig evaluering med spørgeskema
  • samtale med enkelte elever
  • underviserens indtryk af effekten
  • gruppe- og/eller klassedialog
  • lyn-evaluering hvor eleverne med tommelfinger markerer up, mellem eller ned.

De hurtige metoder (sidst på listen) er nok at foretrække, fordi det er bedre at bruge tiden på at teste flere aktiviteter af, end at gennem-teste få aktiviteter. En evaluering på elevernes viden og kompetencer skal der også til. Ikke for at vurdere eleverne, men for at vurdere, om en aktivitet virker. Har der været flere aktiviteter i spil, bliver det selvfølgelig sværere at klarlægge en entydig årsag-virkning sammenhæng.

Egentlig burde underviserne i en HF klasse tale meget mere sammen, fordi en divers gruppe af undervisere kan få mange flere ideer og kan afprøve mange flere aktiviteter end en enkelt underviser.

Dog er det ikke givet, at ét lærings-design, som virker hos én underviser, vil virke ligesådan hos en anden underviser. Underviseren er en anden, relationen mellem underviser og elever er en anden, og eleverne er et andet sted både fysisk og mentalt. Men underviseren kan prøve at forstærke designs, som virker her og nu.

Dertil må underviseren tage hensyn til læreplaner og forskellige elevtyper i vurderingen af hvad der skal forstærkes og svækkes. Nogle elever kan trives med én type af aktiviteter, mens andre elever ikke har udbytte af den.

Det kan være fristende at placere undervisning i HF i det kaotiske domæne. Løsningen kunne i givet fald være, at nogen vedtog en plan for fast curriculum, opgaver, aktiviteter og øvelser. Dét ville ikke udnytte underviserens kompetencer ret godt, og man kunne derfor sætte en underviser med lavere uddannelse til at undervise. Det ville desværre også gå ud over eleverne: de fagligt dygtige ville ikke blive udfordret, og de fagligt svage ville risikere at blive hægtet af.

Udgivet i Biologi, Bioteknologi, Kemi, Planlægning | Kommentarer lukket til Agilitet i HF-undervisning

Arkitektur og design af software

Så fik jeg endelig afsluttet det sidste kursus for at leve op til de faglige mindstekrav i informatik. Kurset hedder “Software Engineering” på SDU og indbefatter to dele: Planlægning af projekter og system-arkitektur. Carsten Lützen stod som underviser.

Underviseren havde planlagt kursus-forløbet som en projekt-udvikling efter formen:

Kursets indhold om planlægning af et projekt (gule ovenfor) omfatter den traditionelle sekventielle vandfaldsmodel over iterative modeller som kan kaldes Agile til at berøre extreme programming (XP). Arbejdet inden for Agile rammer blev mest præsenteret via retningslinjerne i scrum.

Scrum er en ramme for team-organisering (5-10 personer) med henblik på trinvis forbedring for jævnligt at give brugerne værdifuldt software mellem hænderne. Der er forskellige roller, artefakter og ceremonier i scrum, og en arbejdsperiode på 2-3 uger kaldes et sprint.

System-arkitektur (grønne ovenfor) delen handlede om hvordan den overordnede struktur i IT-systemer kan designes og kommunikeres. Et system kan bestå af én kode (monolit) eller af mange små selvstændige moduler (micro-services). Hvert modul kan være opbygget af typisk op til tre lag, som fungerer i en klient-server arkitektur.

Kvalitet af kode og test af programmer blev også introduceret. Kode rådner dvs. kvaliteten falder med tiden, når den refaktoriseres (omskrives) og udvides. Høj kvalitet af kode kan sikre færre fejl, at koden kan genbruges og at den kan læses og forstås (og derfor forbedres eller udvides) senere. Metoderne er bl.a. lav cyclomatisk complexitet (antal veje gennem koden) og unit tests, og inden for objekt-orienteret programmering er principper som dekobling, encapsulation (don’t show your privates), single-responsibility afgørende for høj kvalitet af kode.

Eksamensspørgsmålene omfattede:

Et godt kursus, som giver en god baggrundsviden for design af IT-systemer. På trods af, at kurset indeholdt en projektaflevering over et IT-system, kunne det have været sjovt at prøve nogle af programmerings-principperne af fx. nogle design patterns eller implementering af et system i trelags-arkitektur.

Udgivet i Informatik, Programmering | Kommentarer lukket til Arkitektur og design af software

Sprog i naturvidenskab

Der er traditioner for at skrive på en særlig måde i naturvidenskab. Fagbegreber bidrager i høj grad til, at sproget er præcist og effektivt. Ligeledes kan komplekse sætningsstrukturer og ualmindelige ordvalg sænke effektivitet i formidling.

Der har længe været en tradition for at skrive passivt i naturvidenskab fx “Der gives..”, “Der opstilles et forsøg..”, “Det forventes at..”.

Men traditioner skifter. Det er blevet klart, at det er nemmere for modtageren at visualisere og forstå indholdet, hvis sproget gøres aktivt og konkret. Dvs. skriv hvem der opstiller forsøget, og hvem der skal udføre opgaven. De store naturvidenskabelige tidsskrifter (Nature og Science) er begyndt at anbefale at skrive “Vi” (eller “Jeg”) i metode og diskussion-afsnit.

Jeg har opstillet seks regler for at skrive i naturvidenskab.

Der er lidt forskel på det naturvidenskabeligt sprog i forskning og i skolen. Fx vil forskere ofte udtrykke usikkerhed i deres konklusioner, hvilket ikke forventes i lige så høj grad af elever. Elever/studerende forventes i høj grad at forklare kendte begreber og teorier, hvilket forskere ikke behøver.

 RegelSådan gør du
1Præcist sprog: Fagligt sprog i naturvidenskab er ekstremt præcist for at undgå misforståelser og tvetydighed. Skriv så vidt muligt konkret frem for generelt.Læs korrektur! Kan din tekst forstås på andre måder?   Du må gerne skrive jeg/vi, frem for man/der/passiv. Vær tydelig, hvis du bruger henvisningsord som den, de og det fx “Det er grunden til at..” (hvad er det?)
2Effektivt: En naturvidenskabelig tekst undgår unødvendige ord og komplekse sætningsstrukturer. Sproget formidler informationen så effektivt som muligt. Sproget har ofte korte sætninger og bruger ikke fyld-ord. Kemiske og matematiske formler øger effektiviteten.Undgå lange sætninger. Højest en hovedsætning og en bisætning.   Undgå hverdagssprog og talesprog.   Undgå personlig stemme.
3Fagbegreber: For at udtrykke komplekse idéer præcist og effektivt, er det vigtigt at kunne bruge faglige begreber, og bruge dem i korrekte sammenhænge.Brug fagbegreber. Forklar de vigtigste fagbegreber i en sætning for sig selv.  
4Forklaringer: Faglige svar i naturvidenskab begynder ofte med en pointe, efterfulgt af dybere forklaringer af relevante begreber, sammenhænge og processer. Fold forklaringen ud et skridt ad gangen.   Nogle afsnit følger PEE: Point, Evidence, Explain (pointe, bevis, forklaring).Fordi, fordi, fordi, fordi, fordi.. ..hvilket vil sige at Årsagen til..  er at.. Grunden til.. er at.. .. skyldes at Som følge af.. , vil..  Konsekvensen af..  er at.. Sammenhængen mellem.. og.. er..   Undgå opremsning f.eks. af symptomer, men forklar enkelte.
5Objektivitet: Skriv objektiv. Fokuser på præsentationen af data, teori og forklaringer, frem for personlige meninger eller følelser.Undgå: Jeg mener../jeg føler../Jeg synes..  
6Sikkerhed: Konklusioner og vurderinger fra nye data bliver ofte udtrykt uden fuld sikkerhed. Det er fordi vores forståelse kun er baseret på de undersøgelser og data, som vi har lige nu.Resultaterne tyder på.. Det er tegn på.. Resultaterne antyder.. Resultaterne indikerer..
Udgivet i Biologi, Bioteknologi, Kemi, Skriftlighed | Kommentarer lukket til Sprog i naturvidenskab

Prompte ChatGPT med Google Sheets

På 2023 sommerskolen på Bork Havn Efterskole, brugt jeg det meste af tiden på at prompte ChatGPT. Selv om chatbotter bliver nemmere at prompte og kan begynde at gætte på, hvad det er brugeren ønsker, giver en chatbot mest værdi, når man prompter den med konkrete og specifikke oplysninger.

Inspireret af et indlæg i FB-gruppen “ChatGPT for Teachers” af Jason Coale, fik jeg lavet et Google Sheets (regneark), som kan generere en fyldig prompt ud fra indtastede værdier. Det kan f.eks. anvendes til at give eleverne feedback på skriftlige arbejde:

  1. Jeg vurderer elevens skriftlige aflevering med score mellem 0 og 4 i nogle kategorier. F.eks:
Afbildning af data
Typen af diagram er velegnet2
Der er titel på diagrammet og titel samt enheder på akserne0
Skrevet en kommentar til diagrammer3
Argumenter for at data-punkter følger en matematisk model3

2. Hver score-værdi er forbundet med en række stikord:

0mangler i besvarelsen.
1ikke godkendt, utilstrækkeligt.
2mangelfuldt, plads til forbedring.
3fint, godt, tilstrækkeligt, nogen grad af forståelse.
4meget godt, godt arbejde, høj grad af forståelse.

3. Jeg har programmeret Google Sheets til at generere en prompt, som er sammensat af faste vendinger, forklaringer af scorerne i 0 til 4-skalaen og af de scorer, som jeg har givet eleven. En del af programmet ser ud som:

function generatePrompt() {
   var report = 'Skriv på dansk. Skriv et respons til en biologi opgave på højest 150 ord fra en lærer til en elev på gymnasieniveau. Begynd med "Hej ' + studentName + '". Skriv klart og med få tillægsord. Lad være med at skrive "Kære" og "Med venlig hilsen". Vær opmærksom på følgende scorer: '
  for (var i = 0; i < 5; i++) {
    report += i;
    report += ' = ';
    report += sheet.getRange('E' + (74+i)).getValue();
    report += ' ';
  }
  
 report += 'Vær opmærksom på at score 3 og 4 er gode og tilstrækkelige. Lad være med at vise eller nævne score værdier. Varier sproget. Lad være med at liste kategorierne i rækkefølge. Undgå generelle vendinger.'


  for (var i = 0; i < categories.length; i++) {
    for (var j = subcategoriesStartRow[i]; j <= subcategoriesEndRow[i]; j++) {
      var subcategory = sheet.getRange('C' + j).getValue();
      var rating = '';
      if (sheet.getRange('J' + j).getValue() === false) {
       rating = sheet.getRange('K' + j).getValue();
       report += ' I kategorien ' + categories[i] + subcategory + ', har eleven scoret ' + rating + '.';
      }
    }
  }
  return report;

4. Programmet genererer en prompt. Som det ses nedenfor er denne ret lang, og indeholder bl.a. mine vurderinger af elevens arbejde. Det vil tage en del tid at sætte sådan en prompt sammen for hver elev, hvis jeg ikke havde programmet. Prompten:

Skriv på dansk. Skriv et respons til en biologi opgave på højest 150 ord fra en lærer til en elev på gymnasieniveau. Begynd med “Hej Søren”. Skriv klart og med få tillægsord. Lad være med at skrive “Kære” og “Med venlig hilsen”. Vær opmærksom på følgende scorer: 0 = mangler i besvarelsen. 1 = ikke godkendt, utilstrækkeligt. 2 = mangelfuldt, plads til forbedring. 3 = fint, godt, tilstrækkeligt, nogen grad af forståelse. 4 = meget godt, godt arbejde, høj grad af forståelse. Vær opmærksom på at score 3 og 4 er gode og tilstrækkelige. Lad være med at vise eller nævne score værdier. Varier sproget. Lad være med at liste kategorierne i rækkefølge. Undgå generelle vendinger. I kategorien Afbildning af data: Typen af diagram er velegnet, har eleven scoret 2. I kategorien Afbildning af data: Der er titel på diagrammet og titel samt enheder på akserne, har eleven scoret 0. I kategorien Afbildning af data: Skrevet en kommentar til diagrammer, har eleven scoret 3. I kategorien Afbildning af data: Argumenter for at data-punkter følger en matematisk model , har eleven scoret 3.

5. Prompten gives til chatbot fx ChatGPT. Resultatet bliver et sammenskrevet feedback til eleven og kan blive som følger:

Hej Søren,

Godt arbejde med at anvende velegnede diagramtyper. Dog er det vigtigt at inkludere titel på diagrammet og enheder på akserne næste gang. Din kommentar til diagrammerne viser forståelse. Flot argumentation for, at data-punkter følger en matematisk model.

Når du præsenterer beregninger, sørg for at inkludere forklarende tekst og brug enheder på alle tal. Konklusionen på dine beregninger viser forståelse, og du har fint afrundet resultatet med hensyntagen til betydende cifre.

Godt arbejde med opgaven, Søren! Fortsæt den gode indsats.

Mvh,
Læreren

Nogle gange skriver ChatGPT de tal ind, som jeg har vurderet eleven til, selv om jeg udtrykkeligt har bedt ChatGPT om IKKE at skrive tal i svaret. Tal kunne evt. undgås mere konsekvent ved at bruge en bogstav-skala (E til A) i stedet for tal.

Eksemplet viser metoden i at have en masse præfabrikerede stikord og sætninger, som kan udvælges fra en tabel og skrives sammen til en mere præcis prompt: Chatbotten omskriver mine talvurderinger til almindeligt sprog, som eleven måske bedre forstår.

Flere spørgsmål melder sig:

  • Hvad får eleven ud af den feedback, som ChatGPT har skrevet? Får eleven samme, mere eller mindre ud af ChatGPT-feedbacken sammenlignet med den feedback jeg selv ville have skrevet?
  • Feedback’en er mest summativ og forklarer ikke eleven så klart, hvad vedkommende skal gøre for at forbedre sin præstation -kan forslag til forbedringer eller links tilføjes ud for hver kategori og integreres i feedbacken?
  • Kan der integreres fokuspunkter og progression i metoden?
  • Sparer jeg tid ved at lade ChatGPT skrive feedbacken, eller bruger jeg lige så meget (eller mere) tid ved at nedskrive mine tal-vurderinger, generere prompten, få svaret, læse det igennem og kopiere svaret til eleven?

Selv om metoden måske ikke er velegnet til elev-feedback, kan den måske bruges til andre formål. På sigt kan en chatbot måske læse elevens besvarelse og give vurderingerne i tal, som derefter kan omskrives til en sammenhængende feedback.

Udgivet i Maskinlæring, Programmering, Skriftlighed | Kommentarer lukket til Prompte ChatGPT med Google Sheets

Skoleåret 2022-23 og fremtiden..

Året der gik:

Jeg synes, at jeg har succes med at uddele kladdehæfter, og i højere grad lade eleverne tegne og skrive noter i hånden. Det startede i et forløb i en biologi c klasse og er udvidet til en bioA studieretningsklasse i en måneds tid. Det har krævet, at jeg selv øver mig i, hvad jeg vil skrive på tavlen, for eleverne kopierer det ned i deres hæfte. Husk at lave tid til, at eleverne selv kan skrive delkonklusioner, som samler op på en sekvens.

I informatik har jeg lært, at størrelsen af det system, som eleverne udvikler til eksamen, også indgår i vurderingen af deres præstation.

biologi C: Forløbet om sex og kønshormoner skal skæres til, så det kan gøres kort og præcist.

Tor har besluttet at rejse til Grønland 😛

Året der kommer:

Året forsætter med at bruge artefakter til at styrke det neurale aftryk og dermed støtte hukommelsen. Få begreber. Flere tests.

HF: “Salt i havvand” frem for “Adskille salt og sand”. Adskille sand og salt er alt for kompliceret, mens at inddampe vand og veje det tilbageværende salt, vil fungere bedre. Jeg vil nok ikke gentage forsøget med at fremstille biogas, men måske satse mere på CO2-fang.

Videoafleveringer i HF frem for skriftlige afleveringer er værd at afprøve. Det vil kræve en del teknisk support.

Informatik: Jeg ved ikke, om jeg vil gentage forløbet om escape room, da det ikke siger eleverne ret meget. Måske skal de se rummet, som noget af det første, for at give dem noget inspiration. Dertil skal forløbet om kunstig intelligens gøres mere præcist.

Biologi A: Hvordan skal jeg inddrage chatbot i undervisningen? Jeg kan ikke ignorere det, men skal være tydelig i at vise eleverne, hvorfor det er vigtigt at udarbejde egne produkter. F.eks. i en aktivitet med chatbot assisteret forsøgsdesign eller chatbot genereret repons på deres opgaver.

Det bliver spændende at se hvordan eleverne tager imod moduler uden mobiltelefoner.

Udgivet i Biologi, HF, Informatik, Kemi, Skriftlighed | Kommentarer lukket til Skoleåret 2022-23 og fremtiden..