ARC-AGI è un acronimo che sta per Abstraction and Reasoning Corpus for Artificial General Intelligence.
Le matrici ARC-AGI sono un puzzle da risolvere. Il puzzle è fatto così: ci sono tre coppie di griglie di pixel input-output. Poi c’è una quarta coppia con l’input e una matrice vuota. Chi prova a risolvere il test deve indovinare l’output corretto, desumendo le regole dalle prime tre coppie.
Si tratta di un esercizio di astrazione e ragionamento: le persone o i sistemi che affrontano questi puzzle devono comprendere la regola che trasforma l’input nell’output senza indicazioni testuali, partendo da pochi esempi.
Questo tipo di prova non punta sulla forza bruta o sui grandi numeri (tipici del deep learning tradizionale) ma sulla capacità di generalizzare a partire da pochi dati.
Umani e macchine a confronto
Indice dei contenuti
In linea teorica, le matrici ARC-AGI dovrebbero essere facili da risolvere per degli umani, molto difficili per le macchine. Queste sono le conoscenze che occorre avere per risolvere questi problemi:
- Oggettività: gli oggetti persistono e non possono apparire o scomparire senza motivo. Gli oggetti possono interagire o meno a seconda delle circostanze.
- Orientamento allo scopo: gli oggetti possono essere animati o inanimati. Alcuni oggetti hanno una loro agentività: hanno intenzioni e perseguono obiettivi.
- Numeri e conteggio: gli oggetti possono essere contati o ordinati in base alla loro forma, aspetto o movimento utilizzando la matematica di base come addizione, sottrazione e confronto.
- Geometria e topologia di base: gli oggetti possono essere forme come rettangoli, triangoli e cerchi che possono essere specchiati, ruotati, traslati, deformati, combinati, ripetuti, ecc. È possibile rilevare differenze nelle distanze.
Le matrici ARC-AGI cercano di “misurare” ciò che rientra nell’ambito di queste consocenze. Il tentativo è di evitare di creare test che possano essre influenzati da conoscenze acquisite o culturali come la lingua. Bisogna sempre ricordare, però, che ci si può allenare a questo tipo di test: anche saperli superare è una conoscenza che si può acquisire culturalmente,
Un esempio ARC-AGI
Nel test d’esempio dell’ARC-AGI del 20 dicembre 2024 ci sono questi tre input.
Input 1 (13×17)
È una griglia di quadrati neri (13×17) all’interno della quale troviamo diverse figure colorate distribuite in vari punti: una croce gialla, un blocco rosso in alto a destra, un gruppo verde, uno azzurro (simile a una croce ma con un “buco” centrale) e, nella parte bassa, una vasta area blu quadrata (7×7) che al suo interno presenta quattro quadratini di vari colori. L’output corrispondente è una griglia 7×7 che contiene una ricomposizione delle figure colorate dell’input, ma senza includere il grande quadrato blu.
Notando che i quadratini colorati presenti all’interno del quadrato blu riprendono gli stessi colori di alcune figure sparse nell’input, si può ipotizzare che essi fungano da “mappa” per selezionare e riposizionare nell’output le figure corrispondenti. In altre parole, i quadratini colorati nel quadrato blu determinano quali figure andranno nell’output e in quale posizione.
Input 2 (17×17)
È una griglia di quadrati neri all’interno dei quali vediamo di nuovo un quadrato blu (7×7) contenente quattro quadratini colorati, e diverse figure. Le figure sono cinque in totale. L’output è sempre una griglia 7×7 che mostra solo quattro delle cinque figure. Ancora una volta, l’associazione tra i colori dei quadratini nel quadrato blu e le figure presenti nell’input permette di capire quali forme selezionare e dove posizionarle nell’output. Il quadrato blu funziona come una “chiave di lettura” per l’output, indicando non solo dove collocare le figure nell’output ma anche quali figure riprodurre.
Input 3 (17×18)
In questo caso le figure colorate presenti sono sei, più il solito quadrato blu (7×7) con quattro quadratini colorati al suo interno. L’output mostra una griglia 7×7 con quattro delle sei figure. Il pattern è ormai chiaro: i quattro quadratini colorati nel quadrato blu determinano quali quattro figure tra le sei totali vanno incluse nell’output e in quali posizioni specifiche. L’ordine dei quadratini colorati nel quadrato blu (ad esempio da sinistra a destra, dall’alto verso il basso) stabilisce anche l’ordine con cui le figure vengono posizionate nella griglia 7×7 finale.
La regola individuata
In tutti e tre gli esempi, il quadrato blu (7×7) presente nell’input contiene quattro quadratini di colori differenti, ciascuno dei quali corrisponde a una figura colorata dispersa nel resto della griglia. Quei quattro quadratini non solo selezionano le figure da estrarre, ma ne indicano anche la posizione nell’output finale. L’output è una griglia 7×7 in cui compaiono le quattro figure selezionate, “ingrandite” o comunque ricollocate, esattamente nella stessa posizione, definita dalla corrispondenza con i quattro quadratini colorati iniziali.
La soluzione
Adesso si presenta un quarto input, quello senza output perché lo dobbiamo decidere noi per risolvere il problema.
L’input numero quattro è una griglia 17×16 con il solito quadrato blu (7×7) che, a sua volta, contiene quattro quadratini colorati: rosso, verde, fucsia e azzurro, disposti nell’ordine da sinistra a destra e dall’alto verso il basso. Analogamente ai tre casi precedenti, queste quattro tinte corrispondono a quattro figure presenti nell’input.
Quindi, l’output dovrà essere una griglia 7×7.
- Il quadratino rosso nel quadrato blu corrisponde alla figura rossa nell’input, che andrà posizionata in alto a sinistra nell’output 7×7.
- Il quadratino verde corrisponde alla figura verde, che verrà collocata in alto a destra nell’output.
- Il quadratino fucsia corrisponde alla figura fucsia, da posizionare in basso a destra.
- Il quadratino azzurro corrisponde alla figura azzurra, da mettere in basso a sinistra (o comunque nella posizione coerente con l’ordine logico seguito negli esempi precedenti).
In questo modo, l’output 7×7 finale mostrerà i quattro cluster di blocchi corrispondenti a questi colori, riprodotti in una disposizione pulita, che riflette l’ordine stabilito dai quadratini interni al quadrato blu dell’input.
Ecco la soluzione del puzzle, che conferma la regola dedotta e offre un esempio di come l’ARC-AGI richieda astrazione, deduzione e comprensione profonda dello schema di trasformazione.
Perché per una macchina questo è un problema difficile?
Per una macchina sono problemi molto complessi perché richiedono di mettere insieme competenze spaziali, logiche e matematiche, astraendo e facendo deduzioni. Addestrate su set di dati pubblici, alle macchine viene poi sottoposta una serie di problemi analoghi che non avevano mai visto prima. Quindi, in qualche modo “imparano” come si risolvono a partire dai dati pubblici e poi provano a risolvere il nuovo problema.
Cosa c’entra o3 di ChatGPT?
Il 20 dicembre 2024 la OpenAI ha mostrato i risultati del suo nuovo modello ChatGPT, o3. Non ancora disponibile al pubblico, o3 ha migliorato notevolmente le performance di soluzione di problemi ARC-AGI finora registrate da parte di grandi modelli linguistici.
Questi sono i risultati ottenuti dai vari modelli della OpenAI nel test ARC-AGI in ordine di tempo:
- GPT-2 (2019): 0% (significa che non ne risolveva nessuno)
- GPT-3 (2020): 0%
- GPT-4 (2023): 2%
- GPT-4o (2024): 5%
- o1-preview (2024): 21%
- o1 high (2024): 32%
- o1 Pro (2024): ~50%
- o3 tuned low (2024): 76%
- o3 tuned high (2024): 87%
Nel contesto di questa sfida c’è un limite alle risorse computazionali che si possono impiegare, pari a 10.000 dollari di costo stimato del calcolo da parte della macchina. Utilizzando questa quantità di risorse (tuned low) o3 ha dato il 75,7% di risposte corrette. In un’altra configurazione di prova, in cui sono stati investiti molti più calcoli (tuned high, circa 172 volte il quantitativo di risorse rispetto all’esperimento standard), o3 è arrivato all’87,5% di successo.
Lascia un commento