Vai al contenuto principale

Panoramica delle metodologie di codifica

In questo tutorial avrai una panoramica delle tecniche di codifica insieme ad alcuni riferimenti avanzati che ti aiuteranno a gestire le variabili categoriche.
Aggiornato 29 set 2026  · 5 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity
grafica di matite

"In molte attività pratiche di data science, il set di dati conterrà variabili categoriche. Queste variabili sono in genere memorizzate come valori di testo". (Practical Business Python) Poiché il machine learning si basa su equazioni matematiche, mantenere le variabili categoriche così come sono può creare problemi. Molti algoritmi supportano valori categorici senza ulteriori manipolazioni, ma anche in quei casi resta aperta la discussione se convenga o meno codificare le variabili. Gli algoritmi che non supportano valori categorici, invece, richiedono l'uso di metodologie di codifica. Vediamo qui alcuni metodi.

Metodologie di codifica

Label encoding

Nel label encoding, associamo a ciascuna categoria un numero o un'etichetta. Le etichette scelte per le categorie non hanno alcuna relazione tra loro. Di conseguenza, categorie che presentano legami o somiglianze tra loro perdono tale informazione dopo la codifica.

Frequency encoding

È un modo per utilizzare la frequenza delle categorie come etichette. Nei casi in cui la frequenza sia in qualche modo correlata alla variabile target, aiuta il modello a comprendere e assegnare il peso in proporzione diretta o inversa, a seconda della natura dei dati.

One-hot encoding

In questo metodo, mappiamo ogni categoria su un vettore che contiene 1 e 0 a indicare la presenza o meno della caratteristica. Il numero di vettori dipende dalle categorie che vogliamo mantenere. Per caratteristiche ad alta cardinalità, questo metodo produce molte colonne che rallentano sensibilmente l'apprendimento. C'è spesso confusione tra one-hot encoding e dummy encoding e su quando usare l'uno o l'altro. Sono molto simili, tranne per il fatto che il one-hot encoding produce un numero di colonne pari al numero di categorie, mentre il dummy encoding ne produce uno in meno. In definitiva, questa scelta dovrebbe essere gestita dal modellatore nel processo di validazione.

Trappola delle variabili dummy:

Supponiamo di avere due categorie in una caratteristica categorica. Dopo aver applicato il one-hot encoding, ci saranno due colonne che rappresentano la caratteristica categorica, ma osservando da vicino un solo vettore è sufficiente a rappresentare entrambi i valori. Come una caratteristica categorica con due valori, diciamo “rosso” e “blu”. Dopo il one-hot encoding si formeranno due vettori, uno che indica “rosso” e l'altro “blu”, ma l'informazione può essere appresa usando un solo vettore, mentre l'altro risulterà costante. Possiamo quindi eliminare un vettore, riducendo la quantità di dati su cui gli algoritmi devono essere addestrati. Questo aiuta il modello a performare meglio e rende anche più semplice spiegare il funzionamento del modello. Nella pratica reale, dobbiamo spesso gestire molte caratteristiche categoriche, talvolta con una conoscenza preventiva dei loro risultati. Le pratiche di codifica ti permettono sì di gestire il processo di input, ma rendono anche il processo e l'apprendimento un compito piuttosto gravoso.

Target o Impact o Likelihood encoding

Il Target Encoding è simile al label encoding, tranne per il fatto che qui le etichette sono correlate direttamente al target. Per esempio, nel mean target encoding, per ogni categoria nella caratteristica, l'etichetta è decisa con il valore medio della variabile target sui dati di training. Questo metodo di codifica mette in evidenza la relazione tra categorie simili, ma le relazioni restano confinate entro le categorie e il target stesso. I vantaggi del mean target encoding sono che non influisce sul volume dei dati e favorisce un apprendimento più rapido; lo svantaggio è che è più difficile da validare. La regolarizzazione è necessaria nel processo di implementazione di questa metodologia di codifica. Visita il target encoder in python e in R.

Statistiche della codifica

La variabilità della codifica descrive la variazione della codifica all'interno di una singola categoria. Quando parliamo della variabilità nel one-hot encoding, questa dipende dal momento dell'implementazione, in cui si decide il numero di categorie da considerare che abbiano un impatto sufficiente sul target. Altre metodologie di codifica mostrano una variabilità significativa che viene individuata al momento della validazione.

Per calcolare la distinguibilità della codifica, contiamo le etichette delle categorie e poi calcoliamo la deviazione standard delle etichette. Questo mostra la distinguibilità delle categorie codificate, ovvero se sono distanti tra loro o raggruppate in un'area.

Tieni presente che, se scegli uno stile di codifica semplice nel processo di costruzione di un modello, il modello tende a essere distorto; per una migliore comprensione, visita questa discussione. E per modelli diversi, devi stimare la tua metodologia di codifica: per esempio, per la regressione puoi usare il mean target encoding. Se hai una classificazione, puoi optare per il relative frequency encoding.

Infine, vorrei condividere un trasformatore in stile scikit-learn che aiuta a codificare le variabili categoriche usando tecniche diverse.

category_encoders

Questa libreria scikit-learn fornisce le seguenti tecniche attualmente implementate:

  • Ordinal
  • One-Hot
  • Binary
  • Helmert Contrast
  • Sum Contrast
  • Polynomial Contrast
  • Backward Difference Contrast
  • Hashing
  • BaseN
  • LeaveOneOut
  • Target Encoding

Supporta i dataframe di pandas come input e può trasformare i dati. Può anche integrarsi con le pipeline di sklearn; per i dettagli visita qui.

Se vuoi approfondire scikit-learn, segui il corso di DataCamp Supervised Learning with scikit-learn.

Argomenti
Machine Learning

Approfondisci il Machine Learning

Corso

Capire il Machine Learning

2 ore
310.7K
Un'introduzione all'apprendimento automatico senza bisogno di programmare.
Vedi i dettagliRight Arrow
Inizia Il Corso
Mostra altroRight Arrow
Correlato

blog

Tokenizzazione nel NLP: come funziona, sfide e casi d'uso

Guida al preprocessing NLP nel machine learning. Copriamo spaCy, i transformer di Hugging Face e come funziona la tokenizzazione in casi d'uso reali.
Abid Ali Awan's photo

Abid Ali Awan

10 min

blog

Che cos'è Snowflake? Guida per principianti alla piattaforma dati cloud

Esplora le basi di Snowflake, la piattaforma dati cloud. Scopri la sua architettura, le sue funzionalità e come integrarla nelle tue pipeline di dati.
Tim Lu's photo

Tim Lu

12 min

blog

I 15 migliori server MCP remoti che ogni AI builder dovrebbe conoscere nel 2026

Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
Abid Ali Awan's photo

Abid Ali Awan

15 min

Mostra AltroMostra Altro