Incorporamenti: ottenimento degli incorporamenti

Questa sezione si concentra su due tecniche comuni per ottenere un incorporamento:

  • Riduzione della dimensionalità
  • Estrazione di un incorporamento da un modello di rete neurale più grande

Tecniche di riduzione della dimensionalità

Esistono molte tecniche matematiche per catturare i struttura di uno spazio ad alta dimensionalità in uno spazio a bassa dimensionalità. In teoria, ognuna di queste tecniche può essere usata per creare un incorporamento per una macchina di machine learning automatizzato.

Ad esempio, analisi delle componenti principali (PCA) è stato utilizzato per creare incorporamenti di parole. Dato un insieme di istanze come borsa di parole, i tentativi PCA per trovare dimensioni altamente correlate che possono essere compresse in un'unica .

Addestramento di un incorporamento come parte di una rete neurale

Puoi creare un incorporamento durante l'addestramento di rete neurale per l'attività target. Questo approccio consente di ottenere un incorporamento ben personalizzato per particolare sistema, ma potrebbe richiedere più tempo rispetto all'addestramento dell'incorporamento separato.

In generale, puoi creare uno strato nascosto di dimensione d nella designata come strato di incorporamento, dove d rappresenta sia il numero di nodi nello strato nascosto sia il numero di dimensioni nello spazio di incorporamento. Questo strato di incorporamento può essere combinato qualsiasi altra caratteristica e strato nascosto. Come in ogni rete neurale profonda, verranno ottimizzati durante l'addestramento per ridurre al minimo la perdita al livello di output della rete.

Tornando all'esempio relativo ai consigli sul cibo, il nostro obiettivo è per prevedere nuovi pasti che un utente apprezzerà in base al suo attuale piatto preferito pasti. In primo luogo, possiamo compilare ulteriori dati sui i cinque preferiti alimenti. Poi possiamo modellare questa attività come un problema di apprendimento supervisionato. Abbiamo impostato quattro dei cinque cibi principali da utilizzare come dati sulle caratteristiche, dopodiché quinto alimento come etichetta positiva che il nostro modello mira a prevedere, ottimizzando le previsioni del modello utilizzando una funzione softmax o una perdita di dati.

Durante l'addestramento, il modello di rete neurale apprende i pesi ottimali i nodi nel primo strato nascosto, che funge da strato di incorporamento. Ad esempio, se il modello contiene tre nodi nel primo strato nascosto, potrebbe determinare che le tre dimensioni più pertinenti degli alimenti sono paninità, dolcezza e liquidità. La figura 12 mostra la codifica one-hot valore di input per "hot dog" trasformati in un vettore tridimensionale.

Figura 12. Rete neurale per la codifica one-hot degli hot dog. Il primo livello è un
    livello di input con 5 nodi, ognuno annotato con un'icona dell'alimento
    rappresenta (borscht, hot dog, insalata, ... e shawarma). Questi nodi hanno
    rispettivamente i valori [0, 1, 0, ..., 0], che rappresentano
    codifica di "hot dog". Lo strato di input è collegato a un incorporamento a tre nodi
    i cui nodi hanno rispettivamente i valori 2.98, -0.75 e 0. La
    è collegato a uno strato nascosto a cinque nodi, che viene quindi
    collegato a uno strato di output a 5 nodi.
. Figura 12. Una codifica one-hot di hot dog fornito come input a una rete neurale profonda. Uno strato di incorporamento traduce la codifica one-hot nel vettore di incorporamento tridimensionale [2.98, -0.75, 0].

Nel corso dell'addestramento, le ponderazioni dello strato di incorporamento saranno ottimizzate in modo che i vettori di incorporamento esempi simili sono più vicini a ogni e l'altro. Le singole dimensioni dello strato di incorporamento (ossia ciò che strato di incorporamento) sono raramente comprensibili come "dessert" o "liquidità". A volte ciò che "significano" possono essere dedotti, ma questo non è sempre anche se non l'ha creata in prima persona.

In genere gli incorporamenti sono specifici dell'attività e differiscono tra loro anche se l'attività è diversa. Ad esempio, gli incorporamenti generati da un ristorante vegetariano rispetto a il modello di classificazione non vegetariano potrebbe avere due dimensioni: contenuto della carne e latticini. Nel frattempo, gli incorporamenti generati da una colazione e lo strumento di classificazione della cena per la cucina americana potrebbe avere dimensioni leggermente diverse: contenuto di calorie, cereali e carne. "Cereali" e "panino con uovo e pancetta" potrebbero essere vicini nello spazio di incorporamento di un classificatore per colazione e cena, ma distanti nello spazio di incorporamento di una Classificatore vegetariano o non vegetariano.

Addestramento di un'incorporamento di parole

Nella sezione precedente, hai esplorato una la visualizzazione delle relazioni semantiche word2vec.

Word2vec è uno dei tanti algoritmi usati per addestrare gli incorporamenti di parole. Si basa sull'ipotesi di distribuzione per mappare semanticamente simili per chiudere geometricamente i vettori di incorporamento. La funzione distribuzionale ipotesi afferma che le parole che spesso hanno le stesse parole vicine tendono a semanticamente simile. Entrambi: "cane" e "gatto" appaiono spesso vicino a la parola "veterinario", e questo fatto riflette la loro somiglianza semantica. Come disse il linguista John Firth nel 1957: "Conoscerai una parola della società che mantiene".

Il seguente video spiega un altro metodo per creare un incorporamento di parole come parte del processo di addestramento di una rete neurale, utilizzando un modello più semplice:

Incorporamenti statici e contestuali

Un limite delle rappresentazioni distribuite di parole come quello discusso nel video precedente è che sono statiche. Ogni parola è rappresentata da un singolo punto nel vettore spazio, anche se può avere una varietà di significati diversi, a seconda di come è usato in una frase. Nell'ultimo esercizio, hai scoperto la difficoltà di mappare le somiglianze semantiche per la parola arancione,che può indicare un colore o un tipo di frutta.

Per risolvere queste carenze, sono stati sviluppati incorporamenti contestuali. Gli incorporamenti contestuali consentono rappresentazioni di una stessa parola, ciascuna delle quali include informazioni il contesto in cui viene usata la parola. In un incorporamento contestuale, la parola arancione può avere due rappresentazioni separate: una cattura il "colore" dell'uso della parola, ad esempio frasi come "Il mio maglione preferito ha a strisce" e una a catturare il "frutto" uso della parola, come in frasi come "L'arancia è stata strappata dall'albero prima che maturasse completamente."