Rappresentazione

Un modello di machine learning non può vedere, sentire o sentire direttamente esempi di input. Devi invece creare una rappresentazione dei dati per fornire al modello un punto di osservazione utile per le qualità chiave dei dati. Cioè, per addestrare un modello, devi scegliere l'insieme di caratteristiche che rappresentano al meglio i dati.

Rappresentazione

L'idea è quella di mappare ogni parte del vettore a sinistra in uno o più campi nel vettore di caratteristiche a destra.

I dati non elaborati vengono mappati a un vettore di caratteristiche tramite un processo chiamato feature engineering.
Esempio di una funzionalità che può essere copiata direttamente dai dati non elaborati
Esempio di elemento stringa (nome via) che non può essere copiato direttamente dai dati non elaborati
Mappatura di un valore stringa (
  • Il dizionario mappa ogni nome di strada su un valore int in {0, ...,V-1}
  • Ora rappresenta il vettore one-hot sopra come <i>

I valori delle caratteristiche dovrebbero apparire con un valore diverso da zero più di alcune volte nel set di dati.

my_device_id:8SK982ZZ1242Z

device_model:galaxy_s6

Le caratteristiche devono avere un significato chiaro e ovvio.

user_age:23

user_age:123456789

Le caratteristiche non devono avere valori "magici"

(usa invece un'ulteriore funzione booleana come watch_time_is_defined).

watch_time: -1.0

watch_time: 1.023

watch_time_is_defined: 1.0

La definizione di una funzionalità non dovrebbe cambiare nel tempo.

(Fai attenzione a dipendere da altri sistemi ML!)

city_id:"br/sao_paulo"

inferred_city_cluster_id:219

La distribuzione non deve avere valori anomali estremi

Idealmente, tutte le caratteristiche devono essere trasformate in un intervallo simile, come (-1, 1) o (0, 5).

Distribuzione con valori anomali e una distribuzione con limite
Grafico che mostra una distribuzione con una curva di adattamento basata sulla posizione
Grafico che mostra una distribuzione con una curva di adattamento basata sulla posizione
  • Crea diverse bin booleane, ciascuna mappata a una nuova funzionalità univoca
  • Consente al modello di adattare un valore diverso per ogni fascia

CONOSCERE I PROPRI DATI

  • Visualizza: traccia gli istogrammi e classificali dal più al meno comune.
  • Debug: esempi duplicati? Mancano valori? Valori anomali? I dati sono d'accordo con le dashboard? Dati di addestramento e convalida simili?
  • Monitora: quantili delle caratteristiche, numero di esempi nel tempo?