Cosa sono i pesi e i bias: il cuore matematico di un modello

Pesi e bias sono i numeri che un modello impara durante l’addestramento. Ecco cosa sono, a cosa servono e perché contano davvero.
Immagine realizzata con IA
Le immagini presenti nel post possono essere realizzate o elaborate con strumenti di Intelligenza Artificiale. Questa scelta nasce anche dalla necessità di prevenire le continue contestazioni e richieste economiche improprie che ricevo relative a fotografie utilizzate che sono sempre state acquistate con regolare licenza.
Contenuti dell'articolo

Quando si parla di intelligenza artificiale si finisce sempre per usare parole che sembrano uscite da un laboratorio di fisica: parametri, pesi, bias.
Eppure sotto tutta la complessità c’è un’idea sorprendentemente semplice: un modello impara regolando dei numeri.
I pesi e i bias sono esattamente quei numeri.

In questa lezione vediamo cosa sono, a cosa servono e perché sono il vero motore di qualunque rete neurale.

Cos’è un peso, in parole semplici

Un peso (weight) è un numero che dice quanto è importante un certo ingresso per il risultato finale. Immagina di dover decidere se uscire con l’ombrello: guardi il cielo nuvoloso, la percentuale di pioggia prevista e il vento.
Non tutti questi elementi contano allo stesso modo.
Le nuvole contano, ma la previsione di pioggia conta di più. Quel quanto conta è il peso.

In termini matematici, un modello moltiplica ogni valore in ingresso per il suo peso e somma tutto:

risultato = (ingresso1 x peso1) + (ingresso2 x peso2) + …

Schema di un neurone: ogni ingresso viene moltiplicato per il suo peso, le frecce piu spesse indicano i pesi piu grandi

Se un peso è grande, quell’ingresso influenza molto il risultato. Se un peso è vicino a zero, quell’ingresso viene quasi ignorato. Se il peso è negativo, l’ingresso spinge il risultato nella direzione opposta.

Cos’è il bias e perché non è un pregiudizio

Qui c’è un primo malinteso da chiarire: nel machine learning il bias non ha nulla a che fare con i pregiudizi sociali (quelli si chiamano bias nei dati, ed è un tema diverso).
Il bias qui è semplicemente un numero aggiunto alla somma.

Perché serve? Perché senza di esso il modello sarebbe costretto a passare sempre per lo zero.
Il bias è quel valore che permette di spostare la risposta su e giù, rendendo il modello molto più flessibile.

Torniamo all’esempio dell’ombrello: anche con previsioni perfette, mettiamo che il modello tenda a sottostimare la pioggia. Il bias è quella costante che aggiungiamo per correggere il tiro in generale, indipendentemente dagli ingressi.

La formula completa diventa quindi:

risultato = (ingresso1 x peso1) + (ingresso2 x peso2) + … + bias

Grafico che mostra come il bias sposta verso l alto la retta del risultato rispetto al modello senza bias

Un esempio concreto con i numeri

Supponiamo di voler stimare il prezzo di una casa usando un solo dato: i metri quadri.

  • Ingresso: 80 m²
  • Peso: 1.500 euro al metro quadro
  • Bias: 20.000 euro, il valore base dell’immobile a prescindere dalla dimensione

Il calcolo è: (80 x 1.500) + 20.000 = 140.000 euro.

Il peso dice quanto ogni metro quadro aggiunge al prezzo. Il bias dice quanto vale la casa a prescindere, ovvero “sposta lo zero”. Cambia il peso e cambia la pendenza; cambia il bias e cambia il punto di partenza. Tutto qui.

Pesi e bias in una rete neurale

Una rete neurale non è altro che tanti di questi calcoli messi in fila e collegati tra loro. Ogni neurone artificiale riceve alcuni valori, li moltiplica per i propri pesi, somma il bias e passa il risultato a una funzione di attivazione.
Poi passa il testimone ai neuroni dello strato successivo.

TIP: quando un neurone artificiale finisce i suoi calcoli, la funzione di attivazione decide quanto è importante il risultato ottenuto e quindi quanto segnale far passare al neurone successivo.

In un modello linguistico come quelli che usiamo ogni giorno i parametri sono miliardi e la stragrande maggioranza di quei parametri sono proprio pesi e bias.
Quando senti dire “un modello da 70 miliardi di parametri“, significa che ci sono circa 70 miliardi di numeri di questo tipo, tutti messi insieme.

Come si trovano i valori giusti

Nessuno scrive a mano milioni di pesi. All’inizio vengono assegnati in modo casuale, poi è l’addestramento a sistemarli. Il modello fa una previsione, la confronta con la risposta corretta, misura l’errore e risale la catena per capire quale peso ha sbagliato e in che misura.

Questo processo prende il nome di backpropagation e l’aggiornamento dei pesi avviene tramite un ottimizzatore che segue il learning rate.
Ripetendo questo ciclo milioni di volte, i numeri si assestano su valori che rendono il modello sempre più preciso.
Alla fine resta un file di numeri: quello è il modello.

Pesi, parametri e iperparametri: non confonderli

  • Pesi e bias: numeri appresi durante l’addestramento. Il modello li scopre da solo.
  • Parametri: il termine ombrello che comprende pesi e bias, cioè tutti i numeri interni che il modello impara.
  • Iperparametri: valori decisi da chi progetta il modello, come il numero di strati o il learning rate. Il modello non li impara.

Detta in modo brutale: i parametri li impara la macchina, gli iperparametri li scegli tu.

Perché è utile saperlo

Capire pesi e bias aiuta a leggere con occhi diversi le notizie sull’IA. Un modello grande è un modello con molti parametri, quindi più capace ma più pesante da eseguire. Il fine tuning e il LoRA non fanno altro che ritoccare una parte di questi pesi per adattare il modello a un compito specifico.
La quantizzazione, invece, riduce la precisione con cui i pesi sono rappresentati, per farli stare in meno memoria.

In pratica quasi ogni novità nel mondo dell’IA, se la guardi da vicino, è un modo diverso di gestire i pesi e i bias.

Domande frequenti

I pesi sono gli stessi per tutti gli utenti di un modello?

Sì. I pesi sono fissati al termine dell’addestramento e sono gli stessi per chiunque usi quel modello. Quello che cambia da utente a utente è solo il testo che gli viene inviato.

Il bias è un errore o un pregiudizio?

Nessuno dei due. Nel contesto dei pesi e dei bias, il bias è solo un numero aggiunto alla somma degli ingressi ponderati. Serve a dare flessibilità al modello. Il bias inteso come pregiudizio è un concetto diverso, legato ai dati e alla società.

Un modello può imparare nuovi pesi mentre lo uso?

No, non durante una normale conversazione. I pesi restano congelati tra un addestramento e l’altro. Il modello può usare il contesto della conversazione, ma non modifica i propri pesi in tempo reale.

Perché si dice che addestrare un modello costa tanto?

Perché per aggiornare miliardi di pesi servono enormi quantità di calcoli, ripetuti molte volte. È lì che vanno la potenza di calcolo e l’energia. Una volta addestrato, però, usare il modello è molto più leggero.

Quanti pesi ha un neurone?

Dipende da quanti ingressi riceve. Un neurone con 10 connessioni in ingresso avrà 10 pesi e 1 bias. Il conteggio cresce rapidamente quando i neuroni sono milioni.

Newsletter settimanale con le ultime novità sull’intelligenza artificiale

Corso gratuito sull’Intelligenza Artificiale, dalle nozioni base ai concetti più complessi

Condividi:

Potrebbero interessarti