MimìrCast: le novità sull’AI ogni giorno
Ascolta il podcast ➔
Apprendimento automatico: cos'è, con un conto che puoi rifare a mano

Machine learning con Excel: come addestrare un modello in cinque numeri

Due mail arrivano nello stesso minuto. Una te la ritrovi in cima alla casella, l’altra è già finita nello spam, e sono scritte quasi uguali. Apri le foto sul telefono, digiti «bicicletta» nella ricerca, ed escono le tue foto con le biciclette dentro, comprese quelle del 2014 che non hai mai etichettato. Nessuno, in nessun punto di quei due sistemi, ha scritto una riga di codice che dice «se il messaggio contiene questa parola allora è spam» o «se nella foto ci sono due cerchi e un telaio allora è una bicicletta».

Eppure la regola c’è: è scritta in numeri, e quei numeri non li ha battuti nessuno sulla tastiera. Li ha calcolati la macchina, guardando esempi. Se quello che cerchi è la definizione, cos’è l’apprendimento automatico, i tre tipi, il rapporto con intelligenza artificiale e deep learning, è spiegata per esteso in cos’è l’apprendimento automatico, ed è da lì che conviene partire. Questa pagina fa una cosa sola e diversa: rifà il conto. Cinque numeri, due sottrazioni, una divisione a mano, e poi le stesse quantità ricalcolate in un foglio di calcolo, PENDENZA, INTERCETTA, RQ e la previsione di una metratura nuova, così che alla fine non devi fidarti della spiegazione: hai il modello aperto davanti, cella per cella.

In questo articolo scoprirai:

  • Cos’è l’apprendimento automatico (machine learning), detto senza gergo
  • Come funziona l’apprendimento automatico, con un conto che puoi rifare a mano
  • Come rifare quello stesso conto in un foglio di calcolo, formula per formula
  • Come usare la regola calcolata per prevedere il prezzo di una metratura nuova
  • Esempi pratici di machine learning: dove lo vedi all’opera ogni giorno

Cos’è l’apprendimento automatico (machine learning), detto senza gergo

L’apprendimento automatico (in inglese machine learning) funziona rovesciando l’ordine del software tradizionale: invece di ricevere le regole e applicarle ai dati, riceve i dati insieme alle risposte giuste e calcola lui la regola che le collega. Il calcolo consiste nel misurare di quanto la regola attuale sbaglia su quegli esempi e nel modificarla finché l’errore non smette di scendere. La regola che ne esce è un insieme di numeri, si chiamano parametri, che nessun programmatore ha scritto a mano.

Arthur Samuel, l’ingegnere IBM che nel 1959 coniò il termine, lo definì, come ricorda MIT Sloan, «il campo di studi che dà ai computer la capacità di imparare senza essere esplicitamente programmati». La frase è vecchia di quasi settant’anni e regge ancora, ma da sola non spiega niente: il punto non è che la macchina «impara», è che la regola diventa un risultato invece che un ingrediente. Se vuoi il termine inglese e le sue sfumature, l’abbiamo smontato in cos’è il machine learning: la regola non è scritta, è calcolata.

Software classico e apprendimento automatico: cosa entra e cosa esce Programmazione classica Dati (5 metrature) + Regola scritta a mano «2,5 mila € al m²» Risposte (prezzi stimati) Apprendimento automatico Dati (5 metrature) + Risposte vere (5 prezzi di vendita) Regola calcolata 2,57 × m² + 20,33 Stessi ingredienti, posti diversi: sotto, la regola è ciò che esce, non ciò che entra. I numeri 2,57 e 20,33 sono quelli calcolati nella sezione successiva.

Come funziona l’apprendimento automatico: addestramento e inferenza

Il ciclo ha due tempi, e confonderli è l’errore più comune. Nell’addestramento il modello vede i dati con le risposte e aggiusta i propri numeri: è la fase in cui si «impara», e finisce. Nell’inferenza il modello riceve un dato nuovo, senza risposta, e produce una previsione applicando quei numeri ormai fissi. Un modello in produzione non sta imparando: sta applicando. Quando Gmail sposta una mail nello spam non ha imparato nulla in quell’istante, ha solo eseguito un conto deciso mesi prima.

Come funziona l’apprendimento automatico, con un conto che puoi rifare a mano

Prendiamo cinque appartamenti con metratura e prezzo di vendita. I cinque appartamenti sono inventati per l’esempio, il conto no, quello è vero e lo rifai in due minuti su un foglio di calcolo. Tutte le cifre che seguono sono arrotondate a due decimali, e sono le stesse che ti restituirà il foglio nella sezione successiva: le puoi confrontare riga per riga.

Metratura (m²)40557085100
Prezzo (migliaia di €)120165195250270

Vogliamo una regola della forma prezzo = m × metratura + q. Non la scriviamo: la calcoliamo. Il criterio è quello dei minimi quadrati, che la documentazione di scikit-learn descrive come il modello lineare «con coefficienti w che minimizzano la somma dei quadrati dei residui»: fra tutte le rette possibili, si sceglie quella che rende più piccola la somma degli errori al quadrato.

Media delle metrature: 350 ÷ 5 = 70. Media dei prezzi: 1.000 ÷ 5 = 200. Ora gli scarti dalla media: per le metrature −30, −15, 0, +15, +30; per i prezzi −80, −35, −5, +50, +70.

  • Somma dei prodotti incrociati: (−30×−80) + (−15×−35) + (0×−5) + (15×50) + (30×70) = 2.400 + 525 + 0 + 750 + 2.100 = 5.775
  • Somma dei quadrati delle metrature: 900 + 225 + 0 + 225 + 900 = 2.250
  • Pendenza: m = 5.775 ÷ 2.250 = 2,5667, cioè 2,57 mila euro per m² (nei conti che seguono usiamo il valore pieno, 2,5667)
  • Intercetta: q = 200 − (2,5667 × 70) = 200 − 179,67 = 20,33

La regola è prezzo = 2,57 × m² + 20,33

La regola è prezzo = 2,57 × m² + 20,33. Nessuno l’ha scritta. Verifichiamola: sui cinque appartamenti prevede 123, 161,5, 200, 238,5 e 277, cioè sbaglia di −3, +3,5, −5, +11,5, −7. La somma degli scarti fa esattamente zero, è una proprietà dei minimi quadrati, ed è il primo controllo che fai per sapere se hai sbagliato i conti.

Quanto vale questa regola? L’errore quadratico medio è (9 + 12,25 + 25 + 132,25 + 49) ÷ 5 = 45,5, cioè una radice di 6,75 mila euro di errore tipico. Confrontalo con il modello più stupido possibile, rispondere sempre «200 mila», che di errore tipico ne fa 54,86 mila euro. Il modello riduce l’errore di otto volte, e il coefficiente R² vale 1 − 227,5/15.050 = 0,98.

I cinque appartamenti, la retta calcolata dai minimi quadrati e gli errori residui 100 150 200 250 300 40 60 80 100 metratura in m² prezzo in migliaia di € errore +11,5 Retta calcolata: prezzo = 2,57 × m² + 20,33, errore tipico 6,75 mila € Rispondere sempre «200 mila»: errore tipico 54,86 mila €. I segmenti rossi sono i residui.

Lo stesso conto in un foglio di calcolo, formula per formula

Qui il pezzo smette di spiegare e comincia a farti lavorare. Apri Excel o Google Fogli e ricostruisci il conto nell’ordine in cui lo faresti davvero: prima i dati, poi i due numeri della regola, poi la misura di quanto vale, e infine la previsione su una metratura che nella tabella non c’è.

1. I dati. In colonna A metti le metrature: A1 l’intestazione, e da A2 ad A6 i valori 40, 55, 70, 85, 100. In colonna B i prezzi in migliaia di euro, da B2 a B6: 120, 165, 195, 250, 270. Dieci celle in tutto, è l’intero set di addestramento, e l’ordine conta solo nel senso che ogni riga deve tenere insieme la metratura e il prezzo dello stesso appartamento.

2. La pendenza. In una cella libera scrivi =PENDENZA(B2:B6;A2:A6), prima i valori da prevedere, poi quelli da cui prevedere, e ottieni 2,5667, cioè 2,57 con due decimali: è la stessa divisione 5.775 ÷ 2.250 che hai fatto a mano. Si legge così: ogni metro quadro in più vale in media 2,57 mila euro. Non è una legge del mercato, è la media dei tuoi cinque esempi.

3. L’intercetta. =INTERCETTA(B2:B6;A2:A6) restituisce 20,3333, cioè 20,33. È il punto in cui la retta taglia l’asse verticale, quindi in teoria «il prezzo di un appartamento di zero metri quadri»: un’assurdità che ti dice subito una cosa utile, e cioè che l’intercetta non va letta come un prezzo ma come l’aggiustamento che serve perché la retta passi dove stanno i dati. A questo punto hai i due soli parametri del modello, e sono esattamente i numeri che hai calcolato a mano.

4. La qualità. =RQ(B2:B6;A2:A6) restituisce 0,9849, cioè 0,98: è l’R² della sezione precedente, e si legge come la quota della variazione dei prezzi che la metratura da sola riesce a spiegare, qui il 98%, con il 2% che resta ai residui. Vicino a 1 la retta segue i punti, vicino a 0 non sta spiegando niente. Una nota che serve più dell’R² stesso: questo 0,98 è misurato sugli stessi cinque appartamenti usati per calcolare la retta, quindi è una misura ottimistica per costruzione.

5. La previsione, che è il punto di tutto. Finora hai addestrato; adesso fai inferenza. Metti in D2 una metratura nuova, per esempio 92, e in E2 scrivi =PENDENZA(B2:B6;A2:A6)*D2+INTERCETTA(B2:B6;A2:A6). Escono 256,47 mila euro. Cambia il valore in D2 e la stima si aggiorna: quella cella è il modello in produzione, e non sta imparando niente, sta applicando due numeri fissi. Tieni D2 dentro l’intervallo dei dati che hai (40-100 m²): fuori da lì la retta continua serenamente, ma non ha più nessun esempio a sostenerla.

In Python, LinearRegression().fit(X, y) di scikit-learn fa la

In Python, LinearRegression().fit(X, y) di scikit-learn fa la stessa identica cosa e ti mette i numeri in coef_ e intercept_: sotto il cofano sono moltiplicazioni fra matrici, cioè algebra lineare.

Che questo sia il vero mestiere lo dice anche la documentazione di Google: «in un contesto di machine learning, la regressione lineare trova la relazione fra le caratteristiche e l’etichetta». Nel loro esempio, addestrato sui consumi delle auto, il modello risultante è y’ = 34 + (−4,6)·x, dove x è il peso in migliaia di libbre: per un’auto da 4.000 libbre la previsione è 34 − 18,4 = 15,6 miglia per gallone. Due numeri, 34 e −4,6, e sono numeri calcolati da dati veri. Quando il modello ha milioni di parametri invece di due, l’aggiustamento non si fa più a mano ma con la discesa del gradiente: cambia la scala, non il principio.

Due righe per collocare quello che hai in mano. Il conto del foglio è apprendimento supervisionato: ogni esempio aveva la risposta giusta accanto, e il modello ha minimizzato la distanza dalle risposte, è il caso del 2,57 e del 20,33, ed è di gran lunga il più diffuso in produzione. Senza etichette (chiedendo «quali appartamenti si somigliano» invece di «quanto costa») saresti nel non supervisionato; con un punteggio che arriva dopo una sequenza di mosse, nel rinforzo. I tre approcci, e i casi in cui l’uno costa meno dell’altro, sono a confronto in supervisionato, non supervisionato e rinforzo.

Quanto alle etichette grandi: quel foglio di calcolo è machine learning, che è il sottoinsieme dell’intelligenza artificiale in cui le regole si ricavano dai dati invece che dalla tastiera, e non è deep learning, perché la caratteristica da guardare, la metratura, l’hai scelta tu (se avessi scelto il numero di lettere del nome della via, gli stessi minimi quadrati avrebbero prodotto un R² vicino a zero). È la scelta delle caratteristiche che il deep learning delega agli strati intermedi, in cambio di molti più dati e molta più potenza: lo stesso meccanismo che regge l’intelligenza artificiale generativa e i large language model, con l’etichetta da prevedere che diventa «la prossima parola».

Esempi pratici di machine learning: dove lo vedi all’opera ogni giorno

Torniamo alle due mail dell’inizio, perché lì c’è un numero pubblico. Google ha raccontato sul blog di Google Workspace di aver aggiunto ai filtri di Gmail modelli costruiti con TensorFlow che bloccano «circa 100 milioni di messaggi di spam in più ogni giorno» rispetto a quanto già fermavano i sistemi precedenti, portando la copertura complessiva a oltre il 99,9% di spam, phishing e malware. Il dettaglio interessante non è la percentuale: è quali messaggi abbia aggiunto. Tre categorie che le regole scritte a mano non intercettavano, messaggi fatti di sole immagini, mail con contenuto nascosto incorporato, e mittenti su domini registrati da poco.

È esattamente il confine fra i due schemi del primo disegno. Una regola scritta a mano su un dominio nuovo non esiste, perché il dominio non c’era quando la regola è stata scritta. Un modello che pesa migliaia di segnali per ogni messaggio non ha bisogno che qualcuno abbia previsto quel caso: gli basta che il caso somigli, in quello spazio di segnali, ad altri casi già visti.

Un esempio di attività con machine learning nella didattica

La tabella dei cinque appartamenti è un’ora di lezione già pronta, e non serve né codice né connessione. Si fa compilare la tabella agli studenti con dati che conoscono, minuti di studio e voto, altezza e numero di scarpe, chilometri e tempo di percorrenza, e si chiede prima una previsione a occhio, poi si calcola la retta con PENDENZA e INTERCETTA, e si confrontano i due errori medi. Il momento didattico è quando l’errore del foglio batte l’errore dell’intuizione: da lì la frase «la macchina ha imparato» smette di essere una metafora e diventa una misura.

Cosa manca per fidarsi di un modello: overfitting, dati storti e la parte che non si automatizza

C’è un modo garantito per portare l’errore sui cinque appartamenti a zero esatto: usare un polinomio di quarto grado. Con cinque punti e cinque coefficienti liberi la curva ci passa esattamente sopra, tutti e cinque, errore 0,00. Ed è un modello inservibile: fra 85 e 100 metri quadri può scendere sotto zero o schizzare a un milione, perché nessuno gli ha chiesto di comportarsi bene lì in mezzo. Questo è l’overfitting, e la conseguenza operativa è netta: l’errore misurato sui dati di addestramento non è una misura di qualità. La misura che conta è quella su dati che il modello non ha mai visto.

I dati storti: cosa l’apprendimento automatico non può dirti

Poi c’è il limite che nessun conto risolve. Il 2,57 non dice che i metri quadri causino il prezzo: dice che nei cinque esempi vanno insieme. Se i cinque appartamenti venissero tutti dallo stesso quartiere caro, il modello lo applicherebbe sereno a tutta la città. Aleksander Madry del MIT lo riassume così: «capire perché un modello fa quello che fa è una domanda molto difficile», ed è la ragione per cui i sistemi non vanno trattati come scatole nere.

Quando questa spiegazione dell’apprendimento automatico non vale

E adesso la riga che vale più di tutto il resto: quando questa spiegazione non vale. Non vale per quello che succede quando «insegni» qualcosa a un assistente conversazionale dentro una chat: lì non si aggiorna nessun parametro, l’addestramento è finito mesi prima e quello che vedi è il modello che tiene conto del contesto, non che impara. E non vale quando la risposta giusta non esiste affatto: nell’apprendimento per rinforzo non c’è nessuna etichetta da cui sottrarre la previsione, c’è un punteggio che arriva molte mosse dopo. Se qualcuno ti spiega qualsiasi sistema di AI con «impara dai dati», in questi due casi ti sta dando la parola giusta per il meccanismo sbagliato.

Resta l’ultima parte, quella che non si automatizza: decidere quale sia l’etichetta giusta da prevedere, quali dati siano legittimi e rappresentativi, e quale errore sia accettabile per il tuo caso. È il lavoro che sta prima del modello e che nessun modello fa al posto tuo, ed è il motivo per cui, quando aiutiamo un’azienda a mettere in piedi agenti AI su misura, con mimir.bot l’onboarding assistito non è un extra ma la parte centrale: il prodotto è il sistema, il servizio è scegliere insieme cosa deve misurare e su quali dati, perché è lì che si decide se funzionerà.

Fonti:

Domande frequenti

Qual è l'intelligenza artificiale più usata?

In termini di utenti che la incontrano ogni giorno, i sistemi di classificazione invisibili: filtri antispam, antifrode sui pagamenti, ordinamento dei contenuti. Solo Gmail dichiara oltre il 99,9% di spam e phishing bloccati e conta più di un miliardo di utenti. Fra gli strumenti usati consapevolmente dominano gli assistenti conversazionali basati su large language model.

ChatGPT è machine learning?

Sì, ed è deep learning: un modello addestrato a prevedere il token successivo su enormi quantità di testo. Lo schema è lo stesso dei cinque appartamenti dell'articolo, dati, risposta giusta, errore, correzione dei parametri, con miliardi di parametri al posto di due.

«Machine learning» e «apprendimento automatico» sono la stessa cosa?

Sì: «apprendimento automatico» è la traduzione italiana corrente di machine learning, e i due termini si usano come sinonimi anche nella documentazione tecnica in italiano dei grandi fornitori.

Quanti dati servono per addestrare un modello?

Non esiste una soglia universale: dipende da quanti parametri ha il modello e da quanto è rumoroso il fenomeno. La regola pratica è comparativa: si prova con i dati che si hanno, si misura l'errore su dati mai visti, e si aggiungono dati finché quell'errore continua a scendere. Quando smette di scendere, il problema non sono più i dati.

Tabella dei contenuti
Articoli correlati:
Vuoi che l'AI diventi il tuo motore di valore più potente?

Ti accompagniamo noi con Mimír AI Agent.