Un incorporamento è uno spazio di dimensioni relativamente basse in cui puoi tradurre vettori di dimensioni elevate. Gli incorporamenti semplificano l'esecuzione del machine learning su input di grandi dimensioni, come i vettori sparsi che rappresentano le parole. L'incorporamento ideale potrebbe rappresentare una parte della semantica dell'input posizionando gli input semanticamente simili tra loro nello spazio di incorporamento. Un modello di incorporamento può essere utilizzato e riutilizzato nei vari modelli.
Incorporamenti
Motivazione dell'applicazione dei filtri collaborativi
- Input: 1.000.000 di film che 500.000 utenti hanno scelto di guardare
- Attività: consiglia i film agli utenti
Per risolvere questo problema è necessario un metodo per determinare quali film siano simili tra loro.
Organizzazione di film per somiglianza (1 giorno)
Organizzazione di film per somiglianza (2 giorni)
Incorporamento bidimensionale
Incorporamento bidimensionale
Incorporamenti d-dimensionali
- Si presuppone che l'interesse degli utenti per i film possa essere spiegato in modo approssimativo dagli aspetti "d"
- Ogni film diventa un punto d-dimensionale in cui il valore nella dimensione d rappresenta quanto il film si adatta a tale aspetto
- Gli incorporamenti possono essere appresi dai dati
Apprendimento degli incorporamenti in una rete profonda
- Non è necessario un processo di addestramento separato: il livello di incorporamento è solo un livello nascosto con un'unità per dimensione
- Le informazioni supervisionati (ad es. gli utenti che hanno guardato gli stessi due film) personalizzano gli incorporamenti appresi per l'attività desiderata
- Intuitivamente le unità nascoste scoprono come organizzare gli elementi nello spazio d-dimensionale in modo da ottimizzare al meglio l'obiettivo finale
Rappresentazione input
- Ogni esempio (una riga in questa matrice) è un vettore spagnole di elementi (film) che sono stati guardati dall'utente.
- Rappresentazione densa di questo esempio come: (0, 1, 0, 1, 0, 0, 0, 1)
Non è efficiente in termini di spazio e tempo.
Rappresentazione input
- Crea un dizionario mappando ogni caratteristica a un numero intero compreso tra 0, ..., # film - 1
- Rappresenta in modo efficace il sparse vettori dei soli film guardati dall'utente. Potrebbe essere rappresentato come segue:
Un livello di incorporamento in una rete profonda
Problema di regressione per prevedere i prezzi di vendita delle case:
Un livello di incorporamento in una rete profonda
Problema di regressione per prevedere i prezzi di vendita delle case:
Un livello di incorporamento in una rete profonda
Problema di regressione per prevedere i prezzi di vendita delle case:
Un livello di incorporamento in una rete profonda
Problema di regressione per prevedere i prezzi di vendita delle case:
Un livello di incorporamento in una rete profonda
Problema di regressione per prevedere i prezzi di vendita delle case:
Un livello di incorporamento in una rete profonda
Problema di regressione per prevedere i prezzi di vendita delle case:
Un livello di incorporamento in una rete profonda
Classificazione multiclasse per prevedere una cifra scritta a mano:
Un livello di incorporamento in una rete profonda
Classificazione multiclasse per prevedere una cifra scritta a mano:
Un livello di incorporamento in una rete profonda
Classificazione multiclasse per prevedere una cifra scritta a mano:
Un livello di incorporamento in una rete profonda
Classificazione multiclasse per prevedere una cifra scritta a mano:
Un livello di incorporamento in una rete profonda
Classificazione multiclasse per prevedere una cifra scritta a mano:
Un livello di incorporamento in una rete profonda
Classificazione multiclasse per prevedere una cifra scritta a mano:
Un livello di incorporamento in una rete profonda
Classificazione multiclasse per prevedere una cifra scritta a mano:
Un livello di incorporamento in una rete profonda
Filtro collaborativo per prevedere i film da consigliare:
Un livello di incorporamento in una rete profonda
Filtro collaborativo per prevedere i film da consigliare:
Un livello di incorporamento in una rete profonda
Filtro collaborativo per prevedere i film da consigliare:
Un livello di incorporamento in una rete profonda
Filtro collaborativo per prevedere i film da consigliare:
Un livello di incorporamento in una rete profonda
Filtro collaborativo per prevedere i film da consigliare:
Un livello di incorporamento in una rete profonda
Filtro collaborativo per prevedere i film da consigliare:
Un livello di incorporamento in una rete profonda
Filtro collaborativo per prevedere i film da consigliare:
Corrispondenza con la vista geometrica
Rete profonda
- Ognuna delle unità nascoste corrisponde a una dimensione (funzionalità latente)
- Gli spessori dei bordi tra un filmato e il livello nascosto sono valori di coordinate
Visualizzazione geometrica dell'incorporamento di un singolo film
Selezione del numero di ridimensionamenti dell'incorporamento
- Gli incorporamenti di dimensioni più elevate possono rappresentare in modo più accurato le relazioni tra i valori di input.
- Ma più dimensioni aumentano le possibilità di overfit e porta a un allenamento più lento.
- Regola empirica (un buon punto di partenza, ma che dovrebbe essere regolata utilizzando i dati di convalida): $$ dimensions \approx \sqrt[4]{possible\;values} $$
Incorporamenti come strumento
- Incorporamenti di elementi mappati (ad es. film, testo ecc.) in vettori reali di bassa dimensione in modo che elementi simili siano vicini tra loro
- Gli incorporamenti possono essere applicati anche a dati densi (ad es. audio) per creare una metrica di somiglianza significativa
- Incorporare congiuntamente vari tipi di dati (ad esempio testo, immagini, audio...) definisce una somiglianza tra loro