Generare egemonia

Ciao. Ti do il benvenuto alla Presentazione dell’AI generativa. Mi chiamo Gwendolyn Stripling. E sono la Technical Curriculum Developer per l’intelligenza artificiale di Google Cloud. In questo corso imparerai a definire l’AI generativa, a spiegare come funziona, a descrivere i tipi di modelli di AI generativa e a descrivere le applicazioni che usano l’AI generativa. L’AI generativa è un tipo di tecnologia di intelligenza artificiale in grado di generare vari tipi di contenuti tra cui testi, immagini, audio e dati sintetici. Ma che cos’è l’intelligenza artificiale? Beh, dato che esploreremo l’intelligenza artificiale generativa, definiamo un po’ il contesto. Due delle domande che vengono poste più spesso sono che cos’è l’intelligenza artificiale e qual è la differenza tra AI e machine learning. Uno dei modi per definirla è che l’AI è una disciplina, come la fisica, ad esempio. L’AI è un ramo dell’informatica che si occupa della creazione di agenti intelligenti, ovvero sistemi che possono ragionare, apprendere e agire in modo autonomo. In pratica, l’AI riguarda la teoria e i metodi per creare macchine che pensano e agiscono come gli umani. In questa disciplina rientra anche il machine learning, che è un campo secondario dell’AI. È un programma o un sistema che addestra un modello in base a dati di input. Questo modello addestrato può effettuare previsioni utili da dati nuovi o mai visti prima derivanti da quelli usati per addestrare il modello. Il machine learning consente a un computer di apprendere senza una programmazione esplicita. Due dei tipi più comuni di modelli di machine learning sono i modelli ML supervisionati e non supervisionati. La differenza principale tra i due è che i modelli supervisionati contengono etichette. I dati etichettati hanno un tag, ad esempio un nome, un tipo o un numero. I dati non etichettati sono quelli senza tag. Questo grafico mostra un esempio del problema che un modello supervisionato potrebbe provare a risolvere. Supponiamo, ad esempio, che tu sia il proprietario di un ristorante. Hai dei dati storici sull’importo delle fatture, su quanto hanno lasciato di mancia le persone in base al tipo di ordine e se l’ordine era stato ritirato o consegnato. Nell’apprendimento supervisionato, il modello apprende dagli esempi passati per prevedere valori futuri, in questo caso le mance. In questo caso, il modello usa l’importo totale delle fatture per prevedere l’importo futuro delle mance a seconda che l’ordine sia stato ritirato o consegnato. Ecco un esempio del problema che un modello non supervisionato potrebbe provare a risolvere. In questo caso vuoi analizzare periodo di incarico e reddito per poi raggruppare i dipendenti per capire se qualcuno ha un rendimento migliore. I problemi non supervisionati si basano sul rilevamento, ovvero sull’analisi dei dati non elaborati per vedere se rientrano naturalmente in determinati gruppi. Andiamo un po’ più a fondo e mostriamo questi concetti graficamente, dato che sono fondamentali per comprendere l’AI generativa. Nell’apprendimento supervisionato, i valori dei dati di test o x vengono inseriti nel modello. Il modello restituisce una previsione e la confronta con i dati usati per addestrare il modello. Se i valori dei dati di test previsti e quelli effettivi di addestramento sono molto diversi, c’è un errore. Il modello prova a ridurre questo errore finché i valori previsti ed effettivi non sono più simili tra loro. Questo è un tipico problema di ottimizzazione. Dopo aver visto la differenza tra intelligenza artificiale e machine learning, nonché tra apprendimento supervisionato e non supervisionato, analizziamo brevemente il deep learning, un sottoinsieme dei metodi di machine learning. Mentre il machine learning è un campo più ampio che comprende molte tecniche diverse, il deep learning è un tipo di machine learning che utilizza le reti neurali artificiali per elaborare schemi più complessi rispetto al machine learning. Le reti neurali artificiali si ispirano al cervello umano. Sono composte da molti nodi interconnessi o neuroni che possono apprendere per eseguire le attività elaborando i dati ed effettuando previsioni. I modelli di deep learning di solito hanno vari livelli di neuroni, al fine di apprendere schemi più complessi rispetto ai modelli tradizionali di machine learning. Le reti neurali possono usare dati sia etichettati che non etichettati. Questo processo è chiamato apprendimento semi-supervisionato. Nell’apprendimento semi-supervisionato, una rete neurale viene addestrata sulla base di una quantità ridotta di dati etichettati e una grande quantità di dati non etichettati. I dati etichettati consentono alla rete neurale di apprendere i concetti di base dell’attività, mentre i dati non etichettati permettono alla rete neurale di creare nuovi esempi generici. Adesso vediamo il ruolo dell’AI generativa nella disciplina dell’AI. L’AI generativa è un sottoinsieme del deep learning, nel senso che usa le reti neurali artificiali e può elaborare dati etichettati e non etichettati usando metodi supervisionati, non supervisionati e semi-supervisionati. Anche i modelli linguistici di grandi dimensioni (LLM) sono un sottoinsieme del deep learning. I modelli di Deep learning o di machine learning in generale possono essere suddivisi in due tipi: generativi e discriminativi. Un modello discriminativo è un tipo di modello usato per classificare o prevedere le etichette per i punti dati. I modelli discriminativi di solito sono addestrati sulla base di un set di dati di punti dati etichettati. Apprendono le relazioni tra le caratteristiche dei punti dati e delle etichette. Quando un modello discriminativo viene addestrato, può essere usato per prevedere l’etichetta di nuovi punti dati. Un modello generativo crea nuove istanze di dati in base alla distribuzione probabilistica appresa dei dati esistenti. Di conseguenza, i modelli generativi creano nuovi contenuti. Vediamo questo esempio. Il modello discriminativo apprende la distribuzione probabilistica condizionale o la probabilità di y, il nostro output, sulla base di x, il nostro input, che stabilisce che si tratta di un cane e lo classifica come cane e non come gatto. Il modello generativo apprende la distribuzione probabilistica congiunta o la probabilità di x e y, quindi prevede la probabilità condizionale che si tratta di un cane e può generare l’immagine di un cane. Quindi, per riepilogare, i modelli generativi possono creare nuove istanze di dati, mentre i modelli discriminativi fanno differenza tra i vari tipi di istanze di dati. L’immagine in alto mostra un modello tradizionale di machine learning che prova ad apprendere la relazione tra i dati e l’etichetta, ovvero ciò che vuoi prevedere. L’immagine in basso mostra un modello di AI generativa che prova ad apprendere gli schemi in base ai contenuti, al fine di generare nuovi contenuti. Un modo valido per capire cosa sia l’AI generativa e cosa non lo sia è mostrato in questa immagine. Non si tratta di AI generativa se l’output, o y, oppure l’etichetta è un numero o una classe, ad esempio spam o non spam, oppure una probabilità. Si tratta di AI generativa quando l’output è un linguaggio naturale, ad esempio un discorso o un testo, un’immagine o un audio. Questa sarebbe la rappresentazione matematica di questo concetto. Se non conosci questa formula, la y è pari alla f di x e l’equazione calcola l’output dipendente di un processo sulla base di input diversi. La y indica l’output del modello. La f è la funzione usata nel calcolo. E la x rappresenta l’input o gli input usati per la formula. Il modello di output, perciò, è una funzione di tutti gli input. Se la y è il numero, ad esempio le vendite previste, non si tratta di AI generativa. Se la y è una frase, ad esempio “definisci le vendite”, si tratta di AI generativa perché la domanda deve produrre una risposta testuale. La risposta si basa sulla grande quantità di dati in base ai quali il modello è già stato addestrato. Per fare un riepilogo generale, il tipico processo di apprendimento tradizionale, sia supervisionato che non supervisionato, prende il codice ed etichetta i dati per creare un modello. In base al caso d’uso o al problema, il modello può restituire una previsione. Può classificare o raggruppare qualcosa. Usiamo questo esempio per dimostrare la maggiore affidabilità del processo dell’AI generativa. Il processo dell’AI generativa può prendere codice di addestramento, dati etichettati e dati non etichettati di ogni tipo per creare un modello di base. Il modello di base può quindi generare nuovi contenuti. Ad esempio testo, codice, immagini, audio, video e così via. È stata fatta molta strada dalla programmazione tradizionale alle reti neurali fino ai modelli generativi. Nella programmazione tradizionale, era necessario generare regole hardcoded per distinguere un gatto: il tipo, animale; zampe, quattro; orecchie, due; peluria, sì; ama i gomitoli e l’erba gatta. Nel periodo in cui erano in auge le reti neurali, potevamo dare alla rete le immagini di gatti e cani e chiedere se erano quelle di un gatto, in modo da prevedere che era un gatto. Nella fase di utilizzo delle tecnologie generative, gli utenti possono generare contenuti propri, ovvero testi, immagini, audio, video e così via, ad esempio modelli like PaLM o Pathways Language Model oppure LaMDA (Language Model for Dialogue Applications), importare enormi quantità di dati da più origini su internet e creare modelli linguistici di base utilizzabili semplicemente facendo domande, sia mediante la digitazione di un prompt sia parlando per inserire frasi nel prompt stesso. Perciò quando chiedi cos’è un gatto, il modello può fornirti tutto quello che ha appreso sui gatti. Adesso vediamo la definizione formale. Che cos’è l’AI generativa? L’AI generativa è un tipo di intelligenza artificiale che crea nuovi contenuti sulla base di ciò che ha appreso da contenuti esistenti. Il processo di imparare da contenuti esistenti è chiamato apprendimento e porta alla creazione di un modello statico quando riceve un prompt. L’AI usa il modello per prevedere una possibile risposta, quindi genera nuovi contenuti. In pratica, impara la struttura di base dei dati e poi può generare nuovi campioni simili ai dati usati per l’addestramento. Come detto in precedenza, un modello linguistico generativo può usare quanto ha appreso dagli esempi che gli vengono mostrati per creare qualcosa di completamente nuovo sulla base di queste informazioni. I modelli linguistici di grandi dimensioni sono un tipo AI generativa perché generano nuove combinazioni di testo sotto forma di linguaggio naturale. Un modello di immagine generativa prende un’immagine come input e può restituire testo, un’altra immagine o un video. Ad esempio, nel testo di output puoi avere le risposte a domande visive, mentre nell’immagine di output viene generato il completamento dell’immagine. E nel video di output viene generata l’animazione. Un modello linguistico generativo prende un testo come input e può restituire altro testo, un’immagine, un audio o decisioni. Ad esempio, nel testo di output vengono generate le risposte alle domande. E nell’immagine di output viene generato un video. Abbiamo detto che i modelli linguistici generativi apprendono schemi e linguaggi mediante dati di addestramento e poi, sulla base di un testo, prevedono cosa viene dopo. Per questo, i modelli linguistici generativi sono sistemi di abbinamento degli schemi. Apprendono gli schemi sulla base dei dati che fornisci. Ecco un esempio. In base a quello che ha appreso dai dati di addestramento, offre previsioni su come completare questa frase: “Sto preparando un panino prosciutto e mozzarella. Ecco lo stesso esempio utilizzando Bard, che è addestrato sulla base di moltissimi dati di testo ed è in grado di comunicare e generare testi simili a quelli umani in risposta a un’ampia gamma di prompt e domande. Ecco un altro esempio. Il significato della vita è… Bart ti darà una risposta contestuale e poi mostrerà la risposta con la probabilità più alta. L’AI generativa deve la sua potenza all’uso dei transformer. Nel 2018, i transformer hanno portato a una rivoluzione nell’elaborazione del linguaggio naturale. A livello generale, un modello di transformer è composto da un encoder e da un decoder. L’encoder codifica la sequenza di input e la passa al decoder, che impara come decodificare la rappresentazione per un’attività pertinente. Nei transformer, le allucinazioni sono parole o frasi generate dal modello che spesso non hanno senso o sono errate grammaticalmente. Le allucinazioni possono essere causate da vari fattori, ad esempio perché il modello non è stato addestrato sulla base di dati sufficienti, perché ha usato dati “sporchi” o non omogenei, perché non ha ricevuto abbastanza contesto o perché non ha ricevuto abbastanza vincoli. Le allucinazioni possono essere un problema per i transformer perché possono rendere il testo di output difficile da comprendere. Possono anche aumentare la probabilità che il modello generi informazioni errate o fuorvianti. Un prompt è un testo breve che viene inserito come input in un modello linguistico di grandi dimensioni. Può essere usato per controllare l’output del modello in vari modi. La progettazione dei prompt è il processo per creare un prompt che genererà l’output desiderato da un modello linguistico di grandi dimensioni. Come abbiamo detto, l’AI generativa dipende molto dai dati di addestramento che fornisci. Analizza i pattern e le strutture dei dati di input per apprendere. Grazie all’accesso a un prompt basato su browser, l’utente può generare i propri contenuti. Abbiamo mostrato le immagini dei tipi di input basati sui dati. Ecco i tipi di modelli associati. Da testo a testo. I modelli da testo a testo prendono un input in linguaggio naturale le generano un output di testo. Questi modelli sono addestrati per apprendere il mapping tra una coppia di testi, ad esempio per tradurre da una lingua a un’altra. Da testo a immagine. I modelli da testo a immagine sono addestrati sulla base di molte immagini, ognuna con una breve descrizione testuale. La diffusione è un metodo usato per ottenere questo risultato. Da testo a video e da testo a 3D. I modelli da testo a video generano una rappresentazione video da un input di testo. Questo input può essere di qualsiasi tipo, da una singola frase a uno script completo. L’output sarà in video che corrisponde al testo di input. Allo stesso modo, i modelli da testo a 3D generano oggetti tridimensionali che corrispondono alla descrizione del testo dell’utente. Ad esempio, può essere usato nei giochi o in altri scenari 3D. Da testo ad attività. I modelli da testo ad attività sono addestrati per svolgere un’attività o un’azione specifica in base all’input di testo. Possono essere attività di ogni tipo, ad esempio rispondere a una domanda, eseguire una ricerca, fare una previsione o eseguire un’azione. Ad esempio, un modello da testo ad attività potrebbe essere addestrato per esplorare una UI web o modifica un documento mediante la GUI. Un modello di base è un grande modello AI preaddestrato sulla base di moltissimi dati progettati per adattarsi o essere ottimizzati per una vasta gamma di attività downstream come analisi del sentiment, aggiunta di sottotitoli alle immagini e riconoscimento degli oggetti. I modelli di base hanno il potenziale per rivoluzionare molti settori tra cui sanità, finanza e assistenza ai clienti. Permettono di rilevare le frodi e forniscono assistenza personalizzata ai clienti. Vertex AI offre un Model Garden che include i modelli di base. I modelli di base linguistici includono l’API PaLM per chat e testo. I modelli di base per la visione artificiale includono la diffusione stabile, che si è dimostrata efficace per generare immagini di alta qualità da descrizioni testuali. Immaginiamo un caso d’uso in cui devi raccogliere i sentiment dei tuoi clienti riguardo a un prodotto o un servizio. Puoi usare il modello di attività per l’analisi del sentiment in Classificazione proprio per questo scopo. E se devi eseguire un’analisi delle presenze? C’è un modello delle attività anche per questo caso d’uso. Qui vediamo le applicazioni dell’AI generativa. Analizziamo un esempio di generazione del codice, mostrato nel secondo blocco sotto il codice in alto. In questo esempio, ho inserito un problema di conversione di un file di codice da Python a JSON. Uso Bard. Scrivo quanto segue nella casella del prompt. Ho un DataFrame Pandas con due colonne, uno con il nome file e uno con l’ora in cui è stato generato. Sto provando a convertire questo codice in un file JSON nel formato mostrato sullo schermo. Bard restituisce i passaggi da seguire e lo snippet di codice. Ecco il mio output in formato JSON. E c’è di più. Uso il Jupyter Notebook, chiamato Colab, che è uno strumento senza costi basato su browser. Mi basta esportare il codice Python nel Colab di Google. Ricapitolando, la generazione del codice di Bart consente di eseguire il debug delle righe del codice sorgente, spiegare il codice all’utente riga per riga, creare query SQL per il database, tradurre il codice da un linguaggio a un altro e generare documentazione e tutorial per il codice sorgente. Generative AI Studio consente di esplorare e personalizzare in modo rapido i modelli di AI generativa da usare nelle applicazioni su Google Cloud. Generative AI Studio aiuta gli sviluppatori a creare ed eseguire il deployment di modelli di AI generativa grazie a una serie di strumenti e risorse che semplificano l’adozione iniziale. Ad esempio, c’è una libreria di modelli preaddestrati. C’è uno strumento per ottimizzare i modelli. C’è uno strumento per eseguire il deployment dei modelli in produzione. È disponibile anche un forum della community dove gli sviluppatori possono condividere idee e collaborare. Generative AI App Builder consente di creare app basate sull’AI generativa senza dover scrivere codice. Gen AI App Builder ha un’interfaccia a trascinamento che semplifica la progettazione e la creazione delle app. Ha un editor visivo che facilita la creazione e la modifica dei contenuti dell’app. Dispone di un motore di ricerca incorporato che permette agli utenti di cercare informazioni nell’app. E ha anche un motore AI per le conversazioni che permette agli utenti di interagire con l’app usando il linguaggio naturale. Puoi creare assistenti digitali, motori di ricerca personalizzati, knowledge base, applicazioni di addestramento e molto altro ancora. l’API PaLM consente di eseguire test ed esperimenti con i modelli linguistici di grandi dimensioni e gli strumenti di AI generativa di Google. Per velocizzare e rendere più accessibile la creazione di prototipi, gli sviluppatori possono integrare l’API PaLM con la suite Maker e utilizzarla per accedere all’API mediante la Graphic User Interface. La suite include una serie di strumenti per addestrare, eseguire il deployment e monitorare i modelli. Lo strumento di addestramento dei modelli consente agli sviluppatori di addestrare i modelli ML sulla base dei dati a disposizione usando vari algoritmi. Lo strumento di deployment dei modelli permette agli sviluppatori di eseguire il deployment dei modelli ML in produzioni con varie opzioni. Lo strumento di monitoraggio dei modelli permette agli sviluppatori di controllare le prestazioni dei modelli ML in produzione utilizzando una dashboard e una serie di metriche diverse. Grazie per aver seguito il corso Presentazione dell’AI generativa.

Lascia un commento