Incorporamenti: traduzione in uno spazio a bassa dimensionalità

Un embedding è un spazio relativamente ridotto in cui tradurre vettori ad alta dimensionalità. Per un confronto tra alte dimensioni e a bassa dimensionalità, consulta la sezione Categoricali Dati in maggior dettaglio più avanti in questo modulo.

Gli incorporamenti semplificano l'esecuzione del machine learning su modelli vettori di caratteristiche, come come gli sparsi vettori che rappresentano i pasti presentati sezione precedente. Idealmente, un incorporamento acquisisce alcuni dei la semantica dell'input, avvicinando gli input che hanno un significato più simile nello spazio di incorporamento. Ad esempio, un buon incorporamento posiziona il parola "auto" più vicino a "garage" che a "elefante". Un incorporamento può essere addestrato e riutilizzate in vari modelli.

Per avere un'idea di come i vettori di incorporamento rappresentano le informazioni, consideriamo dopo la rappresentazione unidimensionale dei piatti hot dog, pizza, insalata, shawarma e borscht, su una scala di "almeno un sandwich" a "quasi come un panino". "Paninografia" è la dimensione singola.

Figura 3. Lungo l'asse della panineria, dalla più bassa alla più:
    borscht, insalata, pizza, hot dog, shawarma.
. Figura 3. Cibi lungo una dimensione immaginaria del "panino".

In quale punto di questa riga strudel di mele cadere? Probabilmente può essere posizionato tra hot dog e shawarma. Ma mela che lo strudel sembra avere anche una dimensione aggiuntiva di dolce (che dolcezza il cibo) o una dessert (come un dessert) che prepara molto diverso dalle altre. La figura seguente mostra questo aggiungendo una "dessert" dimensione:

Figura 4. Stessa immagine di prima, ma con asse verticale di
    dolcezza. Lo strudel di mele è tra hot dog e shawarma, ma in realtà
    sull'asse orizzontale, ma più in alto su quello della dolcezza.
. Figura 4. Cibi indicati da entrambi i "panini" e "dessert".

Un incorporamento rappresenta ogni elemento nello spazio n-dimensionale con n numeri in virgola mobile (solitamente nell'intervallo –1 a 1 o da 0 a 1). Ad esempio, l'incorporamento nella Figura 4 rappresenta ogni pasto nella spazio bidimensionale con due coordinate. La voce "strudel di mele" è nella quadrante in alto a destra del grafico e potrebbe essere assegnato il punto (0,5, 0,3), mentre "hot dog" si trova nel quadrante in basso a destra del grafico e potrebbe essere assegnato il punto (0,2, -0,5).

In un incorporamento, la distanza tra due elementi qualsiasi può essere calcolata in termini matematici, e può essere interpretata come la somiglianza relativa tra i due elementi. Due elementi vicini, come shawarma e hot dog nella Figura 4, sono più strettamente correlate di due cose più distanti da ciascuna come apple strudel e borscht.

Nota anche che nello spazio 2D nella Figura 4, apple strudel è molto più lontano da shawarma e hot dog rispetto allo spazio 1D, che corrisponde intuizione: il valore apple strudel è più simile a un hot dog o a uno shawarma cani e shawarma sono l'uno con l'altro.

Consideriamo ora il borscht, che è molto più liquido degli altri. Questo suggerisce una terza dimensione, la liquidità, ovvero il grado di liquido del cibo. Aggiungendo questa dimensione, gli elementi potrebbero essere visualizzati in 3D in questo modo:

Figura 5. Stessa immagine di prima, ma con un terzo asse di liquidità
    ortogonali agli altri due e il borscht si spostava lungo lo stesso asse.
. Figura 5. Cibi indicati per "panino", "dolce", e "liquidità".

In che punto dello spazio 3D tangyuan? È soupy, come il borscht, e un dessert dolce, come lo strudel di mele, e sicuramente non un panino. Ecco un possibile posizionamento:

Immagine 6. Stessa immagine di prima, ma con il tangyuan posizionato in alto
    dolcezza e liquidità e bassa qualità di sandwich.
. Figura 6. Aggiunta del tangyuan all'immagine precedente, in alto "dessert" e "liquidità" e basso di "panino".

Osserva quante informazioni vengono espresse in queste tre dimensioni. Potreste immaginare dimensioni aggiuntive, come pastialità o forno.

Spazi di incorporamento reali

Come hai visto negli esempi di cibo precedenti, anche un piccolo spazio multidimensionale consente di raggruppare elementi semanticamente simili e di mantenere molto diversi tra loro. Posizione (distanza e direzione) nel vettore può codificare la semantica in un buon incorporamento. Ad esempio, visualizzazioni di incorporamenti reali illustrano le relazioni geometriche tra le parole di un paese e la sua capitale. Puoi vedere che la distanza da "Canada" a "Ottawa" è più o meno uguale alla distanza da "Turchia" a "Ankara".

Immagine 7. Tre esempi di incorporamenti di parole che rappresentano parole
      relazioni geometriche: genere (uomo/donna e re/regina sono più o meno
      della stessa lunghezza), il tempo verbale (camminata/camminata e nuoto/nuoto sono indicativamente)
      stessa lunghezza) e le capitali (Turchia/Ankara e Vietnam/Hanoi sono
      più o meno della stessa lunghezza).
. Figura 7. Gli incorporamenti possono produrre notevoli analogie.

Uno spazio di incorporamento significativo aiuta un modello di machine learning a rilevare i pattern durante l'addestramento.

Esercizio

In questo esercizio utilizzerai il metodo Proiettore per visualizzare una parola un incorporamento chiamato word2vec rappresenta più di 70.000 parole inglesi numericamente nello spazio vettoriale.

Attività 1

Esegui le attività indicate di seguito, quindi rispondi alla domanda riportata di seguito.

  1. Apri lo strumento Embedding Projector (Proiettore di incorporamento).

  2. Nel riquadro a destra, inserisci la parola atom nel campo Cerca. Poi fai clic sulla parola atom dai risultati seguenti (sotto 4 corrispondenze). Il tuo dovrebbe essere simile alla Figura 8.

    Immagine 8. Screenshot dello strumento Embedding Projector, con "atom"
    inserito nel campo di ricerca (cerchiato in rosso). La visualizzazione nel formato
    al centro dello strumento ora annota uno dei punti con la parola "atom",
    e aggiunge anche annotazioni di parole per i punti vicini. Nella zona
    punti elenco, le parole "atomi", "molecola" ed "elettroni" sono elencati
    come le parole più vicine nello spazio vettoriale ad "atomo".
    . Figura 8. Incorporamento di uno strumento di proiezione, con la parola "atom" aggiunta nel campo di ricerca (cerchiato in rosso).
  3. Anche in questo caso, nel riquadro a destra, fai clic sul pulsante Isola 101 punti (sopra) il campo Cerca) per mostrare le 100 parole più vicine ad atom. Il tuo schermo dovrebbe essere simile alla Figura 9.

    Figura 9. Screenshot dello strumento Embedding Projector, ora con
    "Isola 101 punti" selezionato (pulsante cerchiato in rosso). La visualizzazione
    della Figura 8 è ora aggiornata per visualizzare solo la parola "atom", mentre
    alle 100 parole più vicine nello spazio vettoriale, che includono le parole "atomi",
    "nucleo" e "particella".
    . Figura 9. Strumento proiettore di incorporamento, ora con "Isola 101 punti" selezionato (cerchiato in rosso).

Ora esamina le parole elencate in Punti più vicini nello spazio originale. Come descriveresti queste parole?

Fai clic qui per la nostra risposta

La maggior parte delle parole più vicine sono parole comunemente associate con la parola atomo, come la forma plurale "atomi", e le parole "elettrone", "molecola", e "nucleo".

Attività 2

Esegui le attività indicate di seguito, quindi rispondi alla domanda seguente:

  1. Fai clic sul pulsante Mostra tutti i dati nel riquadro a destra per reimpostare i dati. la visualizzazione dell'attività 1.

  2. Nel riquadro a destra, inserisci la parola uranio nel campo Cerca. Lo schermo dovrebbe avere l'aspetto della Figura 10.

    Figura 10. Screenshot dello strumento Proiettore incorporato, con "uranio"
    inserito nel campo di ricerca. La visualizzazione al centro
    annota uno dei punti con la parola "uranio" e aggiunge anche
    annotazioni di parole per punti vicini. Nella sezione "Punti più vicini" dall'elenco,
    parole "carbone", "isotopo", "nichel", "ossido", "ore", "zinco" e
    "manganese" sono elencate come le parole più vicine nello spazio vettoriale a
    "uranio".
    . Figura 10. Proiettore incorporato, con la parola "uranio" nel campo di ricerca.

Esamina le parole elencate in Punti più vicini nello spazio originale. Come queste parole sono diverse dalle parole più vicine per atom?

Fai clic qui per la nostra risposta

L'uranio si riferisce a uno specifico elemento chimico ed molte delle parole più vicine sono altri elementi, come zinco, manganese, rame e alluminio.

Attività 3

Esegui le seguenti attività e poi rispondi alla seguente domanda:

  1. Fai clic sul pulsante Mostra tutti i dati nel riquadro a destra per reimpostare i dati. e la visualizzazione dell'attività 2.

  2. Nel riquadro a destra, inserisci la parola arancione nel campo Cerca. Il tuo dovrebbe essere simile alla Figura 11.

    Figura 11. Screenshot dello strumento Proiettore di incorporamento, con il simbolo "arancione"
    inserito nel campo di ricerca. La visualizzazione al centro dello strumento
    annota uno dei punti con la parola "arancione" e aggiunge anche la parola
    annotazioni per i punti vicini. Nella sezione "Punti più vicini" elenco,
    le parole "giallo", "verde", "blu", "viola" e "colori" sono elencati
    come le parole più vicine nello spazio vettoriale ad "arancione".
    . Figura 11. Uno strumento proiettore incorporato, con la parola "arancione" nel campo di ricerca.

Esamina le parole elencate in Punti più vicini nello spazio originale. Cosa noti dei tipi di parole mostrati qui e dei tipi di parole non viene mostrato qui?

Fai clic qui per la nostra risposta

Quasi tutte le parole più vicine sono altri colori, ad esempio "giallo", "verde", "blu" "viola", e "rosso". Solo una delle parole più vicine ("succo") fare riferimento all'altro significato della parola (un agrume). Altri frutti che potresti aspettarti di vedere, come "mela" e "banana" non era presente nell'elenco termini più vicini.

Questo esempio illustra una delle principali carenze degli incorporamenti statici ad esempio word2vec. Tutti i possibili significati di una parola sono rappresentati da un'unica punto nello spazio vettoriale, quindi quando esegui un'analisi delle somiglianze per "arancione", è impossibile isolare i punti più vicini per una denotazione specifica della parola, ad esempio "arancione" (frutta) ma non "arancione" (colore).