Živalski vrt

Uvod

Aktivnost je primeren zaključek obravnavanja živalskih skupin (vretenčarji, nevretenčarji; mehkužci, plazilci, ptiči, ribe …), saj učenci ob njej temeljito ponovijo lastnosti posameznih skupin in tudi posameznih živali (so delfini ribe? imajo pingvini dlako?).

Učenci ob njej vidijo in razumejo, kako deluje preprost algoritem strojnega učenja. Zaradi zanimive tematike so ob uri, če jih pustimo, lahko tudi zelo - ali celo malo preveč - angažirani.

Povežemo jo lahko tudi z obiskom živalskega vrta. Učencem damo nalogo, naj popisujejo lastnosti določenega števila živali. Tako bo raziskovanje živalskega vrta bolj sistematičen, podatke pa uporabimo, da iz njih sestavimo pravila, ki opisujejo živali določene skupine.

Druga možnost je, da učence razdelimo v skupine in vsaki damo sliko določenega števila živali, ki jim morajo določiti imena, lastnosti in skupino, v katero sodijo.

Aktivnost je podobna aktivnosti Določevalni ključi za skupine živali, saj obe vključujeta predstavitev postopka za gradnjo klasifikacijskega drevesa. Razlika je v tem, da so “Določevalni ključi” namenjeni starejšim učencem in vključujejo raziskovanje podatkov s pomočjo vizualizacij. Pri tej aktivnosti pa je poudarek na zbiranju podatkov, medtem ko je delo z računalnikom frontalno.

Priprava podatkov

Če aktivnost povežemo z obiskom živalskega vrta, damo učencem obrazce, v katere morajo vnesti podatke o določenem številu sesalcev, rib, žuželk in tako naprej. Obrazec prilagodimo temu, kar bodo učenci v resnici videli. Dobro pa je, da je oblikovan tako, da učenci vpišejo določeno število živali iz vsake skupine, tako da so podatki primerno uravnoteženi.

Učence lahko razdelimo v skupine ali v pare. Če so v vsakem obrazcu po trije predstavniki vsake skupine živali, zadošča 8-10 skupin učencev, lahko pa jih je tudi več.

Učenci nato v šoli ali doma vnesejo podatke o živalih v spletni vprašalnik.

Če jim damo namesto tega le slike živali, je potek podoben, le da vnašajo podatke neposredno v vprašalnik.

Ločevanje živali na podlagi ene lastnosti

Odpremo datoteko zivali.xlsx. (Datoteka ima dve skriti vrstici, ki ju ne razlagamo. Vrstica 2 pove, da so v prvem stolpcu besedila (ki samo po sebi ne pove, za katero vrsto živali gre), v drugem pa spremenljivka, ki pove, v katero “kategorijo” sodi določena žival. Vrstica 3 pove, da je “vrsta” tisto, kar poskušamo napovedovati (“klasificirati”).)

Učenci naj predlagajo dve živali, ki spadata v dve različni skupini. Na primer, da izberejo dvoživko žabo in sesalca tigra. V tabelo vnesemo njuni imeni in vrsti. Učenci naj povedo, po čem jih bomo ločili. Zaradi nadaljnjega poteka je dobro, da izberejo neko smiselno spremenljivko, ne, na primer, barve. Recimo, da jih bodo razlikovali po tem, ali sta sluzasti ali ne. Dodamo stolpec “sluzasta”, pri žabi vnesemo “da” in pri tigru “ne”.

Nato podatke preberemo in prikažemo v Orangu.

  • V File izberemo datoteko, ki smo jo sestavili v Excelu.
  • V Tree izključimo vse parametre, povezane z rezanjem.
  • V Tree Viewer vidimo nastalo drevo.

Z učenci preberemo drevo: pravi, da je za žival pač potrebno preveriti, ali je sluzasta. Če “da”, je dvoživka. Če “ne” je sesalec.

Učenci naj predlagajo dve novi živali iz teh dveh skupin (v našem primeru mehkužca in sesalca; če delamo z drugimi skupinami, pač dve živali iz teh skupin). Recimo, da predlagajo slona in močerada. V prvi stolpec vnesemo njuni imeni, v tretjega podatke o njuni sluzavosti (“ne” za slona in “da” za močerada), stolpec z vrsto pa pustimo prazen.

V Excelu shranimo podatke, v File pa pritisnem Reload, da se naložijo novi podatki.

V Orangov delotok dodamo gradnik Predictions in ga nastavimo, kot kaže slika (Show probabilities nastavimo na (None) in izključimo Show classification errors), da odstranimo odvečne stolpce.

V levem delu vidimo napovedi, ki jih daje drevo: za slona je odkril, da je sesalec in za močerada, da dvoživka.

Zdaj potrebujemo neko žival, ki ne sodi v tidve skupini. Ko smo učence prosili za še kakšen predlog živali, so verjetno predlagali različne živali (vsak svojo najljubšo ali najzanimivejšo); lahko izberemo katero od teh, če ne sodi v tidve skupini. Včasih pa učenci sami vprašajo, kaj bi se zgodilo, če bi v tabelo dodali še kakšno žival iz katere tretje skupine. Sicer pa jih poskusimo sami napeljati na to.

Na primer, da si želijo videti napoved za lastovko. Učenci bodo verjetno sami povedali, da je računalnik ne more uvrstiti med ptice, saj pozna le sesalce in dvoživke. V katero od teh dveh skupin bo dal lastovko? Če še vedno projeciramo drevo, bodo najbrž sami odkrili, da med sesalce, saj ni sluzasta.

V tabelo dodamo podatke o lastovki (ime in podatek, da ni sluzasta) in v Predictions se prepričamo, da je res končala med sesalci. (Ne pozabimo: shranimo v Excelu in ponovno naložimo (Reload) v File).

Gradnja drevesa: še en kritarij

Kako ga naučiti ločiti med pticami ter mehkužci in sesalci? Očitno tako, da mu dodamo primer kake ptice. Če predlagajo siničko, dodamo v tabelo siničko: vpišemo njeno ime, njeno skupino (ptica) in to, da ni sluzasta. Vendar to očitno še ne zadošča: v drevesu se lahko (shranimo v Excelu, naložimo v File) prepričamo, da so med “nesluzastimi” živalmi zdaj sesalci in ptice, saj nimamo dovolj podatkov, da bi lahko ločili med njimi.

Zato dodamo v tabelo nov stolpec. Učenci lahko sami dodajo kaj primernega. Nasvet: izogibajmo se podatku o številu nog, ker ima lahko preveč različnih vrednosti, zato popači in zaplete drevesa. Boljši so podatki, pri katerih je vrednost lahko le “da” ali “ne”.

Na primer, da predlagajo to, ali ima žival perje. Dodamo nov stolpec perje in pri vsaki od obstoječih živali dopišemo, ali je pernata ali ne.

Shranimo v Excelu, naložimo v File, pa dobimo tole:

Prepričamo se, da učenci razumejo, kaj pomeni nastajajoče klasifikacijsko drevo: sluzaste živali so dvoživke, pri ostalih pa je pomembno, ali so pernate ali ne. Če so, so ptice, sicer sesalci.

Nadaljnja gradnja drevesa

Učenci bodo zdaj razumeli, kaj se dogaja in kako nadaljevati igro. Dodajamo nove živali, na primer ribe, in primerne spremenljivke, ki jih opišejo. (Ima luske? Ali pa: diha s škrgami.)

Aktivnost se lahko razvija zelo zanimivo in pripravljeni moramo biti na različne scenarije. Učenci lahko, na primer, predlagajo podatek o tem, ali ima žival plavuti. To bo postalo zanimivo, če dodamo delfine. Ob tem lahko ponovimo, da so delfini sesalci; ko dodamo sesalce s plavutmi, plavuti nenadoma ne bodo več dobra lastnost za identifikacijo rib (in v resnici niso).

Učenci lahko dodajo pingvine in se začnejo pregovarjati o tem, ali so ribe (ne: ptiči) in ali imajo dlako (ne: perje).

Morda bodo dodali več podatkov, kot je potrebno, oziroma podatke, ki ne bodo povedali ničesar, česar ne bi bilo mogoče razbrati že iz ostalih. Na spodnji sliki je to podatek o tem, ali žival vali jajca.

Učencem se lahko zazdi zanimivo, kaj bi bilo, če bi bilo povsod “da” ali povsod “ne”. Na takšna vprašanja si bodo že znali odgovoriti sami, s pomočjo drevesa. Vseeno pa je poučno to pokazati še s primerom. Sluzasto žival s perjem, dlako in luskami, ki vali jajca, smo poimenovali liokorn in ugotovili (najprej peš po drevesu, nato še v Predictions, da je liokorn, izgleda, vrsta ribe).

Klasifikacijsko drevo iz zbranih podatkov

V nadaljevanju bomo v Orange naložili podatke o živalih, ki so jih prek ankete vnesli učenci in ga prikažemo. Ker pa je v podatkih preveč napak, je za začetek bolj smiselno uporabiti vnaprej pripravljene pravilne podatke.

Razlika med drevesom, sestavljenih iz pravilnih podatkov in drevesom, ki smo ga sestavili zgoraj, bo le v tem, katere živali bo vsebovalo in s kakšnimi spremenljivkami jih bomo opisovali. Z učenci se lahko prepričamo, da drevo pravilno opisuje lastnosti posameznih skupin.

Nato učencem pokažemo drevo, sestavljeno iz njihovih podatkov. Primer je na spodnji sliki. Več ko je napak, večje bo. Vprašamo se, zakaj je tako.

Očitno se poskuša ubogi računalnik učiti iz zavajajočih podatkov. Kot primer lahko podamo zmedenega učitelja, ki je v ponedeljek trdil, da je 5 krat 6 enako 36, v sredo pa, da je 30. Če mu učenci verjamejo, bodo pač mislili, da je ta produkt ob ponedeljkih drugačen kot ob sredah. Takšno pravilo je očitno bolj zapleteno, kot bi bilo potrebno (poleg tega pa celo napačno). Podobne muke trpi računalnik, ko se uči iz mestoma zavajajočih podatkov o živalih.

V gradniku Tree vključimo parametre rezanja in jih nastavimo tako, da dobimo primerno majhno drevo. Konkretne številke so odvisne od števila in točnosti podatkov, zato med spreminjanjem parametrov opazujemo, kaj se dogaja z drevesom. Navadno bo zadoščalo, da nastavimo minimalno število primerov v listih ali naslednji parameter, ki pove, koliko učnih primerov še delimo v nadaljnje podmnožice. Konkretne primerne nastavitve lahko preskusimo, ko se pripravljamo na uro. Pazimo tudi na to, da je drevo še vedno uporabno.

Na spodnji sliki smo zahtevali vsaj 5 primerov v listu in ne delili skupin, manjših od 20. Učencem lahko razložimo, da smo računalniku s tem povedali, naj se ne ukvarja z detajli, ker so lahko tudi napačni.

V vsakem listu drevesa je zapisana odločitev, pod njo pa odstotek, ki pove, koliko živali v tem listu v resnici pripada tej skupini. Imamo, na primer, list, v katerem je 17 živali, ki so brez izjeme žuželke. V sosednjem listu je 83 % žuželk, pridružila pa se jim je še neka druga skupina. Katera, lahko razberemo iz barve; v tortnem diagramu vidimo kanček rumene, zato v drevesu poiščemo rumeni list in izvemo, da gre za ptico. Druga možnost je, da premaknemo miško na ta list in nekoliko počakamo, pa se prikaže okence, v katerem je zapisana porazdelitev živali po skupinah.

Iskanje dlak v jajcu

Kaj se dogaja v tem listu? In, pravzaprav, zakaj so se žuželke pojavile v dveh listih, ne v enem? (Tole je seveda zgolj primer za te konkretne podatke. Na podatkih, ki jih bodo sestavili učenci, se bodo dogajale druge zanimivosti, ki jih bomo analizirali. Na to se lahko vsaj delno pripravimo doma, delno pa bodo analizo usmerjali učenci.)

Odgovor na drugo vprašanje je očiten: lista se razlikujeta glede na kriterij, ali ima žival kosti. V desni skupini žuželk so žuželke s kostmi. Katere bi to lahko bile?

Na gradnik Tree Viewer priključimo Table. V Tree Viewer izberemo list, ki ga želimo analizirati. V Table se pokažejo živali, ki so med gradnjo pristale v njem.

Vidimo, da gre za čebele in pikapolonice.

Istočasno iz tabele dobimo odgovor na drugo vprašanje: “ptica”, ki se je znašla med žuželkami, je kačji pastir. Očitno gre za napačno določeno skupino. Možna pa bi bila tudi drugačna vrsta napake: lahko bi pri določeni ptici napisali, da nima perja, ima šest nog ali kaj takšnega. Tudi v tem primeru bi se znašla v družbi žuželk.

Tu lahko razmislimo, zakaj je potrebno rezanje: če bi gradili drevo “do konca”, bi računalnik poiskal podatek, po katerem se “ptica” kačji pastir razlikujeta od “koščatih” žuželk pikapolonic in čebel. Kot vidimo iz tabele, se razlikuje le po tem, da vali jajca, za razliko od žuželk. Če drevesa ne bi poenostavljali, bi tu torej sledilo vprašanje, ali vali jajca. (In tu se spet lahko pogovorimo o tem, kako se razmnožujejo žuželke, če ne valijo jajc. So morda živorodne?)

Na podoben način lahko analiziramo druge zanimive liste.

Povzetek

Učencem za konec povemo, da bi lahko na podoben način, kot smo se tu učili o skupinah živali, zbrali podatke o sestavinah različnih jedi in poskušali napovedovati, ali bo jed všeč določenemu učencu ali ne. Ali pa podatke o simptomih, s katerimi poskušamo diagnosticirati bolezni. Ne le, da “bi lahko” temveč to dejansko počnemo.

  • Predmet: naravoslovje
  • Starost: 4. razred
  • UI tema: klasifikacija
Umestitev v predmetnik

Z vidika naravoslovja in tehnologije: utrjevanje razlikovanja med skupinami živali.

Z vidika umetne inteligence: učenci spoznajo preprost napovedni model – klasifikacijsko drevo in izvedo, kako ga lahko računalnik sam zgradi. S tem vidijo, kako se računalnik “uči” iz podatkov. Izvedo, da je to le en predstavnik izmed mnogih. Z vidika računalništva na splošno: učenci opišejo algoritem za gradnjo dreves, torej gre tudi za spoznavanje koncept algoritma.

Predvideni potrebni gradniki Orangea: File, Tree, Tree Viewer.

Učenci znajo:

  • razvrstiti živa bitja v skupine po skupnih značilnostih,
  • opredeliti vrsto kot osnovno enoto za razvrščanje in da so glavne skupine živih bitij kraljestva,
  • razlikovati med nevretenčarji (polži, školjke, žuželke, pajki, kolobarniki) in vretenčarji (ribe, dvoživke, plazilci, ptiči in sesalci),
  • risati, brati in razložiti grafični prikaz (npr. histogram).