Aggiornamento 2018!
È possibile creare uno spazio di incorporamento (vettore denso) per le variabili categoriali. Molti di voi hanno familiarità con word2vec e fastext, che incorporano le parole in uno spazio vettoriale denso e significativo. Stessa idea qui: le variabili categoriali verranno mappate su un vettore con un certo significato.
Dalla carta Guo / Berkhahn :
L'incorporamento di entità non solo riduce l'utilizzo della memoria e accelera le reti neurali rispetto alla codifica a caldo, ma soprattutto mappando valori simili vicini l'uno all'altro nello spazio di incorporamento rivela le proprietà intrinseche delle variabili categoriali. Lo abbiamo applicato con successo in una recente competizione Kaggle e siamo riusciti a raggiungere la terza posizione con caratteristiche relativamente semplici.
Gli autori hanno scoperto che la rappresentazione di variabili categoriali in questo modo ha migliorato l'efficacia di tutti gli algoritmi di apprendimento automatico testati, inclusa la foresta casuale.
Il miglior esempio potrebbe essere l'applicazione della tecnica di Pinterest per raggruppare i pin correlati:
La gente di fastai ha implementato matrimoni categorici e creato un post sul blog molto bello con il taccuino demo compagno .
Dettagli e spiegazioni aggiuntivi
Una rete neurale viene utilizzata per creare gli incorporamenti, ovvero assegnare un vettore a ciascun valore categoriale. Una volta che hai i vettori, puoi usarli in qualsiasi modello che accetta valori numerici. Ogni componente del vettore diventa una variabile di input. Ad esempio, se hai utilizzato i vettori 3D per incorporare l'elenco categorico dei colori, potresti ottenere qualcosa del tipo: rosso = (0, 1,5, -2,3), blu = (1, 1, 0) ecc. Ne useresti tre input di variabili nella foresta casuale corrispondenti ai tre componenti. Per le cose rosse, c1 = 0, c2 = 1.5 e c3 = -2.3. Per le cose blu, c1 = 1, c2 = 1 e c3 = 0.
In realtà non è necessario utilizzare una rete neurale per creare incorporamenti (anche se non consiglio di allontanarsi dalla tecnica). Sei libero di creare i tuoi ornamenti a mano o in altro modo, quando possibile. Qualche esempio:
- Mappa i colori ai vettori RGB.
- Mappare le posizioni su lat / long vettori.
- In un modello politico americano, mappare le città su alcuni componenti vettoriali che rappresentano l'allineamento sinistra / destra, il carico fiscale, ecc.