Sobes.tech
Middle

Quali sono i metodi per lavorare con variabili categoriche?

sobes.tech AI

Risposta dell'AI

Le caratteristiche categoriche nell'apprendimento automatico vengono trattate principalmente in diversi modi:

  1. Codifica delle etichette (Label Encoding) — a ogni categoria viene assegnato un numero unico. Adatto per categorie ordinate, ma può confondere il modello se l'ordine non è presente.

  2. Codifica one-hot — viene creata una caratteristica binaria per ogni categoria. Ad esempio, la caratteristica "Colore" con categorie {rosso, blu, verde} viene trasformata in tre caratteristiche binarie.

  3. Codifica target (Target Encoding) — le categorie vengono sostituite con statistiche della variabile target (ad esempio, il valore medio della variabile target per ogni categoria). Richiede cautela per evitare perdite di dati.

  4. Codifica per frequenza — le categorie vengono sostituite con la frequenza di occorrenza nei dati.

  5. Embeddings — per categorie con un grande numero di valori unici (ad esempio, in NLP), si utilizzano rappresentazioni vettoriali, addestrate insieme al modello.

La scelta del metodo dipende dal compito, dal modello e dal volume di dati. Ad esempio, per gli alberi decisionali spesso basta il Label o One-Hot Encoding, mentre per le reti neurali — embeddings.

Esempio di One-Hot Encoding in Python con pandas:

import pandas as pd

df = pd.DataFrame({'Colore': ['rosso', 'blu', 'verde', 'blu']})
df_encoded = pd.get_dummies(df, columns=['Colore'])
print(df_encoded)

Risultato:

   Colore_rosso  Colore_verde  Colore_blu
0             1             0             0
1             0             0             1
2             0             1             0
3             0             0             1