← Torna ai documenti

Come l'AI capisce le parole (Word2Vec Spiegato Semplice)

youtube Elaborato Creato il 2025-11-07
Modifica

Metadati

Hash
027cad62985c4d60...
Data Pubblicazione
20250724
Lingua
it
Ultimo Aggiornamento
2025-11-07 08:53

Sintesi Breve

Riassunto generato da Gemini (max 200 parole)

Word2Vec, un modello di Natural Language Processing sviluppato da Google nel 2013, ha rivoluzionato la comprensione del linguaggio da parte delle AI. A differenza dei precedenti sistemi basati su vettori "one-hot", Word2Vec utilizza vettori densi per catturare le relazioni semantiche tra le parole, basandosi sulla teoria della semantica distribuzionale. Il modello viene addestrato tramite due architetture principali: CBOW e Skip-gram, per predire parole mancanti o contesti. Una volta addestrato, Word2Vec genera "embeddings" in cui parole semanticamente simili sono posizionate vicine nello spazio vettoriale, permettendo di risolvere analogie e dimostrando la codifica di relazioni semantiche. Pur presentando limiti come la gestione della polisemia e la mancanza di considerazione dell'ordine delle parole, Word2Vec ha rappresentato un progresso significativo. Nonostante le sue limitazioni, Word2Vec ha gettato le basi per modelli successivi più avanzati come ELMo, i Transformer e i Large Language Model, che superano i suoi limiti introducendo embedding contestuali, reti ricorrenti e meccanismi di attenzione, portando a una comprensione del testo più completa.

Trascrizione Estesa

Testo rielaborato e formattato da Gemini

Gli strumenti basati sull'intelligenza artificiale capiscono davvero quello che diciamo? Come è possibile che ChatGPT, Gemini e strumenti simili siano in grado di risponderci coerentemente, apparentemente capendo ogni cosa che gli stiamo dicendo? Oggi parliamo di uno degli articoli scientifici che ha rivoluzionato il modo in cui i modelli AI comprendono il linguaggio: Word2Vec. Pensate a come strumenti come ChatGPT e Gemini possono scrivere poesie, analizzare testi, rispondere coerentemente a domande complesse e aiutarci a fare brainstorming, rivoluzionando il mondo. Ebbene, questa rivoluzione è iniziata nel 2013 con Word2Vec, un approccio che ha trasformato radicalmente il modo in cui i modelli comprendono il significato delle parole. In questo video parleremo non solo di Word2Vec, ma anche del fatto che, grazie a questo approccio, i modelli AI possono comprendere la semantica delle parole, quindi il significato delle parole. Capiremo perché è stato così importante e perché è la base anche dei sistemi moderni. Prima di parlare nello specifico di Word2Vec, dobbiamo però capire perché è così complicato comprendere il linguaggio. Noi siamo abituati a parlare e diamo per implicito il fatto che il significato delle parole sia condiviso, sapendo che "felice" e "contento" hanno significati simili, che la parola "piano" può riferirsi sia allo strumento musicale sia a un piano che ho architettato, sia al piano di un edificio, e che le stesse parole in un ordine diverso comunicano un significato diverso (ad esempio, "il cane morde l'uomo" e "l'uomo morde il cane" hanno le stesse parole ma significati diversi). Per noi queste cose sono scontate, ma come facciamo ad insegnare queste sfumature ad un modello di intelligenza artificiale? Cosa esisteva prima di Word2Vec? Dagli anni '90 in poi, gli approcci al Natural Language Processing erano basati sull'utilizzo di vocabolari: ad ogni parola corrispondeva una posizione nel vocabolario, e questa posizione la distingueva dalle altre. Questo concetto veniva rappresentato attraverso i cosiddetti vettori "one-hot", composti da tutti zeri e un singolo "1" per indicare la posizione della parola. Questo era il sistema più semplice per definire che c'erano due parole diverse in una frase e quali parole fossero. Però, questo sistema così semplice non permette di cogliere le similarità tra le parole, perché ogni parola è diversa da ogni altra parola. Allo stesso modo, se un sistema di intelligenza artificiale avesse imparato qualcosa sul significato della parola "felice", non avrebbe potuto in nessun modo sapere che quella nozione potrebbe essere utilizzata anche per la parola "contento", perché a priori queste erano due parole diverse e quindi non c'era modo di esprimere questa similarità. Il secondo problema da gestire è quello della polisemia: una parola può avere più significati. Prendiamo ad esempio "boa", che può essere sia quella che sta nel mare sia il serpente, ma ci sono tantissime altre parole del genere come "piano", "rete" o "gola", che può essere sia la parte del corpo sia il peccato capitale o un sinonimo di canyon. Quindi, se vogliamo lavorare con le parole, dobbiamo anche trovare un modo di esprimere il fatto che la stessa parola può avere più significati. Con un approccio basato sul vocabolario, non c'era modo di esprimere questa informazione. Il terzo problema riguarda l'ordine delle parole. Se pensiamo all'approccio basato sul vocabolario e prendiamo le due frasi usate precedentemente ("il cane morde l'uomo" e "l'uomo morde il cane"), queste frasi avranno le stesse parole e quindi gli stessi vettori contenti zeri e pochi uno, e per il modello non ci sarà modo di capire che l'insieme di quelle parole ha significati diversi, perché è un sistema basato unicamente sul vocabolario e non tiene conto dell'ordine delle parole. Questo era come il problema veniva affrontato negli anni '90, quando la potenza di calcolo era molto limitata. Questi problemi erano noti ai ricercatori, ma dal 2010 in poi, con la possibilità di applicare il deep learning per risolvere i più diversi problemi, i ricercatori hanno pescato dalla teoria della semantica distribuzionale formulata da Harris nel 1954 e hanno potuto applicarla ottenendo appunto Word2Vec. Questi ricercatori erano ricercatori di Google guidati da Thomas Mikolov e nel 2013 hanno pubblicato due articoli scientifici che spiegavano un sistema chiamato Word2Vec che era molto semplice ma sorprendentemente efficace. L'intuizione era questa: passare da vettori "one-hot" che codificavano la posizione della parola all'interno del vocabolario a vettori densi, e far sì che questi vettori densi catturassero le relazioni semantiche tra le parole. Però, non è così scontato comprendere perché l'utilizzo di vettori densi ci dà la possibilità di esprimere la similarità tra le parole. Prendiamo questo esempio: abbiamo quattro parole, re, regina, uomo e donna, rappresentati da vettori composti da tre numeri. Ricordiamo che un vettore è una sequenza ordinata di numeri e possiamo vedere che noi possiamo interpretare ogni numero come l'espressione di un concetto o di un attributo da parte di quella parola. Quindi, storicamente la parola "re" è legata al concetto di mascolinità, non è legata al concetto di familiarità ed è legata al concetto di regalità. Possiamo fare lo stesso discorso per "regina", che è legata più al concetto di familiarità rispetto che al concetto di mascolinità, ma allo stesso modo del re è legato al concetto di regalità. Allo stesso modo possiamo vedere come le parole "uomo" e "donna" sono legate ai concetti rispettivamente di mascolinità e di familiarità e molto meno al concetto di regalità. Quindi vediamo che se avessimo un sistema per assegnare questi numeri, potremmo esprimere quanto due parole sono simili o sono dissimili. Inoltre, questi vettori sono detti densi perché sono molto più piccoli rispetto ai "one-hot" che devono avere tante posizioni quante parole ci sono in un vocabolario, e soprattutto creano uno spazio denso che possiamo immaginare come una nuvola di puntini tutti vicini tra loro. Ma come fa Word2Vec a creare questi vettori semantici? Pescando a piene mani dalla teoria della semantica distribuzionale, quello che viene utilizzato per spiegare il significato di ogni parola è il suo contesto. Partiamo da un esempio: immaginiamo di avere una frase, "il gatto siede sul tappeto". L'algoritmo di addestramento di Word2Vec prende questa frase, toglie una parola (per esempio, "gatto"), si va dal modello e gli si chiede: "il [ ] siede sul tappeto, qual è la parola mancante?". Il modello deve predire la parola "gatto", ma notiamo che potrebbe predire anche "bambino", perché sono tutte parole che starebbero bene in quella frase: "il gatto siede sul tappeto", "il cane siede sul tappeto", "il bambino siede sul tappeto". Sicuramente ci sono molte più parole che non può predire, tipo i verbi, oppure frasi come "il pianeta siede sul tappeto" perché questa frase non ha senso. Quindi, un modello anche solo per risolvere questo semplice gioco deve apprendere qualcosa sulle parole, deve apprendere il loro significato e deve apprendere quali sono simili, cioè quali hanno contesti simili, perché io ho dato da mangiare al mio gatto, ma posso aver dato da mangiare anche al mio cane, ho portato dal veterinario il mio gatto, ho portato dal veterinario il mio cane. Quindi, secondo la semantica distribuzionale, il significato delle parole è tanto più simile quanto più i contesti all'interno di cui quelle parole compaiono sono simili. Un modello viene addestrato su milioni di frasi e fa questo esercizio per ogni singola parola. Così facendo, ha modo di imparare il significato di tutte le parole, imparando quindi quando una parola va usata e quando una parola non va usata. Ora passiamo dalle analogie a una spiegazione un poco più tecnica. Negli articoli si parla di due diversi modelli: CBOW e Skip-gram. Concentriamoci sul modello CBOW. Per addestrare un modello CBOW, si prendono tutte le frasi del dataset e le si spezzettano in frasi di lunghezza fissa (immaginiamo di lunghezza cinque). Poi si prende ogni frase di cinque parole, si toglie quella in mezzo (quindi la terza), si va dal modello e gli si dice: "ok, ti do le altre quattro parole, predici mi quella al centro". Al contrario, per addestrare il modello Skip-gram, viene presa la parola al centro e gli si chiede: "ok, ora mi devi predire le altre quattro che mancano". Per fare queste predizioni, il modello deve trasformare le parole in vettori e combinare quei vettori in modo efficace per fare la prediczione corretta. Quindi, se parliamo di CBOW, le quattro parole di contesto vengono trasformate ognuna nel suo vettore, questi vettori vengono combinati creando un quinto vettore e l'aspirazione è che quel quinto vettore sia il più simile possibile al vettore della parola da predire. Ora però, da dove saltano fuori questi vettori? In realtà la risposta è molto più semplice di quello che ci si aspetta: inizialmente sono a caso. Quindi, ogni vettore viene inizializzato con valori casuali, mentre il modo di combinare i vettori è sempre lo stesso (somme e moltiplicazioni sempre allo stesso ordine). Sarà il modello stesso quindi a capire come i vettori devono cambiare per far sì che la loro combinazione dia come risultato il vettore che cerca di volta in volta. E la cosa pazzesca del machine learning è che se un modello fa questi piccoli cambiamenti ai vettori per milioni di volte, alla lunga questi vettori iniziano a essere posizionati in un modo tale che il significato di ogni parola è parzialmente rappresentato da come è fatto il vettore (e attenzione, dico parzialmente perché nessun modello è perfetto e quindi tutte le eccezioni, tutte le parole non possono essere colte da un sistema così semplice). Ora facciamo un passo indietro, perché immagino che qualcuno si sarà accorto di quali sono i problemi di questo addestramento. Prima cosa, all'inizio io ho detto che tutte le frasi del dataset vengono spezzettate in frasi piccole da cinque parole. Questo è un problema perché vuol dire che il contesto di una parola è limitato e quindi, per esempio, se io dico un verbo all'inizio di una frase, il suo soggetto arriva dopo un po', questo legame fra le due parole non verrà colto da Word2Vec. Ma se io ingrandisco troppo il contesto, potrà includere delle parole che non sono così importanti. Quindi, la scelta della grandezza di contesto è un cosiddetto iperparametro che chi lavora con questi sistemi deve settare, e per decidere quale valore dare a questo parametro si fanno degli esperimenti e si vede, dato un dataset, qual è la grandezza ottimale del contesto. Tornando ai nostri modelli, possiamo dire che Skip-gram funziona meglio con le parole meno frequenti, mentre invece CBOW è più veloce e funziona meglio per le parole più frequenti. La cosa veramente rivoluzionaria è che una volta addestrati i modelli, quindi quando il modello CBOW inizia a predire la parola corretta, le possiamo dire che l'addestramento è finito. Ma se la predizione di CBOW è corretta, vuol dire che la rappresentazione interna, la rappresentazione vettoriale delle parole, ha codificato il significato delle parole stesse. Quindi quello che fanno i ricercatori è addestrare un modello e alla fine dell'addestramento estrarre i vettori e utilizzarli per fare altri esperimenti, perché si assume che quei vettori catturino il significato delle parole. E qui arriviamo alla parte veramente affascinante di Word2Vec, perché questi vettori sono detti anche embeddings e, una volta addestrato il modello, emergono delle proprietà di questi embeddings. Per esempio, possiamo notare come sono organizzati per cluster, cioè parole simili sono posizionate nelle stesse regioni dello spazio. Per esempio, possiamo immaginare che tutte le parole relative alla frutta sono posizionate vicine, tutte le parole relative agli animali sono posizionate vicine, tutte le parole relative alle città sono posizionate vicine. Ora, il primo esempio che abbiamo mostrato è una semplificazione, perché se ci spostiamo su dati reali ci accorgiamo che è un po' più complicato interpretare questi spazi vettoriali. Quindi abbiamo capito che i vettori sono disposti in regioni che codificano delle classi semantiche, diciamo, cioè la classe semantica di frutti, la classe semantica degli animali, la classe semantica delle città e così via. Infatti, questa non è l'unica proprietà che possiamo trovare analizzando la disposizione dei vettori nello spazio. Una delle scoperte più sorprendenti dei paper di Mikolov è che questi vettori possono essere utilizzati per risolvere delle analogie. L'analogia più famosa è: "re sta a uomo come [ ] sta a donna", e la risposta dovrebbe essere "regina", perché storicamente il concetto di re è simile al concetto di uomo tanto quanto il concetto di regina è simile al concetto di donna. E questa analogia funziona anche, per esempio, per le capitali: "Roma sta all'Italia come quale città sta alla Francia?", e la risposta è Parigi. Oppure i verbi: "mangiare è legato a mangiato tanto quanto bere è legato a bevuto". Il fatto che queste analogie fossero risolvibili utilizzando i vettori voleva dire che le distanze nello spazio codificavano queste informazioni e quindi verbi all'infinito e verbi al passato avevano una distanza più o meno costante, così come le nazioni e le capitali avevano una distanza più o meno costante. E la cosa veramente bella è che queste proprietà emergono spontaneamente, nessuno durante il training ha imposto che alcuni vettori dovessero stare vicini e che la distanza tra infiniti e passati dovesse essere costante. Eppure, andando a indagare i vettori è quello che si scopre, e avere questa evidenza è stato un cosiddetto "momento wow" per la comunità scientifica, perché ci siamo accorti di come finalmente i modelli di intelligenza artificiale stessero iniziando a cogliere le sfumature del linguaggio senza che nessuno glielo insegnasse esplicitamente. Quindi, fino ad esso ci siamo concentrati su Word2Vec e ne abbiamo anche sottolineato una certa eleganza, ma sicuramente questo modello continua ad avere dei limiti. Infatti, è uscito nel 2013 e dal 2013 le cose sono un po' cambiate. Prima di tutto, il problema della polisemia non veniva risolto da Word2Vec, perché appunto una parola aveva un unico vettore e quindi gli esempi fatti prima, cioè la parola "boa", la parola "piano", ma anche la parola "rete" e la parola "gola", avevano ognuna il suo vettore, ma non avevano un vettore per ogni significato, avevano un unico vettore. Essere costanti, eppure andare in direzioni diverse: è quello che si scopre analizzando i vettori. Avere questa evidenza è stato un momento "wow" per la comunità scientifica, perché ci siamo accorti di come finalmente i modelli di intelligenza artificiale stessero iniziando a cogliere le sfumature del linguaggio senza che nessuno glielo insegnasse esplicitamente. Fino ad ora ci siamo concentrati su Word2Vec e ne abbiamo sottolineato una certa eleganza, ma sicuramente questo modello continua ad avere dei limiti. Infatti, è uscito nel 2013 e da allora le cose sono un po' cambiate. Prima di tutto, il problema della polisemia non veniva risolto da Word2Vec, perché una parola aveva un unico vettore. Quindi, gli esempi fatti prima, cioè la parola "boa", la parola "piano", ma anche la parola "rete" e la parola "gola", avevano ognuna il suo vettore, ma non avevano un vettore per ogni significato. Avevano un unico vettore, e quindi dobbiamo immaginarci che la parola "piano" possa essere posizionata a metà fra gli strumenti musicali e gli edifici. Allo stesso modo, la parola "gola" può essere posizionata a metà fra le parti del corpo e i peccati capitali, perché deve contemporaneamente rappresentare entrambi i significati. In realtà, rappresentando una media dei significati, non ne rappresenta nessuno. La soluzione a questo problema è arrivata con gli embedding contestuali nel 2018, con un modello che si chiama ELMo. Questo modello, infatti, basato sulle reti neurali ricorrenti, rappresenta ogni parola in base al significato della parola e al contesto in cui si trova, generando così un embedding contestuale. L'utilizzo delle reti ricorrenti è necessario perché un altro grande problema di Word2Vec è che l'ordine delle parole non è importante. Infatti, se vi ricordate, con CBOW e Skip-gram, io prendo una frase, tolgo la parola centrale e do in pasto le altre quattro, e non è importante in che ordine siano le altre quattro, perché il modello deve semplicemente usarle per predire la parola centrale, senza tener conto della loro posizione. Quindi, le informazioni legate all'ordine delle parole si perdono. Per evitare di perdere queste informazioni, sono state introdotte le reti ricorrenti, le cosiddette RNN (Recurrent Neural Network) e la loro evoluzione, cioè le LSTM (Long Short-Term Memory), che leggono le frasi sequenzialmente, quindi parola per parola, e riescono a tenere conto dell'ordine delle parole. Un terzo problema del modello Word2Vec è che ogni parola era importante allo stesso modo. Quindi, ognuna delle quattro parole nel contesto veniva utilizzata in egual misura per predire la parola al centro. Questo chiaramente non è ottimale, perché tutti sappiamo che quando dobbiamo comprendere il significato di una frase, il verbo è molto più importante del resto. Abbiamo il verbo, abbiamo il soggetto, abbiamo il complemento oggetto. Se io parlassi con voi potrei sbagliare tutti i generi delle parole e voi mi capireste comunque, ma se io sbagliassi tutti i verbi, avreste già chiuso il video, perché non si capirebbe nulla di quello che io dico. Quindi, i verbi sono molto più importanti del resto. In Word2Vec questa informazione non c'è e ogni parola ha la stessa importanza. Per arrivare ad un modello che assegnasse importanza diversa alle diverse parole, abbiamo dovuto aspettare il 2017 con i Transformer e il meccanismo di Attention, che sono la base dei moderni Large Language Model, quindi GPT, Gemini e dei modelli che, effettivamente, unendo le scoperte di Word2Vec al meccanismo di Attention, stanno rivoluzionando il mondo. Un ultimo limite di Word2Vec è che, essendo completamente non supervisionato e imparando direttamente dai dati, in qualche modo eredita i bias culturali che sono presenti in quei dati. Quindi, se nella nostra società sono presenti degli stereotipi o dei bias di genere, sfortunatamente questi aspetti nelle parole verranno comunque appresi dal modello. Per fortuna, quando si è capita questa cosa, è nata una linea di ricerca che punta ad ottenere dei vettori che non contengono questi bias. Ora abbiamo parlato di come funzionano i modelli Word2Vec e dei limiti di questi modelli, però perché questi modelli sono considerati la base di tutto quello che è venuto dopo? Il fatto è che dal 2013 gli embedding ottenuti attraverso l'applicazione di Word2Vec sono stati utilizzati come punto di partenza per costruire architetture di reti neurali più complicate, come appunto le architetture ricorrenti, l'architettura Transformer, i primi Large Language Model, quindi BERT e GPT, fino ad arrivare appunto ai moderni Large Language Model, cioè GPT-4, Gemini, Llama, Claude e tutti gli altri. I chatbot moderni, infatti, si basano su architetture molto complesse che, per funzionare, devono combinare i miliardi di parametri che vengono appresi durante il distramento, però alla base di tutto questo c'è ancora l'idea fondamentale di Word2Vec e della semantica distribuzionale: possiamo rappresentare il significato delle parole attraverso vettori in uno spazio e quindi utilizzando la matematica come strumento per codificare la semantica. La differenza principale tra i modelli è che, mentre Word2Vec si limitava a rappresentare una singola parola, i modelli moderni generano una rappresentazione dinamica basata sull'intera frase o, in generale, sull'insieme di tutte le frasi. Però è un po' come se Word2Vec avesse fornito un vocabolario di base e i modelli che sono venuti dopo avessero introdotto altri elementi, come la grammatica, la sintassi, la semantica, tutto per arrivare a una comprensione del testo migliore. Bene, oggi abbiamo visto come Word2Vec abbia rivoluzionato il campo della comprensione del linguaggio e abbia messo le basi per i modelli e i sistemi di AI conversazionale. Dal mio punto di vista, è veramente affascinante pensare come un'idea così semplice abbia contribuito a tracciare la strada verso i chatbot sofisticati che usiamo oggi. Word2Vec ci ha fatto intuire che i modelli di intelligenza artificiale possono cogliere le relazioni semantiche tra le parole senza che esplicitamente queste vengano definite o insegnate ai modelli stessi, ma possono apprendere queste stesse nozioni semplicemente studiando grandissime quantità di testo e osservando come gli umani utilizzano le parole, estraendo degli schemi basati su frequenze e statistiche.

Cartelle

Cartelle in cui è catalogato il documento

Testo Estratto (Cache)

Testo grezzo estratto dalla sorgente

gli strumenti basati sui intelligenti artificiali capiscono davvero quello che noi diciamo come è possibile che c'ha gpt, gemini e tutti gli strumenti simili siano in grado di risponderci quarentemente, apparentemente capendo ogni cosa che gli stiamo dicendo ciao a tutti e bentornati sul canale, io sono Manuel e oggi parliamo di uno degli articoli scientifici che è revoluzionato in modo in cui i modelli ai comprennero il linguaggio sto parlando di War 2V pensate come dicevo astrumenti come c'è gpt e gemini possono scrivere poesie, possono analizzare testi, possono rispondere quarentemente a domande complesse e otarci a fare brainstorming e stanno revoluzionando il mondo ebbene questa revoluzione iniziata nel 2013 quando è uscito War 2V un approccio che ha trasformato radicalmente il modo in cui i modelli comprendono il significato delle parole in questo video non parleremo sui di War 2V ma anche del fatto che grazie a questo approccio i modelli ai possono comprendere la semantica delle parole quindi il significato delle parole e capiremo perché è stato così importante e perché è la base anche dei sistemi moderni prima di parlare nello specifico di War 2V dobbiamo però capire perché è così complicato comprendere il linguaggio pensateci, noi siamo abituati a parlare in questo momento sto parlando con voi che mi ascoltate e diamo per implicito il fatto che il significato delle parole sia condiviso e quindi sapere che le parole felice e contento hanno significati simili che la parola piano può riferirsi sia allo strumento musicale sia a un piano che io ho architettato sia a un piano di un edificio e che le stesse parole in un ordine diverso comunicano un significato diverso ad esempio il cane morte luomo e luomo morte il cane hanno le stesse parole ma hanno un significato completamente diverso ecco per noi queste cose sono scontate però come facciamo ad insegnare queste sfumature ad un modello intelligento artificiale per prima cosa chiediamoci cosa esisteva prima di War 2V? ecco dagli anni 90 in poi gli approcci al Metro Language Processing erano basati sull'utilizio di vocabolari quindi una tratta parola era la decima del vocabolario, la ventesima del vocabolario la 140esima del vocabolario e per questo era diverso dalle altre questo concetto potiva venire rappresentato attraverso l'utilizio dei cosiddetti vettori 1.8 che semplicemente erano composti da tutti i zeri e 1.1 a indicare che quella parola era la decima parola, la ventesima parola o la centesima parola questo era il sistema più semplice per definire che c'erano due parole diverse in una frase e quali parole fossero però questo sistema così semplice non permette di cogliere le similarità tra le parole perché alla fine ogni parola è diversa da ogni altra parola allo stesso modo se un qualsiasi sistema è l'interiscienza artificiale avessi imparato qualcosa su significato della parola felice non avrebbe potuto in nessun modo sapere che quella nozione potrebbe essere utilizzata anche sulla parola contento perché a priori queste erano due parole diverse e quindi non c'era modo di esprimere questa similarità il secondo problema da gestire è quello della polisimina infatti una parola può avere più significati prendiamo ad esempio Boa noi abbiamo la Boa che è quella che sta nel mare e anche il Boa che è il serpente ma ci sono tantissime altre parole del genere come piano ma anche Gola che può essere sia la parte del corpo sia il peccato capitale o un sinonimo di Kenyon quindi se noi vogliamo lavorare con le parole dobbiamo anche trovare un modo di esprimere il fatto che la stessa parola può avere più significati ecco con un approccio vocabolario non c'era modo di esprimere questa informazione il terzo problema riguarda l'ordine delle parole se pensiamo l'approccio vocabolario e prendiamo le due frasi usate precedentemente quindi il cane morte luomo e luomo morte alcane queste frasi avranno le stesse parole e quindi gli stessi vettori contenti zeri e pochi uno e per il modello non ci sarà modo di capire che l'insieme di quelle parole ha significati diversi perché è un sistema basato unicamente sul vocabolario non tiene conto le l'ordine delle parole questo appunto era come il problema veniva affrontato negli anni 90 quando la potenza di calcolo era molto limitata e questi problemi erano noti ai ricercatori ma dal 2010 in poi con la possibilità di applicare il diplörning per risolvere i più diversi problemi i ricercatori hanno pescato dalla teoria e quindi hanno preso la teoria della semantica distribuzionale formulata da Eris Fertn e negli anni 50 e hanno potuto applicarla ottenendo appunto Warthuveck questi ricercatori erano ricercatori di Google guidati da Thomas Mikolov e nel 2013 hanno pubblicato due articoli scientifici che spiegavano un sistema chiamato Warthuveck che era molto semplice ma sorprendentemente efficace l'intuizione era questa passare da Vettori One-Ott quindi Vettore di cui abbiamo parlato prima che codificavano la posizione della parola all'interno del vocabolario ha di Vettori Densi e far sì che questi Vettori Densi catturassero le relazioni semantiche tra le parole ora però non è così scondato comprendere perché l'utilizzo di Vettori Densi ci da la possibilità di esprimere la simile alitratra dei parole infatti primiamo questo esempio qui abbiamo quattro parole re Regina, uomo ed onna rappresentati da Vettori composti da tre numeri ricordiamo che appunto un Vettore è una sequenza ordinata di numeri e possiamo vedere che noi possiamo interpretare ogni numero come l'espressione di un concetto o di un attributo da parte di quella parola quindi storicamente la parola re è legato al concetto di masculinità non è legato al concetto di familiarità ed è legato al concetto di regalità possiamo fare lo stesso discorso per Regina che è legato più al concetto di familiarità rispetto che al concetto di masculinità ma lo stesso modo del re è legato al concetto di regalità allo stesso modo possiamo vedere come le parole uomo ed onna sono legate ai concetti rispettivamente di masculinità e di familiarità e molto meno al concetto di regalità quindi vediamo che se avessimo un sistema per assegnare questi numeri potremmo esprimere quanto due parole sono simili o sono dissimili inoltre questi Vettori sono detti densi perché sono molto più piccoli rispetto di One-Ott che devono avere tante posizioni quante parole ci sono in un vocabolario e soprattutto creano uno spazio denso che possiamo immaginare come una nuvola di puntini tutti vicini tra loro però come fa World of Ack a creare questi Vettori semantici ecco pescando pienemani dalla terria della semantica distribuzionale quello che viene utilizzato per spiegare il significato di ogni parola è il suo contesto partiamo da un esempio immaginiamo da avere una frase cioè il gatto siede sul tappeto l'alburismo è del destramento di World of Ack prende questa frase toglie una parola per esempio viene tolto gatto si va dal modello e gli si chiede il siede sul tappeto qual è la parola mancante il modello deve predire la parola gatto ma notiamo che potrebbe predire anche bambino perché sono tutte parole che starebbero bene in quella frase il gatto siede sul tappeto il cane siede sul tappeto il bambino siede sul tappeto sicuramente ci sono molte più parole che non può predire tipo i verbi oppure frazi come il pianeta siede sul tappeto perché questa frase non ha senso e quindi un modello anche solo per risolvere questo semplice gioco deve apprendere qualcosa sulle parole deve apprendere il loro significato e deve apprendere quali sono simili cioè quali hanno contesti simili perché io ho dato da mangiare al mio gatto ma posso aver dato da mangiare anche al mio cane ho portato dal veterinario il mio gatto io ho portato dal veterinario il mio cane quindi secondo la semantica distribuzionale il significato delle parole è tanto più simile quanto più i contesti all'interno di cui quelle parole compagliono sono simili ecco un modello viene a destrarlo su milioni di frasi e fa questo esercizio per ogni singola parola così facendo a modo di imparare il significato di tutte le parole imparando quindi quando una parola va usata e quando una parola non va usata ok ora passiamo dalle analogie ha una spiegazione un poco più tecnica negli articoli si parla di due diversi modelli SIBO e SKEAPERGAM concentriamoci sul modello SIBO però destrave un modello SIBO si prendono tutte le frasi del dataset e le si spettetta in frasi di lunghezza FISSA immaginiamo di lunghezza cinque poi si prende ogni frase di cinque parole si toglie quella in mezzo quindi la terza si va dal modello e gli si dice ok ti do le altre 4 parole predici mi quella al centro al contrario per attestrare il modello SKEAPERGAM viene preso alla parola al centro e gli si chiede ok ora mi devi predire le altre 4 che mancano per fare queste predizioni il modello deve trasformare le parole in vettori e combinare quei vettori in modo efficace per fare la prediczione corretta quindi se parliamo di SIBO le 4 parole di contesto vengono trasformate ognuna nel suo vettore questi vettori vengono combinati creando un quinto vettore e l'aspiranza è che quel quinto vettore sia il più simile possibile al vettore della parola da predire ora però da dove saltano fuori questi vettori in realtà la risposta è molto più semplice di quello che ci si aspetta inizialmente sono a caso e quindi ogni vettore viene inizializzato con valori casuali mentre il modo di combinare i vettori è sempre allo stesso cioè somme e multiplicazioni sempre allo stesso ordine sarà il modello stesso quindi a capire come i vettori devono cambiare per far sì che la loro combinazione di a risultato al vettore che cerca di volta in volta e la cosa pazzesca del machine learning è che se un modello fa questi piccoli cambiamenti ai vettori per milioni di volte allunguandare questi vettori inizione a essere posizionati in un modo tale che il significato di ogni parola è parzialmente rappresentato da come è fatto il vettore e attenzione di coparzialmente perché nessun modello è perfetto e quindi tutte le eccezioni tutte le parole non possono essere colte da un sistema così semplice ok ora facciamo un passo indietro perché immagino che qualcuno si sarà corto di quali sono i problemi di questo destramento prima cosa all'inizio io ho detto che tutte le frasi del dataset vengono spezzettate in frasi piccole da cinque parole questo è un problema perché vuol dire che il contesto di una parola è limitato e quindi per esempio se io dico un verbo all'inizio di una frase il suo soggetto arriva dopo un po' questo legame fra le due parole non verrà colto da Word to Vek ma se io in grandi scotroppo il contesto potrà includere delle parole che non sono così importanti quindi la scelta della grandezza di contesto è un cosiddetto i perparometro che chi lavora con questi sistemi deve settare e per decidere quale valore dare questo parometro si fanno degli esperimenti e si vede dato un dataset quale la grandezza ottimale di il contesto ora tornando i nostri modelli possiamo dire che skipgram funziona meglio con le parole meno frequenti mentre invece si bo è più veloce e funziona meglio per le parole più frequenti la cosa veramente rivoluzionaria è che una volta ad destrati i modelli quindi quando il modello si bo inizi a prendere la parola corretta le possiamo dire che l'adestramento è finito ma se la predizione di si bo è corretta vuol dire che la rappresentazione interna la rappresentazione vettoriale delle parole ha codificato il significato delle parole stesse e quindi quello che fanno il cercaatori è ad destrare un modello e alla fine adiestramento estrarre i vettori e utilizzarli per fare altri esperimenti perché si assume che quei vettori catturino il significato delle parole e qui arriviamo alla parte veramente affascinante di WordVec perché questi vettori sono letti anche in baddings e una volta ad destrato il modello emergono delle proprietà di questi in baddings per esempio possiamo notare come sono organizzati per cluster cioè parole simile sono posizionate nelle stesse regioni dello spazio per esempio ne possiamo imaginare che tutte le parole relativi alla frutta sono posizionate vicine tutte le parole relativi agli animali sono posizionate vicine tutte le parole relativi agli città sono posizionate vicine ora il primo esempio che abbiamo mostrato è una simplificazione perché se ci spostiamo su dati reali che sono quelli mostrati ora schermo ci accorgiamo che è un po' più complicato interpretare questi spazio vettoriali quindi abbiamo capito che i vettori sono disposti in regioni che codificano delle classi semantiche diciamo cioè la classe semantica di frutti la classe semantica degli animali la classe semantica delle città e così via infatti che questa non è l'unica proprietà che possiamo trovare analizzando la disposizione dei vettori nello spazio infatti una delle scoperte più sono prendenti dei paper di Micholov è che questi vettori possono essere luttivizzati per risolvere delle analogie la analogie più famosa è resta a uomo come che cosa sta a donna e la risposta dovrebbe essere regina perché storicamente il concetto di re è simile al concetto di uomo tanto quanto il concetto di regina è simile al concetto di donna e questa analogia funziona anche per esempio per le capitali quindi Roma stà all'Italia come quale città stà alla Francia e la risposta e parigi oppure i verbi cioè mangiare è legato a mangiato tanto quanto bere è legato a bevuto e il fatto che questa analogie fosse l'orrisso al vibili utilizzando i vettori voleva dire che le distanze nello spazio codificavano queste informazioni e quindi verbi all'infinito e verbi al passato avevano una distanza più o meno costante così come le nazioni e le capitali avevano una distanza più o meno costante e la cosa veramente bella è che queste proprietà emergono spontaneamente nessuno durante il training in fatto che alcuni vettori dovessero stare vicini e che la distanza tra infiniti e passati dovessere essere costante eppure andando in dagari vettori è quello che si scopre e avere questa evidenza è stato un cosiddetto momento wow per la comunità scientifica perché ci siamo accorti di come finalmente i modelli di intelligenza artificiale stessere iniziando a cogliere le sfumature del linguaggio senza che nessuno gli insegnasse esplicitamente ok quindi fino ad esso ci siamo concentrati su World of WEC e ne abbiamo anche sottolineato diciamo una certa eleganza ma sicuramente questo modello continua ad avere dei limiti e infatti e usciro nel 2013 e la 2013 le cose sono un po' cambiate prima di tutto il problema della polisemia non veniva risolto da World of WEC perché appunto una parola aveva un unico vettore e quindi gli esempi fatti prima cioè la parola boa la parola piano ma anche la parola rete e la parola gola avevano ognuna il suo vettore ma non avevano un vettore per ogni significato avevano un unico vettore e quindi noi dobbiamo immaginarci che la parola piano possa posizionata a metà fra gli strumenti musicali e gli edifici allo stesso modo la parola gola può essere posizionata a metà fra le parti del corpo e i peccati capitali perché deve contemporaneamente rappresentare entrambi significati per realtà rappresentando una media dei significati non ne rappresenta nessuno la soluzione a questo problema è arrivata con gli embedding contestuali nel 2018 con un modello che si chiama Elmo questo modello in fatti basato sulle rete neolari ricorrenti rappresenta ogni parola in base al significato della parola e al contesto in cui si trova generando appunto così un embedding contestuale l'utilizio delle rete ricorrenti è necessario perché appunto un altro grande problema di Wartovac è che l'ordine delle parole non è importante infatti se vi ricordate si bove skip gramma io prendo una frase tolgo la parola centrale e gli doli altre quattro e non è importante in che ordine si hanno le altre quattro perché il modello deve semplicemente usarle per predire la parola centrale senza tener conto della loro posizione e quindi le informazioni legate all'ordine delle parole si perdono per evitare di perdere queste informazioni sono state introdotte le rete ricorrenti le cosiddette R&N cioè recurrento neural network e la loro evoluzione cioè le LSTM le long short term memory che legono le frasi sequenzialmente quindi parola per parola e riescono a tenere conto quindi dell'ordine delle parole un terzo problema del modello Wartovac è che ogni parola era importante allo stesso modo quindi ognuna delle quattro parole nel contesto viniva usilizzati in egual misura per predire la parola al centro questo chiaramente non è ottimale perché tutti sappiamo che quando dobbiamo comprendere il significato in una frase il verbo è molto più importante del resto abbiamo il verbo abbiamo il soggetto abbiamo il complemento oggetto e se io parlassi con voi potrei sbagliare tutti i generi delle parole e voi mi capireste comunque ma se io sbagliassi tutti i verbi avresti già chiuso il video perché non si capirebbe nulla di quello che io dico e quindi i verbi sono molto più importanti del resto il Wartovac questa informazione non c'è e ogni parola ha la stessa importanza per arrivare ad un modello che assegnasse importanza diversa alle diverse parole abbiamo voluto aspettare il 2017 con i transformer e il meccanismo di attention che sono la base dei moderni large language model quindi i cpp, i gmini e dei modelli che effettivamente unendo le scoperte di Wartovac al meccanismo del attention stanno rivoluzionando il mondo un ultimo limite di Wartovac è che essendo completamente non supervisionato e imparando direttamente dai dati in qualche modo i redità i bayas culturali che sono presenti in quei dati quindi se nella nostra società sono presenti degli stereotipi o dei bayas di genere sfortunatamente questi aspetti nelle parole verranno comunque a preser al modello e per fortuna quando si è capita questa cosa è nata una linea di ricerca che punta ottenere dei vettori che non contengono questi bayas ok ora abbiamo parlato di come funzioni i modelli Wartovac e dei limiti di questi modelli però perché questi modelli sono considerati la base di tutto quello che è venuto dopo il fatto che dal 2013 gli embeddingo tenuti attraverso l'applicazione di Wartovac sono stato utilizzati come punto di partenza per costruire architettore di rettineurali più complicati come appunto l'architettore di correnti l'architettura transformer i primi large language model quindi Bert e GPT fino all'arrivare appunto ai moderni large language model cioè GPT 4.5 lama 4 Claude 3.7 di Psyc e tutti gli altri i ciappondu moderni infatti si basano su architetture molto complesse che per funzionare devono combinare i miliardi di parametri che vengono appresi durante il distramento però la base di tutto questo c'è ancora l'idea fondamentale di Wartovac e della sevantica distribuzionale cioè possiamo rappresentare il significato delle parole attraverso vettori in uno spazio e quindi utilizzando la matematica come strumento per codificare la semanica la differenza principale tra i modelli è che mentre Wartovac si limitava a rappresentare una singola parola i modelli moderni generano una presentazione dinamica basata sull'intera frase o in generale sull'insieme di tutte le frasi però è un po' come se Wartovac avessi fornito un vocabolario di base i modelli che stono venuti dopo avessero introdotto altri elementi come la grammatica la sintassi la semanica tutto per arrivare a una comprensione del testo migliore bene oggi abbiamo visto come Wartovac abbia rivoluzionato il campo della comprensione del linguaggio e abbia messo le basi per i modelli sistemi di AI conversazione dal mio punto di vista è veramente affascinante pensare come un'idea così semplice abbia contribuito a tracciare la strada verso i chat bolsofisticati che usiamo oggi Wartovac ce n'ai sentito infatti che i modelli di intelligenza artificiale possono collere le relazioni semaniche tra le parole senza che esplicitamente queste vengano definite insegnate i modelli stessi ma possono apprendere queste stesse nozioni semplicemente studiando grandissime quantità di testo e osservando in cui gli umani utilizzano le parole estraendo degli schemi basati su frequenze e statistiche se questo video vi è viaciuto lasciate un like e scrivetevi al canale nei commenti scrivetevi cosa ne pensate lo conoscevate questo modello o volete che parliamo di un altro modello nello specifico grazie per essere avviati fino a qui e ci vediamo al prossimo video

Rigenera Contenuti

Rielabora i contenuti con Gemini

Nota: La rigenerazione richiederà alcuni secondi e sovrascriverà i contenuti esistenti.