Blog.

LASSO Regression | Italiano


Autore
Andrea Provino
Data
Tempo di lettura
5 minuti
Categoria
Data Science, machine-learning

lasso-regression-least-absolute-shirnkage-and-selection-operator-data-science-machine-learning-guida-italiano-ridge-regression-elasticnet-lasso-regression-python

Least Absolute Shrinkage and Selection Operator Regression, conosciuta come LASSO Regression, è una versione regolarizzata della Linear Regression (Regressione Lineare): aggiungendo un termine di regolarizzazione denominato alpha alla cost function, l’algoritmo di apprendimento è forzato a tenere i weight quanto più bassi possibile.

Definizione data. Mettiamo sulla mensola per un rapido ripasso.

Diamo un’occhiata alla definizione di Ridge Regression, contiene alcuni concetti chiave.

Perfetto adesso siamo allineati.

Ora è il momento di fare sul serio: comprendiamo assieme LASSSO regression.

LASSO Regression: why?

Sappiamo che la complessità di un modello di regressione lineare è spesso insufficiente a cogliere la relazione tra i dati.

Possiamo ovviare al problema ricorrendo a un modello di regressione polinomiale.

Un escamotage che aumenta i gradi di flessibilità (degrees of freedom) del modello incrementando al contempo la sua variance e diminuendo la bias: abbiamo visto come questo si traduca in un fenomeno di overfitting.

Ci piace.

Si lo so che abbiamo sempre detto che overfitting e underfitting sono due temibili nemici.

Pensala così: quando d’estate hai caldo, puoi fare poco: sei in costume e devi ricorrere a una doccia fredda, o un bagno al mare o in piscina. (underfitting, il problma persiste)

D’inverno invece, occorre semplicemente togliersi uno strato, un giaccone o una felpa, e in questo modo controlli più facilmente la temperatura. (overfitting, ma gestibile).

Fuori da metafora, preferiamo un modello in leggero overfitting così da poterne gestire meglio l’apprendimento.

Possiamo infatti penalizzare l’apprendimento, limitando la libertà del modello. Come?

Attraverso LASSO Regression.

LASSO Regression: how?

Una caratteristica fondamentale della LASSO Regression riguarda la gestione delle fetaure di importanza minore.

Contrariamente alla Ridge Regression, che minimizzando il weight di alcune feature ne riduce la contribuzione al modello, la LASSO Regression effettua una vera e propria selezione delle variabili indipendenti (feature selection): portando le restanti a zero attraverso un opportuno valore del weight associato, e generando uno sparse model (con alcune nonzero feature).

Parlando di regolarizzazione in generale esistono due tipi di penalizzazione:

  • L1 (absolute size) penalizza il valore assoluto dei coefficienti del modello
  • L2 (squared size) penalizza il quadrato del valore dei coefficienti del modello.

LA(bsolute)SSO Regresison usa la L1 penalty.

Con questo tipo di regolarizzazione è necessario ridurre gradualmente il learning rate, se prossimi al global minimum.

Infine, come in ogni modello regolarizzato, è opportuno scalare i dati attraverso una standardizzazione poiché questa tipologia di funzioni è sensibile alla scala dei valori del dataset.

Lessico

Concludiamo con un po’ di lessico tecnico.

Possiamo avere modelli allenati con MSE (Mean Squared Error) come funzione di costo non regolarizzata ( α = 0) o regolarizzata con una penalità l1 ( α = 0.5) e Batch Gradient Descent come Optimization Algorithm.

Per il momento è tutto.

Per aspera, ad astra.

Un caldo abbraccio, Andrea

Taggeddata sciencemachine learningteoria


Ultimi post

Patricia Merkle Trie

Il Practical Algorithm To Retrieve Information Coded In Alphanumeric Merkle Trie, o Patricia Merkle Trie è una struttura dati chiave-valore usatada Ethereum e particolarmente efficiente per il salvataggio e la verifica dell’integrità dell’informazione. In questo post ne studieremo le caratteristiche. Prima di procedere, ci conviene ripassare l’introduzione al Merkle Tree nella quale abbiamo chiarito il […]

Andrea Provino
ethereum-patricia-merkle-tree
Tree Data Structure: cos’è un Merkle Tree

Un Merkle Tree è una struttura dati efficiente per verificare che un dato appartenga a un insieme esteso di elementi. È comunemente impiegato nelle Peer to Peer network in cui la generazione efficiente di prove (proof) contribuisce alla scalabilità della rete. Capire i vantaggi di questa struttura ci tornerà utile nel nostro percorso di esplorazione […]

Andrea Provino
merkle-tree-cover
UTXO: come funziona il modello Unspent Transaction Outputs

Per tenere traccia dei bilanci utente, la blockchain di Bitcoin sfrutta un modello di contabilità definito UTXO o Unspent Transaction Outputs. In questo articolo ne esaminiamo le caratteristiche. Ogni blockchain è dotata di un sistema di contabilità, un meccanismo attraverso cui tenere traccia dei bilanci di ciascun utente. I due grandi modelli di riferimento nel […]

Andrea Provino
bitcoin-utxo
Cos’è Ethereum

Possiamo definire Ethereum come una macchina a stati distribuita che traccia le transizioni di un archivio dati general-purpose (i.e. una memoria in grado di registrare qualsiasi dato esprimibile come coppia di chiave e valore o key-value) all’interno della Ethereum Blockchain. È arrivato il momento di esplorare uno dei progetti tecnologici più innovativi e interessanti degli […]

Andrea Provino
ethereum