La scorsa primavera Philips Pham, uno studente svedese, seguì un corso online della Stanford University, “Code in Place”[1], preordinato all’insegnamento dei fondamenti della programmazione nell’era Covid-19. Dopo quattro settimane di corso, Pham provò a sostenere la prima prova “intermedia” cercando di scrivere un semplice programma, per testare le sue capacità. Diversi giorni dopo, ricevette una critica dettagliata della sua “opera”, nella quale da un lato veniva apprezzato il suo lavoro mentre dall’altro venne evidenziato un errore nella programmazione. E ciò non farebbe notizia, se non fosse che tale giudizio fu espresso da una macchina.
Valutazioni fatte dall’AI, il caso di Stanford
Durante questo corso online, infatti, fu impiegato nuovo tipo di intelligenza artificiale pronto a dare feedback a Pham come a migliaia di altri studenti che fecero lo stesso test. Costruito da un team di ricercatori di Stanford, questo sistema automatizzato “indica la strada” verso un nuovo futuro per il settore educativo online, il quale potrà facilmente raggiungere migliaia di persone (pur non essendo sempre la “guida” di cui molti studenti hanno bisogno o desiderano).
Per Stanford, quasi inutile a dirsi, è stato un successo, ben oltre le aspettative. La professoressa Chelsea Finn e il suo team progettarono questo sistema di valutazione, basato sull’intelligenza artificiale, per il solo settore relativo ai linguaggi di programmazione. Tuttavia, i ricercatori utilizzarono tecniche che in futuro potrebbero automatizzare il feedback degli studenti in altre situazioni, anche per materie diverse dal Coding. D’altro canto, però, pur lodando il passo in avanti in materia, per l’Allen Institute for Artificial Intelligence di Seattle (USA) queste tecniche sono molto lontane dal poter sostituire dei “valutatori umani”; in poche parole, il feedback e i consigli dei tutor, dei professori e degli assistenti didattici sarebbero sempre preferibili a una “critica automatizzata”.
AI e reti neurali: così i social ci illudono di avere il controllo, mentre decidono per noi
Com’è nato il corso Code in Place
Il corso online “Code in Place” è basato su una soluzione che Stanford offre da più di un decennio. Ogni semestre, l’università californiana somministra agli studenti un test di apprendimento con diversi esercizi relativi al mondo della programmazione, mantenendo una registrazione digitale dei risultati, compresi i codici scritti dagli studenti, nonché le critiche puntuali di ogni programma da parte degli istruttori universitari. Ed è su questo decennio di registrazioni che si fonda il dataset che ha guidato il nuovo esperimento della rinomata università americana nel campo dell’Intelligenza Artificiale.
La professoressa Chelsea Finn e il suo team hanno costruito una rete neurale, un sistema matematico che può imparare nuove abilità da grandi quantità di dati. Per fare degli esempi: individuando i modelli in migliaia di foto di gatti, una rete neurale può imparare a identificare un gatto; analizzando centinaia di vecchie telefonate, può imparare a riconoscere le parole pronunciate e altre caratteristiche vocali. Oppure, come nel caso in oggetto, esaminando il modo in cui gli assistenti didattici valutano i test, il sistema può imparare a valutare questi esami per conto proprio.
Il sistema di Stanford ha passato ore e ore ad analizzare esempi di vecchi esami di metà corso, imparando lungo tutto il decennio esaminato. Successivamente era pronto a migliorarsi, perfezionandosi sempre di più e autonomamente. Infatti, non appena gli fu data una “manciata di esempi extra” di un nuovo test del corso “Code in Place”, il sistema ha potuto rapidamente comportarsi di conseguenza, nel modo che abbiamo analizzato. In pratica, il sistema esamina i problemi e si adatta, imparando da ciò che vede.
Le reti neurali nel campo dell’educazione
Tornando allo studente svedese Philips Pham, anche se lo strumento automatico utilizzato da Stanford non è stato in grado di valutare uno dei suoi programmi (presumibilmente perché aveva scritto un frammento di codice diverso da qualsiasi cosa l’intelligenza artificiale dell’università californiana avesse mai visto fino a quel momento), il medesimo studente identificò i bug specifici nel suo codice e suggerì alcuni modi per correggerli. La tecnologia era efficace perché il suo ruolo era ben chiaramente definito.
Ma con dati giusti “alla mano” le reti neurali possono imparare una serie di compiti di diversa natura. Siamo di fronte alla stessa tecnologia che identifica i volti nelle foto che vengono pubblicate su Facebook, che riconosce i comandi impartiti al proprio smartphone e che traduce da una lingua all’altra in servizi come Skype e Google Translate. Per il team di Stanford e per altri ricercatori, la speranza è che queste tecniche possano automatizzare il campo dell’educazione in molti altri modi.
Insegnanti e IA: un futuro in simbiosi
I ricercatori sono a lavoro per mettere su strumenti di insegnamento automatizzati fin dagli anni Settanta, compresi i robot-tutor e i correttori “computerizzati” nel campo dei saggi accademici. Ma i progressi sono stati (finora) lenti. Costruire un sistema che possa semplicemente e chiaramente guidare gli studenti verso un certo obiettivo spesso richiede anni di lavoro, con i progettisti che lottano per definire ogni piccolo neo nel comportamento della macchina. Usando i metodi che hanno guidato il progetto di Stanford, i ricercatori possono accelerare significativamente questo lavoro. Negli ultimi anni, i ricercatori hanno costruito una tecnologia che può analizzare il linguaggio naturale allo stesso modo in cui il sistema di Stanford analizza il codice della macchina.
Anche se il sistema di Stanford fornisce un feedback netto, il medesimo si dimostrerebbe inutile se gli studenti avessero fatto delle domande sul test che hanno sbagliato, interrogando la macchina sulle sue scelte. Il nuovo sistema automatizzato è un modo per raggiungere più studenti di quelli che gli istruttori potrebbero, altrimenti, raggiungere in autonomia. E se ciò servisse a individuare i problemi nel codice degli studenti, mostrando gli specifici errori di codifica che stanno facendo e con quale frequenza, potrebbe aiutare gli istruttori a comprendere meglio quali studenti hanno bisogno di aiuto e come aiutarli. D’altronde il futuro è simbiotico, con insegnanti e intelligenza artificiale che lavorano insieme.[2]
Note
- Code in Place. A free, human-centric, intro-to-coding course in the time of COVID-19. https://codeinplace.stanford.edu/ ↑
- Can A.I. Grade Your Next Test? The New York Times. https://www.nytimes.com/2021/07/20/technology/ai-education-neural-networks.html ↑