Recenti progressi nell'IA - IA generativa

Feb 07 2023
I recenti progressi nell'IA generativa hanno creato un grande interesse per una possibile interruzione in molte aree di business. Tutto, dalla programmazione al video, all'arte, alla scrittura, ai giochi, sta progredendo a un ritmo senza precedenti.

I recenti progressi nell'IA generativa hanno creato un grande interesse per una possibile interruzione in molte aree di business. Tutto, dalla programmazione al video, all'arte, alla scrittura, ai giochi, sta progredendo a un ritmo senza precedenti.

Prima di andare oltre, cerchiamo di capire cos'è l'IA generativa:

L'IA generativa è un tipo di intelligenza artificiale in grado di generare nuovi contenuti in base a parametri di input. Implica tecniche di formazione non supervisionate e semi-supervisionate che consentono ai modelli di creare nuovi contenuti utilizzando contenuti creati in precedenza come testo, audio, video e codice.

In precedenza, stavamo addestrando i modelli per essere in grado di riconoscere oggetti simili al mondo reale da scene diverse. Ora con i modelli generativi, siamo in grado di addestrare i modelli per generare nuovi contenuti (immagine, video, codice, ecc.) in base ai parametri di input. Questo è in un certo senso un tentativo di rendere l'IA più consapevole di sé e in grado di pensare e creare sulla base di un pregiudizio pre-appreso.

Perché ora?

C'è una ragione per cui tutti quegli strumenti intelligenti, che ora sono disponibili in commercio, sono improvvisamente arrivati ​​contemporaneamente. È correlato alla svolta di una nuova classe di modelli di intelligenza artificiale più robusti e flessibili di qualsiasi altra cosa prima. Questa nuova classe di modelli è stata ampiamente utilizzata nei chatbot, nella generazione di codice e in letteratura. Ci sono indicati come LLM (Large Language models)

Quindi quali sono questi modelli? come sono emersi e come sono riusciti a uscire dal dominio linguistico per entrare in tutti i domini in cui vediamo oggi l'IA?

Ritorno alle basi:

Modelli, dati e calcolo costituiscono il treppiede del machine learning. Per dirla in parole semplici, i modelli sono fondamentalmente algoritmi che producono un output desiderato da un input. I set di addestramento applicati a questi algoritmi sono indicati come set di dati. E infine, la potenza di calcolo necessaria per eseguire quelle fasi di addestramento è il calcolo.

Uno dei progressi più importanti dell'IA è stato introdotto con il deep learning nel 2010 utilizzando la CNN (Convolutional Neural Networks). Il deep learning si ispira alla struttura e alla funzione del cervello. Implica l'addestramento di reti neurali artificiali su grandi quantità di dati e l'utilizzo di questi modelli per fare previsioni o intraprendere azioni basate sui dati di input. I modelli di deep learning possono imparare a eseguire un'ampia gamma di attività, come la classificazione delle immagini, riconoscendo i modelli nei dati e migliorando le loro prestazioni attraverso l'iterazione. Ha mostrato risultati notevoli in molte aree, ma principalmente nell'elaborazione delle immagini per la sua capacità di identificare e riconoscere diversi nuovi oggetti sulla base di modelli pre-addestrati.

Intorno al 2012, AlexNet ha utilizzato CNN pre-addestrati, su GPU, utilizzando il set di dati ImageNet (la più grande raccolta di immagini etichettate) per creare il miglior classificatore di immagini al mondo.

Questa era la base dell'IA moderna.

Sebbene le CNN abbiano avuto un enorme successo nella visione artificiale, hanno mostrato i suoi limiti in altri casi d'uso come le auto a guida autonoma. Una grande sfida è stata la PNL (Natural Language Processing), ovvero far capire e usare l'IA al linguaggio umano piuttosto che al codice.

Il problema della comprensione del linguaggio umano è fondamentalmente diverso dall'elaborazione delle immagini. Un linguaggio umano è composto da una sequenza ordinata di parole, e sì, l'ordine è importante. La rappresentazione di un oggetto in un'immagine sarà la stessa indipendentemente da dove si trovi. Una faccia è una faccia, non importa dove sia posizionata in un'immagine. E questo non è il caso delle parole.

Un altro problema era ottenere i dati di addestramento corretti. Ottenere un set di dati di addestramento di immagini etichettato richiede molto tempo, ma può essere generato disponendo di una raccolta di immagini da database o altre fonti.

Sebbene Internet sia ricco di parole e contenuti testuali, creare un set di dati significativo in grado di addestrare un computer a comprendere il linguaggio umano può essere molto difficile. Etichettare il set di dati di testo può essere ancora più complesso e richiedere molto tempo.

Il processo di formazione richiederà due fasi, formazione dei dati non etichettati; cioè testo che non richiedeva l'intervento umano.

Per la formazione è stata utilizzata un'enorme quantità di dati. Ciò è stato possibile sfruttando i progressi delle GPU e dell'elaborazione parallela.

Tutto è iniziato con la traduzione:

I ricercatori di Google stavano lavorando su uno specifico problema di PNL che è la traduzione. La traduzione è un processo complesso, in cui, a differenza dell'elaborazione delle immagini, l'ordine delle parole nella frase può cambiare completamente il significato della frase. Inoltre, lingue diverse posizionano l'ordine delle parole in modo diverso.

Google ha trovato la soluzione e si chiama "il trasformatore"

Cos'è il trasformatore?

Un modello di trasformatore è una rete neurale che apprende il contesto monitorando le relazioni in dati sequenziali come le parole in questa frase. È un modello di deep learning che adotta un insieme di tecniche matematiche denominate auto-attenzione.

Il trasformatore è considerato una svolta per due motivi. Il primo è l'uso della tecnica di "codifica di posizionamento" che consente al modello di codificare numericamente la sequenza di parole assegnando un valore numerico a ciascuna parola in un ordine specifico che ha visto per la prima volta.

La seconda ragione è la tecnica dell'"attenzione a più teste". Quando si tratta di produrre output, il modello guarda avanti o indietro in diverse parti (a più teste) della frase di input (attenzione) e scopre qual è la più rilevante per l'output.

I trasformatori si sono dimostrati efficaci per rispondere esattamente al problema della traduzione tra molte lingue. Oltre alla capacità di elaborare grandi blocchi di parole in parallelo utilizzando le GPU.

Il fatto che la traduzione non richieda l'etichettatura dei dati è importante. Il modello può essere addestrato per riempire gli spazi vuoti e indovinare cosa verrà dopo. Questo è stato fondamentale per i modelli per essere in grado di apprendere tutti i tipi di modelli senza richiedere una formazione etichettata.

Pertanto, la svolta è stata questa nuova generazione di modelli linguistici per la traduzione e altro ancora.

L'architettura generale del trasformatore (immagine da: www.datacamp.com/tutorial/an-introduction-to-using-transformers-and-hugging-face)

La svolta:

Questa nuova generazione di modello linguistico ci ha permesso di fare due cose importanti che non erano possibili con altri modelli. Ci ha permesso di addestrare il modello senza la necessità di dati etichettati utilizzando la tecnica del riempimento degli spazi vuoti e, in secondo luogo, ci ha permesso di alimentare il modello con un'enorme quantità di dati non strutturati come libri o articoli online.

Il modello sarebbe quindi in grado di comprendere il contesto del testo e derivare l'output richiesto.

Per la prima volta nella storia, disponiamo di un modello di intelligenza artificiale in grado di apprendere da dati non strutturati e sfruttare il contenuto illimitato di Internet con prestazioni ottimali utilizzando l'elaborazione parallela su GPU.

L'ascesa del GPT:

OpenAI ha spinto ulteriormente questo approccio con GPT. GPT sta per "trasformatore generativo pre-addestrato".

  • "Generativo" significa che il modello è in grado di generare nuovo testo sulla base di un input di parole
  • "Pre-addestrato" significa che il modello è stato addestrato su un enorme set di dati non strutturati utilizzando la tecnica del riempimento degli spazi vuoti.

GPT-2 ha mostrato rapidamente i suoi limiti quando si tratta di elaborazione di sequenze di testo più lunghe, rendendolo interattivo solo in modo più accurato per input di testo brevi.

GPT-3 è stato rilasciato nel 2020, è un'evoluzione di GPT-2 ma solo 100 volte più grande! È stato addestrato utilizzando più di 175 miliardi di parametri. GPT-3 era molto meglio ed era in grado di generare saggi con stili di scrittura simili a quelli umani.

Tuttavia, c'è stata una scoperta durante la creazione di GPT-3. Infatti, mentre ingrandivano il modello, gli ingegneri di OpenAI hanno scoperto che il modello era in grado di apprendere comportamenti completamente nuovi solo fornendogli nuovi dati di addestramento. GPT-3 è stato in grado di seguire le istruzioni senza essere progettato per eseguire un'attività specifica. Ad esempio, GPT-3 può riscrivere un paragrafo con stili diversi senza essere progettato per farlo.

Questa importante scoperta ha reso possibile l'estensione di GPT-3 a nuovi domini diversi dal testo.

In realtà, la rivoluzione di GPT-3 sta nel poter essere uno strumento linguistico multiuso che può essere utilizzato in molti casi d'uso, inclusa la generazione di codice.

In effetti, l'applicazione di questo strumento linguistico sembra illimitata date le opportunità che può offrire immediatamente senza richiedere una formazione specifica.

GPT-3 può anche imparare dai suoi utenti. Impara dai diversi comandi dell'utente e si allena per rispondere meglio agli input. Questa caratteristica in realtà non faceva parte del design del modello.

Successivamente, nel novembre 2022, GPT-3.5, una versione migliorata di GPT-3 è stata rilasciata e utilizzata per creare ChatGPT di OpenAI.

Considerazioni sugli algoritmi di addestramento:

Molti dei modelli di intelligenza artificiale oggi sul mercato vengono addestrati in modo stocastico. Significa che stanno usando una tecnica chiamata discesa del gradiente. Gli algoritmi di addestramento calcolano la direzione verso la risposta corretta in base al confronto dei dati di addestramento con l'output del modello AI. In altre parole, l'intelligenza artificiale non considera il concetto di giusto e sbagliato, ma solo la vicinanza dell'essere corretti, e questo è un punto di svolta.

Come chiunque abbia utilizzato l'intelligenza artificiale prima, i modelli non sono perfetti. Puoi ottenere la maggior parte delle volte l'ottima risposta alla tua richiesta in quanto puoi ottenere quelle imprecise.

Ho dato a ChatGPT un problema abbastanza complesso da risolvere senza ulteriori dettagli:

ChatGPT è stato in grado di comprendere il problema e spiegare la soluzione nonché l'algoritmo da utilizzare per risolverlo.

Quindi volevo verificare la capacità di generazione del codice del modello, quindi ho chiesto:

Il codice Python generato dal modello è valido e la valutazione della complessità è corretta.

Tuttavia, per un problema molto più semplice che comporta semplici addizioni e sottrazioni, ChatGPT mi ha elegantemente fornito la risposta sbagliata.

Questa imprevedibilità è infatti un bene per il modello. Offre spazio per la personalizzazione e il miglioramento di GPT-3.5 per poter rispondere meglio a richieste più specifiche del contesto.

La rivoluzione con GPT è che i modelli linguistici sono diventati più legati a domini diversi e, quindi, semplificano la personalizzazione dei modelli linguistici per l'uso quotidiano in un numero enorme di casi d'uso.

Il futuro dell'IA: GPT-4:

Ci sono state molte voci sul possibile rilascio di GPT-4 quest'anno. Alcune voci suggeriscono che sia molto più grande di GPT-3; suggerendo 100 trilioni di parametri utilizzati nella fase di addestramento. Altre voci suggeriscono che sia già aperto per il beta testing. Tutte le voci non sono verificate (ad oggi), ma una cosa è certa, GPT-4 supererà l'intelligenza, la precisione e l'affidabilità di GPT-3.5.

Altre voci suggeriscono che GPT-4 sarà un modello multimodale. Ciò significa che supporterà altre modalità come immagini e suoni.

In tutti i casi, GPT-4 arriverà ad accelerare il progresso dell'IA verso un progresso esponenziale.

Riferimenti:

Vaswani, Ashish, et al. "L'attenzione è tutto ciò di cui hai bisogno." Progressi nei sistemi di elaborazione delle informazioni neurali 30 (2017).

Keita, Zoumana. "Un'introduzione all'uso di Transformers e Hugging Face." Datacamp , 1 agosto 2022, www.datacamp.com/tutorial/an-introduction-to-using-transformers-and-hugging-face.

HUANG, HAOMIAO . "La rivoluzione dell'IA generativa è iniziata: come siamo arrivati ​​qui?" Ars Technica , 30 gennaio 2023.https://arstechnica.com/gadgets/2023/01/the-generative-ai-revolution-has-begun-how-did-we-get-here/

VINCENZO, Giacomo. "Il CEO di OpenAI Sam Altman su GPT-4: 'Le persone chiedono di essere deluse e lo saranno'." The Verge , 18 gennaio 2023, www.theverge.com/23560328/openai-gpt-4-rumor-release-date-sam-altman-interview.