Due modi di costruire sistemi intelligenti
In modo semplificato, due grandi tradizioni hanno segnato lo sviluppo dell’intelligenza artificiale: l’approccio simbolico e quello connessionista. Oggi molti sistemi combinano elementi di entrambi.
Approccio simbolico
Rappresenta conoscenze attraverso simboli, regole e relazioni logiche.
- Le regole sono esplicite.
- Il ragionamento può essere ricostruito.
- Funziona bene in domini strutturati.
- Soffre quando regole ed eccezioni diventano troppe.
Approccio connessionista
Apprende regolarità dai dati attraverso reti di unità interconnesse.
- Non richiede di scrivere tutte le regole.
- Riconosce pattern complessi.
- Generalizza su esempi nuovi.
- Può essere difficile spiegare una singola decisione.
Perché riguarda le relazioni umane
I sistemi di AI partecipano sempre più spesso alle nostre conversazioni, selezionano informazioni, suggeriscono azioni e contribuiscono a formare impressioni sulle persone. Questo cambia il modo in cui costruiamo fiducia.
Delegare senza abdicare
Un sistema può supportare la decisione, ma la responsabilità sulle conseguenze non dovrebbe scomparire dietro l’algoritmo.
Proteggere fiducia e dignità
Quando l’AI valuta persone, occorre chiedersi quali dati usa, quali errori può commettere e chi può contestare il risultato.
Conservare il dialogo
Efficienza e automazione non sostituiscono ascolto, contesto, empatia e capacità di assumersi una responsabilità personale.
- Quanto del nostro pensiero è logico e quanto è fatto di pattern e intuizioni?
- Come possiamo allenare l’intelligenza umana in un mondo in cui coesiste con quella artificiale?
- Quali decisioni possono essere assistite e quali devono restare sotto controllo umano?
Come funziona una rete neurale
Una rete neurale artificiale è composta da unità matematiche organizzate in strati. Ogni connessione possiede un peso che determina quanto un segnale influisce sul calcolo successivo.
Input
Riceve numeri che rappresentano dati come parole, immagini o misure.
Strati nascosti
Combinano input, pesi e bias attraverso funzioni matematiche.
Output
Restituisce una previsione, una classe o un valore numerico.
Apprendimento
Confronta previsione e risultato atteso, quindi aggiorna i pesi.
Esempio: riconoscere un’email di spam
Consideriamo una rete didattica con due input, tre neuroni nascosti e un neurone di output.
Che cosa sta facendo davvero la rete?
La rete non “capisce” direttamente che l’email è spam. Prima trasforma alcuni indizi in numeri, poi combina questi numeri attraverso pesi e produce un punteggio finale.
In questo esempio gli indizi sono soltanto due: la presenza della parola “gratis” e la quantità di punti esclamativi.
Passo 1 – Input
X₁ = 1: l’email contiene la parola “gratis”.
X₂ = 0,8: contiene molti punti esclamativi, dopo normalizzazione.
Vettore di input: X = [1; 0,8].
Passo 2 – Strato nascosto
- Neurone 1: z₁ = 0,6 × 1 + 0,9 × 0,8 + 0,1 = 1,42.
- Neurone 2: z₂ = 0,3 × 1 + 0,4 × 0,8 + 0,2 = 0,82.
- Neurone 3: z₃ = −0,5 × 1 + 0,7 × 0,8 − 0,1 = −0,04.
Applicando ReLU, cioè max(0; z), otteniamo:
A = [1,42; 0,82; 0].
Passo 3 – Output
z = 1,2 × 1,42 − 1 × 0,82 + 0,5 × 0 − 0,3 = 0,584.
La funzione sigmoid trasforma il valore in un numero compreso tra 0 e 1:
σ(0,584) ≈ 0,642.
Risultato
La rete restituisce un punteggio di 0,642, interpretabile in questo esempio come una probabilità stimata del 64,2%.
Con una soglia fissata al 50%, l’email viene classificata come spam.
Da ricordare
I numeri, i pesi e i bias di questo esempio sono scelti a scopo didattico. Una rete reale imparerebbe i propri pesi analizzando molti esempi di email già classificate come spam o non spam.
Prova il piccolo simulatore
Modifica i due input e osserva come cambiano le attivazioni e il punteggio finale. I pesi restano quelli inventati per l’esempio didattico.
Risultato del calcolo
Un esempio volutamente semplice
Una rete reale per il filtraggio dello spam userebbe molte più caratteristiche, moltissimi esempi di addestramento e procedure di validazione. Il 64,2% di questo esercizio non misura una probabilità reale: mostra soltanto come si propaga numericamente un segnale in una piccola rete.