Tempo di lettura/visione: 12 min
Consigliato per la fascia d'età: SECONDARIA I GRADO
Adattabile alla fascia d'età: SECONDARIA II GRADO
Questo progetto prende spunto dall’attività Smart Classroom proposta da Dale Lane (con licenza CC BY-NC-SA 4.0) all’interno della piattaforma Machine Learning for Kids.
Partendo dalla scheda proposta da Dale, in questo progetto troverete spunti e indicazioni su come realizzare una prima attività di Machine Learning in classe.
In questo progetto l’obiettivo sarà realizzare una classe virtuale intelligente in grado di reagire a ciò che le verrà detto. Gli studenti saranno in grado di controllare i dispositivi virtuali all’interno della classe dando loro dei comandi. Per iniziare, programmeranno una serie di regole (usando l’if-then-else come struttura di controllo) così da gestire i comandi, e impareranno quanto questo approccio non sia efficace.
In seguito, insegneranno al computer a riconoscere comandi per dispositivi differenti, fornendo vari esempi per ognuno e applicando un approccio tipico del machine learning.
Questa attività può essere realizzata (nelle sue parti più semplici) a partire da una classe quinta primaria.
Consiglio di proporre gli spunti di maggiore complessità a studenti di scuola secondaria (primo e secondo grado in base al livello di difficoltà).
Il progetto può essere realizzato con Scratch 3 in circa 2 lezione da 90 minuti ciascuno. Ovviamente al termine delle 2 lezioni si potrebbe assegnare agli studenti un progetto da sviluppare in ulteriori ore di progettazione e sviluppo.
Il corso gratuito "Collaborare a scuola con il digitale"
Un'area personalizzata con i tuoi contenuti preferiti
Una lezione di prova gratuita per ogni corso online
Dirette ed eventi dedicati agli utenti iscritti
Per poter proporre un progetto di questo tipo, l’insegnante educatore deve necessariamente aver svolto questi passaggi:
Potresti introdurre questa attività riflettendo con i tuoi studenti sull’espressione intelligenza artificiale, magari proponendo un brainstorming e raccogliendo le idee dei ragazzi. Potresti mostrare loro anche alcuni video di sistemi intelligenti moderni, come ad esempio Amazon Echo o Google Home (per chi ha visto Mamma ho perso l’aereo molto divertente il video con Macaulay Culkin).
Come fanno questi sistemi ad essere così intelligenti? Come fanno a comprendere la variabilità del linguaggio umano? Anche queste domande potrebbero essere uno spunto interessante per una riflessione iniziale prima di mettere mano al pc.
Presenta successivamente l’obiettivo di questa attività ai tuoi studenti: creare un assistente virtuale per la classe, che riesca a riconoscere i messaggi che gli vengono inviati gestendo alcuni dispositivi (un ventilatore ed una lampada).
Ecco passo-passo la procedura da realizzare durante la prima lezione; te la proponiamo sotto forma di tutorial, in modo che quando vorrai riproporre l’attività con gli studenti non avrai dubbi sui passaggi da effettuare!
1- Collegati al sito https://machinelearningforkids.co.uk/
2- Clicca su “Get started”
3- Clicca su “Log In” e inserisci il tuo username e la tua password (dovrai aver fornito ai tuoi studenti le credenziali di accesso).
4- Clicca su “Projects” (Progetti) sulla barra Menù in alto
5- Clicca sul bottone “+ Add a new project” (Aggiungi un Nuovo progetto).
6- Denomina il tuo progetto “smart classroom” (o “classe intelligente”) e imposta su “riconoscimento” (Recognising) l’opzione “text” (testo). Clicca su “Create” (Crea).
7- Dovresti vedere “smart classroom” (o “classe intelligente”) nella lista dei progetti. Clicca su di esso.
9- Clicca su “Scratch”
10- Clicca su “Scratch by itself”. La pagina ti avvertirà che il tuo progetto non è ancora pronto per essere utilizzato, ma cliccando su “Scratch by itself” si aprirà Scratch.
11. Carica il template Smart Classroom. Clicca Project templates e scegli Smart classroom.
13- Clicca sul tab Scripts e chiedi di costruire una sequenza che in base al comando inserito dall’utente, accenda o spenga il ventilatore e la lampada. Il modo più semplice è quello che vedi in figura seguente. Usando il blocco “invia a tutti …” con dei messaggi diversificati, si avviano o si interrompono delle animazioni caratteristiche per ognuno degli elementi presenti sullo stage.
14- Salva il progetto. Clicca su File, Save Project per salvare il progetto in un file nel tuo PC.
15- Clicca sulla bandiera verde per effettuare dei test.
16- Scrivi dei messaggi e osserva la reazione del sistema!
Prova “Accendi la lampada”, “Spegni la lampada”, “Accendi il ventilatore”, e “Spegni il ventilatore”. Dovrebbe funzionare correttamente. Scrivi qualche altro comando, e nulla dovrebbe accadere! Anche se commetti un piccolo errore nello scrivere le parole, non otterrai nulla.
Che cosa abbiamo fatto finora?
Hai programmato la classe virtuale per reagire a comandi usando un approccio basato su semplice regole. Se volessi gestire comandi caratterizzati da diverse espressioni, dovresti inserire nuovi blocchi “se … allora …”.
Il problema è che avrai bisogno di predire esattamente quale comando riceverà l’assistente intelligente. Elencare ogni possibile messaggio potrebbe impegnarti all’infinito (e non abbiamo così tanto tempo). Ora, proveremo un approccio migliore: insegnare al computer a riconoscere i comandi da solo.
1- Torna di nuovo su Machine Learning for Kids, effettua il log in, clicca su Projects e poi “smart classroom” (o il nome del progetto che avevi assegnato).
2- Dobbiamo raccogliere alcuni esempi per addestrare il computer. Clicca sul bottone Train.
3- Clicca su “+ Add new label” e scrivi “fan on” (“ventilatore acceso”). Clicca di nuovo, e crea un secondo gruppo chiamato “fan off” (“ventilatore spento”). Clicca di nuovo, e crea un terzo gruppo “lamp on” (“lampada accesa”). Clicca di nuovo, e crea un quarto gruppo “lamp off” (“lampada spenta”).
4- Clicca su “Add example” all’interno del gruppo “fan on”, e scrivi un modo per chiedere che il ventilatore venga acceso. Ad esempio, potresti scrivere “Per favore potresti accendere il ventilatore”.
5- Clicca su “Add example” all’interno del gruppo “fan off”, e scrivi un modo per chiedere che il ventilatore venga spento. Ad esempio, potresti scrivere “Vorrei spegnere il ventilatore ora”
6- Fai la stessa operazione per I gruppi “lamp on” e “lamp off”.
7- Ripeti gli step 4-6 finché non avrai aggiunto almeno sei esempi per ogni gruppo.
Sii creativo!
Prova a pensare a più modi possibili per esprimere lo stesso comando.
8- Clicca sul link “< Back to project”, poi clicca “Learn & Test”
9- Clicca sul bottone “Train new machine learning model”. A patto che avrai raccolto sufficienti esempi, il computer dovrebbe imparare come riconoscere nuovi comandi dagli esempi che avevi scritto.
10- Aspetta che l’addestramento sia completo. Potrebbe impiegare uno o due minuti. Mentre aspetti, prova a completare il quiz sul machine learning a scelta multipla sul fondo della pagina.
11- Quando l’addestramento sarà completo, comparirà una casella di Test. Prova a testare il tuo modello di machine learning per verificare ciò che è stato imparato dal tuo computer. Scrivi un commando e premi INVIO. Dovrebbe essere riconosciuto correttamente come uno dei 4 comandi.
Prova con esempi che non avevi inserito nel PC in precedenza.
Se non sei soddisfatto di come il computer riconosce i comandi, torna allo step 4, e aggiungi nuovi esempi. Assicurati di ripetere lo step 9 per addestrare il modello con i nuovi esempi!
12- Clicca sul link “< Back to project”
Che cosa abbiamo fatto finora?
Abbiamo iniziato ad allenare un computer a riconoscere comandi.
Invece di provare a scrivere regole che siano in grado di fare ciò, lo stai realizzando raccogliendo esempi. Questi esempi vengono utilizzati per addestrare un modello machine learning.
Questa tecnica viene chiamata “supervised learning” (apprendimento supervisionato) perché stai supervisionando l’addestramento del computer (sei tu che fornisci gli esempi corretti al PC per ogni gruppo).
Il computer impara dai pattern (ricorrenze) che riconosce negli esempi che gli hai dato, come la scelta delle parole, e il modo in cui sono strutturate le frasi. Queste ricorrenze verranno utilizzate per renderlo capace di capire vari messaggi.
13- Clicca su “Make”
14- Clicca sul bottone “Scratch 3”
15- Clicca su “Open in Scratch 3”. Questa pagina contiene istruzioni (in inglese) su come usare nuovi blocchi in Scratch.
17- Carica il progetto che avevi salvato in precedenza. Clicca su File, Load Project e scegli il percorso nel quale hai salvato il progetto della lezione 1. Clicca OK quando ti verrà chiesto di sostituire il progetto attuale.
Alcuni suggerimenti importanti:
20- Fai dei test sul tuo progetto! Inserisci un commando e premi INVIO. Il ventilatore e la lampada dovrebbero reagire alle tue istruzioni.
Assicurati di inserire e provare messaggi che non avevi incluso nel training.
21- Salva il progetto. Clicca File, Save Project .
Che cosa abbiamo fatto finora?
Hai modificato il tuo assistente di classe intelligente in Scratch, utilizzando il machine learning invece di un approccio basato su regole (come in precedenza). Addestrare il computer ad essere in grado di riconoscere istruzioni in autonomia dovrebbe essere più veloce rispetto a creare una lista di ogni possibile comando che potrebbe essere inserito.
Maggiore è il numero degli esempi che fornisci, migliore dovrebbe essere il riconoscimento delle istruzioni da parte del PC.
22- Lascia Scratch aperto (ci torneremo a breve) ma torna alla pagina Learn & Test all’interno del Training tool.
Inserisci un messaggio che non ha nulla a che fare con lampade o ventilatore all’interno della casella di testo.
Ad esempio, “fammi un sandwich al prosciutto”.
23- Guarda il livello di confidenza (confidence score), e verifica che sia molto basso. Confrontalo con il valore che ottieni con il comando “accendi la lampada”. Questo è il modo che il computer utilizza per dirti che non è molto sicuro di aver capito il comando, perché non assomiglia molto a ciò che aveva imparato dagli esempi.
24. Torna su Scratch. Puoi aprire il tuo progetto salvato se hai chiuso Scratch per sbaglio.
25. Modifica lo script dello sprite “classroom” in modo che utilizzi il livello di confidenza: se il livello di confidenza è troppo basso, il sistema si potrebbe scusare dicendo di non aver capito! Una possibile soluzione potrebbe essere la seguente:
26- Clicca sulla bandiera verde e ripeti il test. Prova inserendo comandi che non hanno niente a che fare con lampade o ventilatori. Prova chiedendo che qualcosa di diverso venga acceso o spento. Verifica che il tuo assistente reagisca nel modo corretto.
27- Salva il progetto.
Abbiamo finito
Vuoi scaricare il tutorial originale in italiano rivolto agli studenti?
Clicca qui per il file in formato Microsoft Word (licenza CC BY-NC-SA 4.0).
Clicca qui per il file in formato PDF (licenza CC BY-NC-SA 4.0).
Grazie a Dale Lane per aver sviluppato la piattoforma Machine Learning for Kids e per aver preparato tante schede didattiche, tra cui Smart Classroom da cui questo progetto prende spunto!
Se ti interessa approfondire ancora di più il machine learning, ti consigliamo questa raccolta di corsi su Courseduck!
Vuoi saperne di più su Scratch? A questo link trovi un corso online certificato che puoi seguire come e quando vuoi!
FREE
Tempo: 75 min
FREE
Tempo: 6 min
FREE
Tempo: 4 min
FREE
Tempo: 45 min
Vuoi portare nella tua scuola questa o altre nostre proposte formative?
CONTATTACICiao! Sono Wetruvio, il tuo assistente virtuale!