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.

Dette indlæg blev udgivet i AI, Digital Dannelse, Informatik, Maskinlæring. Bogmærk permalinket.