Intelligenza generale e GPT-3 di OpenAI: nell’ambito della inferenza testuale, dunque, le tendenze principali spingono per architetture neurali indipendenti dai task, in grado di fattorizzare delle fasi non supervisionate che mirano alla acquisizione di competenze generali sul linguaggio in grado di ben rappresentare i prerequisiti di molte decisioni specifiche. È questa osservazione, cioè la forte capacità di generalizzazione verso compiti diversi, che rende alcune architetture neurali molto promettenti, non solo come strumenti tecnologici ad alte prestazioni, ma come paradigmi interessanti verso forme di intelligenza generali e non opportunistiche verso uno o pochi compiti. GPT-3 è l’ultimo modello di questa famiglia di architetture task-agnostic che esplorano la capacità di applicare processi non supervisionati di language learning come approccio generale al problem solving. L’obbiettivo di questi approcci è rendere il sistema risultante in grado di risolvere compiti specifici anche ove significativamente carente di esempi di tali compiti.
Il modello OpenAI di GPT-3
GPT-3 spinge alle estreme conseguenze l’idea che un pre-training più ambizioso possa rendere inutile o assolutamente trascurabile il peso e le responsabilità della fase di fine-tuning sulla qualità delle decisioni finali. Di fatto ciò prospetta la possibilità di un design completamente unsupervised per la creazione di sistemi di NLP con alte prestazioni anche in compiti specifici. Questo in fondo coincide con il Sacro Graal della ricerca in AI ed è per questo che appare di particolare rilievo per l’intera comunità e per gli interessi dell’industria. Quali sono gli aspetti di GPT-3 di OpenAI che perseguono questo obiettivo? In primo luogo, la scalabilità del language model L obbiettivo del pre-training: L qui viene ideato come modello unificato delle competenze linguistiche e indipendente dai task, quindi aperto a una serie illimitata di inferenze e decisioni possibili. Ma come racchiudere un numero illimitato di task potenziali, per cui le precedenti tecnologie richiedono un numero enorme di esempi, in un solo modello? La direzione esplorata dagli autori di GPT-3 è l’aumento della dimensione del modello. Il modello Open AI di GPT-3 è costituito da un numero enorme di parametri. Il primo modello GPT aveva circa 110 milioni di parametri, seguito poi da BERT con circa 340 milioni. In seguito GPT2 sale a 1.5 miliardi (un crescita di un fattore 15 rispetto a GPT e 4 rispetto a BERT). Il numero di parametri delle diverse varianti del modello GPT-3 è riportato nella Tabella seguente (da Brown et al., 2020).
Come si vede, il modello di riferimento, denominato semplicemente “GPT-3” dagli autori, ha 175 miliardi di parametri e ha affrontato con successo un numero ampio di task, almeno 9 gruppi di un numero variabile di task tra 1 e 5, discussi nel paper di riferimento (Brown et al., 2020). Nel lavoro un dato interessante è il confronto tra condizioni diverse di specializzazione al task (cioè di fine-tuning) in cui GPT-3 può essere applicato.
Anzitutto la relazione tra output atteso e input viene studiata in modo condizionale rispetto al task, e in tal senso vengono forniti gli esempi. In un task di traduzione automatica l’esempio da tradurre dall’inglese EngSent viene fornito in ingresso come esempio tradotto in Francese FrenchSent, condizionato dalla definizione linguistica del task stesso “Translate to English”. Il risultato è una tripla di esempio del tipo
(“Translate to French”, EngSent, FrenchSent)
Analogamente in un task di question answering il documento sorgente Doc contenente la risposta Answer alla domanda Q darebbe luogo alla tripla:
(“Answer the question”, Doc+Q, Answer)
Da notare che questo meccanismo corrisponde alla possibilità di condizionare la risposta nei due casi (FrenchSent o Answer) alle sequenze precedenti. La risposta, quindi, può essere fornita da un language model generalista (cioè l’esito di un pre-training neutro rispetto ai task) in modo analogo nei due casi, cioè massimizzando la verosimiglianza con le sequenze di apprendimento. Questo modello di decisione concilia la natura sequenziale del linguaggio e consente di mappare il problema del language modeling in un processo di reasoning che corrisponde a una decisione. La domanda a questo punto è: possiamo fare a meno di esempi espliciti di coppie (input, output) ed esprimere il generico task sempre condizionandolo a una frase che lo definisca?
Gli esperimenti sul language model L
Negli esperimenti in cui viene valutata la capacità di GPT-3 di OpenAI di affrontare un task specifico, gli autori esplorano la possibilità di misurare la prestazione del language model L in condizioni diverse di impoverimento. Si definisce Zero-shot learning il processo in cui nessuna coppia di input-output viene usata per eseguire back propagation in addestramento: non c’è quindi alcun adattamento dei parametri della rete in fine-tuning. L’esito della risposta è puramente determinato dal condizionamento della definzione del task, ad esempio “Translate to French”, e dall’input, cioè EngSent, sulla sequenza più probabile FrenchSent, cioè in termini probabilistici:
FrenchSent = argmaxSentence p( Sentence | EngSent, “Translate to French”).
Nella condizione di One-shot learning la tripla di esempio viene fornita insieme a un solo esempio positivo del task, come (“Translate to French”, “Good morning”, “Bon jour”). Infine, nel caso di Few-shot learning sono resi disponibili solo pochi esempi di un certo task (tra 20 e 100). Già OpenAI GPT-2 era stato sperimentato in assenza di un fine-tuning completo, incarnando da subito le prospettive dello Zero-shot learning. L’idea qui perseguita è che un language model L, addestrato ampiamente in modo unsupervised, sia già competitivo anche in condizione agnostica relativamente ad un task.
GPT-3 è stato usato in task specifici di cui il text completion fa parte: nella figura sotto un esempio di Task description “In a shocking finding, scientists….” che è il prompt del sistema e fa da trigger della composizione automatica (Model completion) riportata “The scientistis named …”.
I risultati, pur oggetto di manipolazioni e ripuliture a latere, sono certamente interessanti, per la chiarezza espositiva, la qualità della argomentazione e la consistenza semantica generale.
Il fatto che molti di questi risultati siano ampiamente replicabili in task in cui non vi siano esempi, vista la qualità raggiunta da sistemi di Zero-shot learning, è impressionante. La tesi perseguita dalla ricerca su GPT-3 è che un language model sufficientemente capace (cioè dotato di un numero adeguato di parametri) sia in grado di mostrare capacità significative legate all’apprendimento di concetti e al ragionamento su di essi. L’idea che un apprendimento di task multipli sia sostenuto linguisticamente è molto interessante come strada perseguibile per la acquisizione di conoscenza in molte aree dell’AI: ad esempio, nella visione in cui i modelli linguistici per la spiegazione del contenuto delle immagini siano molto utili a processi di documentazione testuale delle informazioni visuali.
Immagini prodotte da GPT-3 inserendo i termini “lumaca” e “arpa”
Riflessioni su GPT-3 di OpenAI
La discussione sin qui ci dice che GPT-3 di OpenAI non rimane un mero esperimento su larga scala riguardante una certa tecnica algoritmica. È in verità il risultato di un approccio radicalmente empirico all’intelligenza e fondato sulla centralità del linguaggio. Porta quindi alla nostra attenzione alcuni elementi su cui vale la pena riflettere.
La direzione di ricerca incarnata da GPT-3 suggerisce che l’inferenza e il ragionamento possono essere visti come processi di ricerca guidati da metriche quantitative in opposizione ad approcci basati su tecniche logiche di knowledge representation. L’assunto è che le strutture linguistiche acquisite da un language model, cioè il senso delle parole come ricostruito dal contesto frasale, la causalità introdotta da forme verbali e le argomentazioni di un discorso, possano essere sufficienti alla automazione di gran parte dei processi di ragionamento necessari ai sistemi intelligenti. Il livello di astrazione delle espressioni linguistiche e la copertura che il linguaggio garantisce a molti tipi di competenze, anche quelle riguardanti teorie specifiche (come la aritmetica elementare su cui GPT-3 è stato sperimentato (Brown et al., 2020), è una forma di rappresentazione straordinariamente espressiva e quindi quasi autosufficiente per automatizzare molte forme di ragionamento.
L’ampiezza dei domini e dei task sperimentati in (Brown et al., 2020) è certamente una conferma della flessibilità e della ampia applicabilità di questo approccio.
La capacità di GPT-3 (in fondo, un autoencoder) di affrontare task diversi e trarre dalla possibilità di esprimerli linguisticamente e senza un numero grande di esempi (nelle modalità Zero o Few-Shot Learning) comportamenti molto accurati è confermata da misure prestazionali su molti ed eterogenei task. GPT-3 sembra dunque incarnare una intelligenza “in azione” straordinariamente flessibile. Gli stessi autori però non nascondono alcuni limiti della attuale tecnologia che hanno ispirato diverse critiche[1] e ci consentono di esprimere alcune ragionevoli riflessioni.
L’attuale dimensione dei modelli di GPT-3 rende la loro applicabilità in applicazioni reali piuttosto limitata. In sistemi custom, come ad esempio l’automazione della interazione robotica, la dimensione e la manutenibilità dei modelli di GPT-3 diventano inapplicabili a robot, o pool di robot, che esprimono soggettività diverse e quindi modelli indipendenti. La difficoltà di cablare una conoscenza operativa che non dipende da fatti generali del mondo ma dallo stato e dalle dinamiche di un contesto da cui le decisioni dipendono, crucialmente apre certamente una linea di ricerca in cui si esplora il modo di integrare conoscenza e percezione diretta del mondo (ad esempio i benefici di sistemi di visione) nella inferenza del language model.
Il limitato livello di competenze semantiche raggiunto dalle versioni più avanzate del sistema in alcuni meccanismi di ragionamento e task specifici ha diverse cause inerenti. La prima è la assenza di scopo per cui il language model utilizzato guarda all’intero testo in modo unforme. A livello pragmatico sappiamo che le decisioni diverse sono ispirate da obbiettivi, e quindi parti del testo, differenti. Nonostante siano tutte egualmente possibili, le decisioni possono essere molto diversamente appropriate a fronte di situazioni e target diversi del processo di ragionamento. Il livello di condizionamento introdotto dalla descrizione linguistica di un task (come “Translate to French”) non è sufficiente ad imporre tali preferenze come vincoli al language model sottostante, che rimane generico. Da qui una certa genericità e inconsistenza in alcune decisioni del sistema. Un problema ancora più critico è la generale difficoltà nell’interpretare la risposta del sistema e le ragioni usate per produrla. Questo problema trae origine negli stessi limiti di interpretabilità delle reti neurali profonde, che qui vengono enfatizzati dalla relativa generalità del language model sottostante. Le relazioni causali tra le scelte del sistema e i fenomeni testuali si complicano all’aumentare del contesto disponibile ed i meccanismi di attenzione sfruttati per generalizzare i vari task sono spesso opachi e di difficile comprensione: quali inferenze in sequenza agiscano integrando risoluzioni delle ambiguità delle parole, interpretazione delle predicazioni di una frase e meccanismi di argomentazione sono spesso non chiare per l’interlocutore umano. Infine, l’apprendimento da dati testuali amplifica l’influenza dei loro contenuti sul comportamento del sistema. Il language model indotto contiene indirettamente anche un inerente bias “semantico” verso tali contenuti. Se ragionare significa concatenare fenomeni semantici legati al testo, le decisioni finiscono per essere fortemente dipendenti dal campione testuale usato per l’apprendimento.
Il contenuto semantico dei testi usati nel pre-training rischia di polarizzare i ragionamenti e non solo le conoscenze di base in modo cruciale. La creazione dei campioni di testo e la analisi dei fenomeni di bias (ad es. politico, sociale) influenza in modo così determinante e diretto la qualità della conoscenza e delle decisioni, da costituire di per sé una caratteristica da studiare attentamente nel paradigma GPT-3 verso l’Intelligenza Generale.
GPT-3 di OpenAI e le applicazioni verticali
Da queste critiche gli autori non sfuggono e molte evidenze sperimentali sono riportate ad analizzare i limiti e le debolezze della tecnologia. Non è un caso che tra i data set usati dagli autori, ci sia anche il Winograd Scheme Challange (WSC), introdotto in (Levesque et al., 2012) come rafforzamento delle tecniche implicazione testuale in grado di mettere maggiormente a fuoco i fenomeni di ragionamento, oggetto del test di Turing[2]. Il WSC è un dataset di benchmark per lo studio del ragionamento di senso comune (commonsense reasoning) costituito da un insieme di 273 problemi per la risoluzione di problemi di coreferenza del pronome: esso sono stati ideati perché complessi da trattare in modelli statistici dipendenti dalle parole in gioco. Un esempio di un caso di test consiste di un coppia come:
- The tree fell down and crashed through the roof of my house. Now, I have to get it removed. Risposta: tree / roof
- The tree fell down and crashed through the roof of my house. Now, I have to get it repaired. Risposta: tree / roof
È chiaro come la decisione non dipenda statisticamente dal comportamento di parole quali tree o roof, repair o remove, ma dalla conseguenze logiche delle azioni come riparare o rimuovere sugli oggetti del contesto.
Le prestazioni “umane” sul WSC, misurate su di utenti comuni (non ingegneri della conoscenza), è calcolata intorno al 92% e la prestazione del migliore dei sistemi neurali “dedicati” (cioè agenti attraverso fine-tuning sul task) è circa 90,1% (Sakaguchi et al., 2019). Le prestazioni di GPT-3 su Winograd sono dell’88,6% che, considerando l’utilizzo di pochissimi esempi (meno di 50), è sorprendente, perché in questi task generalisti e complessi e in assenza di fine tuning esso non sembra distare molto dalle prestazioni medie degli esseri umani.
Che GPT-3 di OpenAI possa essere considerato o no un sistema già pronto per applicazioni verticali (fatte di uno o più task specifici) è un problema che dipende proprio dal tipo di applicazione. Nei casi in cui sia necessario solo fornire il supporto ad una utenza esperta, ad esempio nella produzione di bozze di articoli o documenti da raffinare da parte dell’analista di turno o la generazione automatica di un pre-lavorato nell’ambito della traduzione tra lingue diverse, il sistema è di fatto già utilizzabile in modo molto vantaggioso perché abbatte enormemente i costi della produzione di documentazione. Meno certa è la applicabilità in processi in cui il sistema debba agire in autonomia, e dalle sue decisioni debba dipendere un sistema sottostante, ad esempio nei casi di interazione robotica già citati. Probabilmente in tali contesti la applicabilità di forme di fine-tuning più semplici da ingegnerizzare (con esempi tratti da simulazioni o operatività concrete, registrazioni di sessioni reali) è certamente non in contrasto con lo spirito di queste tecnologie, e gli scenari di Few Shot learning sono altrettanto promettenti. Di certo l’AI ha necessità di applicazioni reali, che possono costituire ragione sufficienti al sostegno attivo alla ricerca ancora necessaria.
Conclusioni
Si dice che anche Tycho Brahe, astronomo danese, i cui studi costituirono in modo decisivo all’affermarsi della teoria copernicana, che scardina le credenze medievali sulla centralità della Terra inaugurando la moderna astronomia, fosse l’astrologo di corte a Praga per l’imperatore Rodolfo II, e non senza invidia tra molti dei suoi colleghi. Se la affermazione del progresso scientifico passa anche attraverso fasi intermedie in cui le verità e i saperi incompleti possono essere usati per finanziare e rafforzare il progresso di studi più esaustivi, possiamo perdonare a GPT-3 di OpenAI la sua natura imperfetta e guardare meglio ai percorsi illuminati da tali sistemi. GPT-3 ci richiama alla centralità del linguaggio nella genesi e uso della conoscenza sottolineandone l’utilità nello sviluppo dei sistemi odierni. Come passaggio intermedio, apre dunque prospettive interessanti non solo al finanziamento della ricerca verso l’AI generale, ma fa luce su alcuni fattori, il linguaggio, il ruolo dell’inferenza incerta (le probabilità di un language model) e la ottimizzazione matematica di modelli quantitativi del significato: essi amplificano la nostra capacità di sfruttare oggi, e comprendere meglio per il domani, i processi dell’intelligenza umana.
Note
- della conoscenza interiorizzata da GPT-3 in task di Text Completion è discussa in https://cs.nyu.edu/faculty/davise/papers/GPT3CompleteTests.html. Questo test è argomentato in https://www.technologyreview.com/2020/08/22/1007539/gpt3-openai-language-generator-artificial-intelligence-ai-opinion/ ↑
- La chiusura del paper di introduzione di WSC corrisponde a: “So for our purposes, we can agree with Turing that getting the behaviour right is the primary concern. And we further agree that English comprehension in the broadest sense is an excellent indicator. Where we have a slight disagreement with Turing is whether a conversation in English is the right vehicle. Our WS challenge does not allow a subject to hide behind a smokescreen of verbal tricks, playfulness, or canned responses. Assuming a subject is willing to take a WS test at all, much will be learned quite unambiguously about the subject in a few minutes. What we have proposed here is certainly less demanding than an intelligent conversation about sonnets (say), as imagined by Turing; it does, however, offer a test challenge that is less subject to abuse.” (Levesque et al., 2012). ↑
Riferimenti
(Baroni & Lenci, 2009). Baroni Marco, Lenci Alessandro, One Distributional Memory, Many Semantic Spaces, Proceedings of the Workshop on Geometrical Models of Natural Language Semantics, 2009, Athens, Greece, Association for Computational Linguistics, 2009.
(Brown et al., 2020), Brown, Tom B.; Mann, Benjamin; Ryder, Nick; Subbiah, Melanie; Kaplan, Jared; Dhariwal, Prafulla; Neelakantan, Arvind; Shyam, Pranav; Sastry, Girish; Askell, Amanda; Agarwal, Sandhini; Herbert-Voss, Ariel; Krueger, Gretchen; Henighan, Tom; Child, Rewon; Ramesh, Aditya; Ziegler, Daniel M.; Wu, Jeffrey; Winter, Clemens; Hesse, Christopher Chen, Mark; Sigler, Eric; Litwin, Mateusz; Gray, Scott; Chess, Benjamin; Clark, Jack; Berner, Christopher; McCandlish, Sam; Radford, Alec; Sutskever, Ilya; Amodei, Dario, Language Models are Few-Shot Learners, arXiv:2005.14165, May 2020
(Charniak, 1993), Eugene Charniak, Statistical Language Learning, Cambridge: MIT Press, 1993.
(Chomsky, 1997), Noam Chomsky, Aspects of the Theory of Syntax, MIT Press, 1965.
(Devlin et al., 2018) Jacob Devlin, Ming-Wei Chang, Lee, Kenton, Kristina Toutanova, BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding, arXiv:1810.04805, October 2018, published also in Proceedings of NAACL-HLT 2019.
(Fillmore & Baker, 2001), Fillmore, Charles J., and Collin F. Baker. “Frame semantics for text understanding.” Proceedings of WordNet and Other Lexical Resources Workshop, NAACL. 2001
(Fillmore, 1976), Charles J Fillmore. 1976. Frame semantics and the nature of language. Annals of the New York Academy of Sciences: Conference on the Origin and Development of Language and Speech, 280:20-32
(Jelinek, 1997), Fred Jelinek, (1997). Statistical Methods for Speech Recognition. Cambridge, Mass.: MIT Press. ISBN 0-262-10066-5.
(Jurafsky & Martin, 2011) Jurafsky D., Martin, J. H. “Speech and language processing: an introduction to natural language processing, computational linguistics, and speech recognition“, Prentice-Hall, 2000.
(Levesque et al., 2012), Levesque, H., Davis, E., and Morgenstern, L. The winograd schema challenge. In Thirteenth International Conference on the Principles of Knowledge Representation and Reasoning, 2012.
(Manning & Schutze, 1999), Manning, Christopher D., Schütze, Hinrich, Foundations of Statistical Natural Language Processing MIT Press, Cambridge, Massachusetts, 1999.
(Mikolov et al, 2013). Distributed representations of words and phrases and their compositionality, T Mikolov, I Sutskever, K Chen, GS Corrado, J Dean, Neural information processing systems, 2013.
(Sakaguchi et al., 2020), Keisuke Sakaguchi, Ronan Le Bras, Chandra Bhagavatula, and Yejin Choi. Winogrande: An adversarial winograd schema challenge at scale, The Thirty-Fourth AAAI Conference on Artificial Intelligence (AAAI-20) 2020..
(Schutze, 1992), Schutze, Hinrich. 1992a. Context space. In Robert Goldman et al, editors, Working Notes of the AAAI Fall Symposium on Probabilistic Approaches to Natural Language, pages 113-120, AAAI Press, Menlo Park, CA.
(Vaswani et al., 2017). Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, Ł., and Polosukhin, I. Attention is all you need. In Advances in Neural Information Processing Systems, pp. 5998–6008, 2017.
Data di prima pubblicazione: 5 marzo 2021