> On 13 Oct 2023, at 18:13, nexa-requ...@server-nexa.polito.it wrote:
> 
> From: Giacomo Tesio <giac...@tesio.it <mailto:giac...@tesio.it>>
> To: Giuseppe Attardi <atta...@di.unipi.it <mailto:atta...@di.unipi.it>>
> Cc: nexa@server-nexa.polito.it <mailto:nexa@server-nexa.polito.it>
> Subject: Re: [nexa] IA, lavoro, immaginari
> Message-ID: <17cf1ca0-aa25-438e-9bac-323d44abb...@tesio.it 
> <mailto:17cf1ca0-aa25-438e-9bac-323d44abb...@tesio.it>>
> Content-Type: text/plain; charset=UTF-8
> 
> Ciao Giuseppe,
> 
> Il 12 Ottobre 2023 20:18:23 UTC, Giuseppe Attardi ha scritto:
>> I word embedding sono molto diversi dai co-occurrence counts, simili
>> a quelle dei tuoi esempi.
> 
> Si trattava ovviamente di una semplificazione ad uso di chi non conosce
> (o non comprende) la programmazione statistica.
> 
Ah, beh. 
> 
>> La dimensione dei word embeddings è un valore costante prefissato,
>> indipendente dalla lunghezza del vocabolario, come nella tua versione.
> 
> Certo, per ovvi motivi: la gestione di vettori con una dimensionalità
> pari alla dimensione de vocabolario richiederebbe capacità di calcolo
> nettamente maggiori di quelle disponibili.

No. La dimensione del vocabolario sarebbe perfettamente trattabile.
Si chiama vector space model ed è quello utilizzato nei motori di ricerca.

> 
> D'altro canto, tale dimensione è "prefissato" solo all'interno di una
> particolare architettura del LLM, ma nulla impedisce di provare a
> programmare statisticamente LLM diversi (con dimensioni diverse nei
> word embeddings) sullo stesso dataset sorgente e confrontarne i
> risultati per selezionare quello ottimale durante la cross validation.
> 
Non è questione di scegliere la dimensione ottimale: la differenza è tra un 
modello sparso e uno denso.
Per ottenere quello denso, occorre fare di più di una semplice riduzione 
dimensionale, come dici sotto.
> 
> Inoltre il mio esempio riproduceva una matrice basata su una singola
> relazione, peraltro definita in modo piuttosto approssimativo.
> 
> Le relazioni che potremmo misurare sono innumerevoli, dalla distanza
> media nelle frasi, alle relazioni grammaticali etc…
Lodevole, allora sviluppa la tua teoria e pubblicala.
> 
> 
>> I word embedding vengono ottenuti come effetto secondario
>> dell’allenamento di un Language Model, come i vettori nascosti che
>> consentono al modello di stimare la probabilità di una parola in un
>> contesto.
> 
> In altri termini, il processo di programmazione statistica che hai 
> in mente combina il computo delle co-occorrenze ed una riduzione
> dimensionale che facilita l'approssimazione della funzione di
> mappatura obiettivo.

No, una riduzione dimensionale fa perdere informazioni producendo 
un’approssimazione.
Le rappresentazioni basate su co-occurrence counts non hanno dato i risultati 
che i linguisti speravano.
Farne una riduzione dimensionale peggiorerebbe le loro capacità.
Puoi vederlo in questo articolo, negli esempi in Tab. 6 e 7, che mostra come i 
word embedding invece funzionano:
        https://www.jmlr.org/papers/volume12/collobert11a/collobert11a.pdf
Oppure sperimentarlo tu stesso qui:
        https://projector.tensorflow.org/
Funzionano vuole dire che utilizzati in applicazioni di NLP, consentono di 
ottenere risultati efficaci più di ogni altra tecnica usata in precedenza.
È quello che Nello Cristianini chiama “La scorciatoia” 
(https://www.mulino.it/isbn/9788815299833).

> 
> 
>> Ci vorrebbero diverse lezioni per spiegare come si calcolano i word
>> embedding e perché funzionino in modo talmente efficace
> 
> Beh, ma il loro principio di funzionamento è semplice da spiegare.

Vieni tu a insegnarli allora.
Potresti anche andare a Stanford, dove ci dedicano 6 ore di lezione in un corso 
di PhD:

        https://web.stanford.edu/class/cs224n/index.html 
<https://web.stanford.edu/class/cs224n/index.html>
> 
> È _COME SE_, a valle di un'analisi simile a quella che ho descritto
> nella mail precedente, si applicasse una riduzione dimensionale oculata
> (ma approssimativa).
> 
> Per chi non lo sapesse una riduzione dimensionale consiste
> semplicemente nella proiezione di uno spazio euclideo a N dimensioni su
> un altro spazio euclideo a M dimensioni con N maggiore di M.
> 
> Ad esempio, immaginando 4 o più punti in uno spazio tridimensionale
> (N=3), si tratta semplicemente di proiettare i punti su un piano (M=2)
> libero di traslare e ruotare in modo tale da minimizzare la distanza
> quadratica media delle proiezioni dai punti originali entro un limite
> accettabile (aka, "minimizzare l'errore entro un epsilon").
> 
> Non dovrebbe essere difficile da immaginare: 4 o 5 punti nello spazio
> a caso ma non appartenenti ad un piano ed un piano selezionato in modo
> da passare il più vicino possibile a ciascuno di essi.
> 
> 
>> I word embedding sono composi di centinaia di dimensioni e non è
>> ricostruibile cosa rappresenti ciascuna
> 
> Naturalmente, come in ogni riduzione dimensionale in cui lo spazio di
> destinazione non è scelto sulla base di una semantica nota, ma sulla
> base della distanza delle proiezioni sui punti noti.
Non sono una semplice riduzione di dimensione.
> 
> Tornando al nostro esempio, le coordinate originali dei punti
> nello spazio tridimensionale hanno una semantica precisa per l'essere
> umano: dato il punto zero in cui potremmo collocare l'osservatore,
> l'asse x potrebbe distinguere destra (x positive) e sinistra (x
> negative), l'asse y potrebbe distinguere sopra (y positive) e sotto (y
> negative) e l'asse z potrebbe distinguere davanti (z positive) e dietro
> (z negative).
> 
> Insomma, le coordinate originali hanno un significato comprensibile.
> 
Non esistono coordinate originali per i word embeddings, perché non provengono 
da una riduzione dimensionale.
> 
> Ma nel momento che cerchiamo un piano che semplicemente minimizzi la
> distanza quadratica media delle proiezioni dei punti su di esso dai
> punti stessi, accettiamo di ruotare e traslare questo piano come serve.
> 
> A quel punto il sistema di coordinate delle proiezioni sul piano
> perdono di significato: lo zero si trova da qualche parte che non
> sappiamo rispetto all'osservatore, x e y sono orientate in modo del
> tutto diverso rispetto alle x e y e z dello spazio tridimensionale di
> origine, per cui non abbiamo più modo di attribuirgli un significato.
> 
> TUTTAVIA, poiché i punti hanno comunque perso una dimensione, le nostre
> proiezioni non corrispondono esattamente ai punti originali. O magari
> corrispondono in alcuni fortunati casi, ma in altri sono molto lontani.
> E per contro, vi sono punti lontani sulla dimensione persa che si
> trovano ad essere sovrapposti.
> 
> 
> Naturalmente dichiarare che i word embeddings rappresentano in modo
> imperscrutabile il significato delle parole fa molto più figo!
> 
> Ma rimangono mere proiezioni di statistiche.

No. Nel calcolarli si usano metodi di ottimizzazione, non di statistica.
In termini grossolani:
L’ottimizzazione studia tecniche per trovare modelli che rappresentano al 
meglio un fenomeno, e di conseguenza hanno capacità predittive.
La statistica studia la raccolta, analisi e interpretazione dei dati: non ha 
capacità predittive se non assumendo la stabilità dei fenomeni.
Il Machine Learning utilizza metodi statistici per definire i modelli che 
ottimizza rispetto ai dati.
Per approfondire le differenze:
        
https://towardsdatascience.com/the-actual-difference-between-statistics-and-machine-learning-64b49f07ea3

— Beppe

_______________________________________________
nexa mailing list
nexa@server-nexa.polito.it
https://server-nexa.polito.it/cgi-bin/mailman/listinfo/nexa

Reply via email to