In questo articolo si illustrerà come sia semplice dal punto di vista didattico e tecnologico incorporare attività legate all’intelligenza artificiale – nella fattispecie di tipo discriminativo – in qualsiasi ambito disciplinare. L’obiettivo di tale azione didattica sperimentale riguarderà l’introduzione di percorsi di ricerca e sperimentazione in cui gli studenti da una parte siano attivi protagonisti, e dall’altra, comprendano fattivamente il dominio di conoscenze in cui orbita l’intelligenza artificiale.
Requisiti Tecnologici
Per sperimentare l’attività didattica in questione non si richiedono né forti basi di conoscenze informatiche né tantomeno conoscenze di linguaggi specifici di programmazione. I requisiti tecnologici basici richiesti sono i seguenti:
- un computer connesso a Internet (possibilmente con webcam);
- il software di intelligenza artificiale denominato Teachable Machine[1] sviluppato da Google Creative Lab. Il software funziona liberamente online ed è accessibile quindi semplicemente tramite un qualsiasi browser;
- la produzione, a seconda del tipo di progetto da svolgere, di tutta una serie di dati nella forma di file di immagine o audio, che gli stessi studenti potranno creare semplicemente con i propri smartphone;
- il caricamento di tali file nel software Teachable Machine ed esecuzione dei test di prova per verificare l’attendibilità nella classificazione.
Sintesi dell’attività
In estrema sintesi l’attività consisterà nell’istruire il programma Teachable Machine ad eseguire con sempre maggiore precisione e accuratezza, determinate operazioni di riconoscimento e di classificazione automatica. A seconda dei file dei dati immessi dagli studenti tali progetti potrebbero riguardare:
- riconoscimento di suoni;
- riconoscimento di immagini;
- riconoscimento di pose.
Quest’ultima tipologia di classificazione è particolarmente interessante si concentra sull’analisi e il rilevamento delle pose del corpo umano come ad esempio i movimenti delle mani o la postura del corpo estratte da immagini o da fotogrammi video.
Al momento sono solo queste le tre possibilità progettuali presenti in Teachable Machine, anche se nella homepage del software è messo in evidenza che in futuro saranno aggiunte ulteriori tipologie di progetti di classificazione e riconoscimento.
Intelligenza Artificiale o Intelligenze Artificiali
Prima di addentrarsi nella spiegazione di che cosa è possibile sperimentare con tale software è importante comprendere essenzialmente due concetti chiave. Il primo è che esistono diverse tipologie di intelligenze artificiali. Esse su sollecitazione degli input umani si comportano in maniera diversa. In particolare, tra le tante “Intelligenze Artificiali”, le due maggiori tipologie sono quelle di tipo generativo e quelle di tipo discriminativo.
Intelligenza Artificiale Generativa
L’intelligenza artificiale generativa, si concentra essenzialmente sulla creazione di nuove informazioni che assomigliano a quelle esistenti già caricate nella memoria del programma. Un modello generativo potrebbe essere addestrato, ad esempio, su un set di immagini di gatti, di cani o anche di persone, imparando così le caratteristiche comuni di ognuna di esse. Partendo da queste informazioni, tale intelligenza è in grado di generare nuove immagini che sembrano appartenere ad una delle tre categorie menzionate, ma che non esistono effettivamente nella realtà. In sostanza, l’intelligenza artificiale generativa si concentra sulla creazione di nuove informazioni – nella fattispecie dell’esempio relative a immagini – basate su modelli appresi, grazie ai dati consolidati nella propria memoria. Un esempio di intelligenza artificiale generativa può essere ChatGPT-4 per la scrittura, il testo “creativo” o la programmazione, oppure DALL·E 3 o Leonardo.AI per la creazione di figure o immagini “artificiali”.
Intelligenza Artificiale Discriminativa
L’intelligenza artificiale discriminativa si concentra invece nel discernimento e categorizzazione di informazioni in base ai dati appresi precedentemente e conservati nella memoria. Continuando con l’esempio precedente sui cani e gatti, se si costruisce un modello discriminativo per classificare le immagini di tali esseri viventi, il modello si comporta imparando semplicemente a distinguere le caratteristiche specifiche di tali animali, come la forma delle orecchie, la lunghezza del muso, le zampe o il manto. Basandosi su queste caratteristiche, il modello imparerà a classificare successivamente in maniera sempre più accurata le nuove immagini che gli verranno poste inserendole nelle classi corrispondenti di felidi o di canidi. In sostanza, l’intelligenza artificiale discriminativa si concentra nel distinguere, classificare o anche predire l’appartenenza in particolari classi prestabilite, confrontando ciò che viene presentato con i dati e le informazioni esistenti nella sua memoria.
L’importanza dei dati in entrambe le intelligenze
In breve, l’intelligenza artificiale discriminativa si concentra sul distinguere e classificare le informazioni esistenti, mentre l’intelligenza artificiale generativa lavora sulla creazione di nuove informazioni derivate e simili a quelle esistenti. Si tratta chiaramente di due modi diversi di output finale, ma in entrambi i casi il motore delle azioni dipende sempre dalla quantità e dalla qualità dei dati che vengono forniti e appresi così da ottenere un funzionamento sempre più fine e corretto.
Come fa l’intelligenza artificiale ad apprendere?
In maniera estremamente semplificativa i programmi di Intelligenza Artificiale, siano essi discriminativi o di tipo generativo, imitano per certi versi ciò che avviene nel cervello umano tra neuroni e sinapsi durante l’apprendimento. Quindi, indipendentemente dalla tipologia di Intelligenza Artificiale, per ottenere tali imitazioni cerebrali sono necessarie tre motori che interagiscono sinergicamente tra loro che sono:
- le Reti Neurali Artificiali (ANNs). Si tratta di un modello matematico che imita il funzionamento del cervello umano. Una serie di piccoli “neuroni” artificiali si collegano in base alle informazioni ricevute insieme tra di loro formando una rete digitale sempre più complessa. Ogni neurone digitale ha un compito specifico: prende un input, lo elabora e produce un output. Le ANNs sono utilizzate come strumento per insegnare al computer a riconoscere modelli nei dati (come negli esempi fatti precedentemente per riconoscere immagini di gatti e cani);
- il Machine Learning (ML) è un tipo di apprendimento sviluppato apposta per i computer. Si tratta di insegnare loro a fare qualcosa, senza in realtà programmarli esplicitamente per farlo;
- Il Deep Learning (DL) è un tipo di Machine Learning che utilizza reti neurali artificiali “profonde”, che hanno molti strati (layer) di neuroni che si connettono tra loro. Questi strati profondi aiutano a creare modelli di intelligenza sempre più complessi e a risolvere problemi sempre più difficili e ostici.
In sintesi, le reti neurali artificiali sono utilizzate all’interno del Machine Learning e del Deep Learning come elementi di un cervello artificiale capace senza sosta di imparare dai dati e risolvere problemi.
La struttura “intelligente” di Teachable Machine
Teachable Machine è un’applicazione web che in maniera estremamente intuitiva utilizza le reti neurali artificiali e tecniche di Deep Learning per consentire agli utenti di addestrare modelli di Machine Learning in modo facile e intuitivo senza dover programmare alcun algoritmo. Le reti neurali artificiali profonde sono uno strumento potente utilizzato nel software per riconoscere pattern complessi nei dati che gli vengono posti e per poi svolgere tutta una serie di compiti di tassonomizzazione.
Come funziona in pratica Teachable Machine
Al momento nel software esistono tre possibilità di progettazione, di riconoscimento e classificazione che riguardano:
- immagini: gli utenti possono utilizzare la loro webcam o lo smartphone per catturare immagini di oggetti o gesti che desiderano fare riconoscere dal software. Ad esempio, possono addestrare il modello a riconoscere una pianta specifica partendo dal riconoscimento delle foglie;
- audio e suoni: gli utenti possono registrare campioni audio per addestrare il modello a riconoscere determinati suoni o pattern sonori. Ad esempio, possono addestrare il modello a riconoscere il suono del battito delle mani, del fischio, di uno strumento o di una parola specifica;
- pose: Teachable Machine supporta anche il rilevamento delle pose attraverso la webcam, consentendo agli utenti di addestrare il modello a riconoscere gesti o movimenti del corpo. Ad esempio, si può addestrare il modello a riconoscere un saluto, un inchino o altre pose specifiche e movimenti del corpo o delle mani, come il segno di pace, le parole del linguaggio dei segni, il pollice in su o giù e altre pose specifiche.
Dopo aver acquisito i dati di addestramento, l’applicazione utilizza un processo chiamato transfer learning[2] per adattare il modello di rete neurale pre-addestrato ai dati specifici forniti dall’utente. Questo processo consente di ottenere risultati accurati anche con un numero limitato di dati di addestramento.
I dati di apprendimento che saranno caricati nel software devono essere suddivisi in classi. Ad esempio se lo scopo è classificare dei cani per razza, dobbiamo creare una classe specifica per ogni razza e poi, per ogni classe creata, caricare i file immagini corrispondenti. Il software permette di creare tutte le classi che un utente necessita. È bene però non caricare tutte le immagini prodotte in quanto una parte di quelle non inserite serviranno a testare la precisione ed affidabilità nella classificazione del modello creato.
Una volta completato l’addestramento, Teachable Machine fornisce come esportazione gli algoritmi di classificazione prodotti in formato HTML, JavaScript o TensorFlow che possono essere facilmente integrati nei propri progetti web, applicazioni o dispositivi.
Per chi avesse difficoltà nell’utilizzo del software, in YouTube (oltreché nel sito del software) sono presenti numerosi e brevi tutorial.
Dieci esempi per un uso didattico del programma
Le possibilità di utilizzazione didattiche di Teachable Machine sono numerose, l’unico limite è legato veramente alla fantasia di colui che opera. A titolo esemplificativo vengono proposte di seguito dieci possibilità di uso didattico del software.
- Apprendimento degli angoli e delle misure: Si tratta di addestrare il modello a riconoscere angoli acuti, ottusi e retti e utilizzarlo per valutare la correttezza delle misure angolari fornite dagli studenti.
- Identificazione di pattern e simmetrie: si potrebbe addestrare il modello a riconoscere configurazioni simmetriche e utilizzarlo per identificare e analizzare pattern geometrici presenti in figure complesse.
- Riconoscimento di strumenti musicali: il modello potrebbe essere addestrato a distinguere tra il suono di un pianoforte, una chitarra, un violino e altri strumenti.
- Correzione della pronuncia: gli studenti che imparano una nuova lingua potrebbero utilizzare Teachable Machine per esercitarsi nella pronuncia corretta dei vocaboli e delle frasi. Il modello potrebbe essere addestrato utilizzando campioni audio di parlanti nativi madre lingua e non nativi per fornire feedback sulla pronuncia agli studenti.
- Riconoscimento di scrittura a mano: gli insegnanti potrebbero utilizzare il software per addestrare modelli di riconoscimento della scrittura a mano di parole e di frasi in una lingua specifica. Questo potrebbe essere utile per l’apprendimento della calligrafia e per l’analisi di scritture non convenzionali o di scritture in alfabeti non latini.
- Esperienze interattive artistiche: gli studenti potrebbero addestrare un modello a riconoscere diverse opere d’arte.
- Feedback su esercizi di educazione fisica e postura: gli studenti potrebbero utilizzare il software per ricevere feedback immediato sulla forma e sull’esecuzione durante gli esercizi fisici. Il modello potrebbe essere addestrato a rilevare errori comuni nella postura o nell’equilibrio.
- Riconoscimento di accordi e progressioni armoniche: gli studenti di musica potrebbero utilizzare il programma per migliorare la loro comprensione degli accordi e delle progressioni armoniche. Il modello potrebbe essere addestrato a riconoscere diversi tipi di accordi.
- Riconoscimento di specie vegetali e animali: gli studenti potrebbero utilizzare Teachable Machine per riconoscere diverse specie vegetali e animali. Ad esempio, potrebbero addestrare il modello a distinguere tra varie specie di fiori, piante o animali utilizzando immagini ritraenti caratteristiche morfologiche specifiche.
- Classificazione di cellule e tessuti: si potrebbe addestrare un modello a riconoscere diverse tipologie di cellule (es. cellule vegetali vs. cellule animali) o tessuti biologici (es. tessuto muscolare vs. tessuto nervoso) utilizzando immagini microscopiche.
Teachable Machine offre molte opportunità per l’apprendimento pratico e l’esplorazione creativa, ma soprattutto incoraggia gli studenti a diventare creatori di tecnologia anziché solo consumatori.
[1] Teachable Machine: Addestra un computer a riconoscere i tuoi suoni, immagini e pose. Un modo facile e veloce per creare modelli di machine learning per i tuoi siti, app e molto altro, senza alcuna esperienza o conoscenza di programmazione necessaria.
[2] A titolo di esempio: si immagini una persona che vuole imparare a suonare il basso ed ha un amico che già sa suonare la chitarra. Invece di iniziare da zero, chiede al suo amico di condividere alcuni suggerimenti e trucchi che ha imparato mentre suonava la chitarra. Questi consigli aiutano la persona a imparare più velocemente e con meno sforzo, perché può costruire sulle esperienze del suo amico anziché partire da zero. In sostanza, il “transfer learning” funziona allo stesso modo: un modello già addestrato condivide la sua esperienza con un nuovo modello, rendendo l’apprendimento più efficiente.