CodePercept: Code-Grounded Visual STEM Perception for MLLMs

Il paper "CodePercept" identifica le carenze percettive come il principale limite del ragionamento visivo STEM negli MLLM e propone un nuovo paradigma che utilizza l'esecuzione di codice per migliorare la percezione, supportato dal dataset su larga scala ICC-1M e dalla nuova benchmark STEM2Code-Eval.

Tongkun Guan, Zhibo Yang, Jianqiang Wan, Mingkun Yang, Zhengtao Guo, Zijian Hu, Ruilin Luo, Ruize Chen, Songtao Jiang, Peng Wang, Wei Shen, Junyang Lin, Xiaokang Yang

Pubblicato 2026-03-12
📖 4 min di lettura☕ Lettura da pausa caffè

Each language version is independently generated for its own context, not a direct translation.

Immagina di avere un super-robot (chiamato MLLM, o Modello Linguistico Multimodale Grande) che è bravissimo a risolvere problemi di matematica, fisica e ingegneria. Tuttavia, quando gli mostri un disegno complesso o un grafico scientifico, questo robot spesso sbaglia.

La domanda fondamentale che gli autori di questo studio si sono posti è: "Perché sbaglia? È perché non sa pensare bene (ragionamento) o perché non sa vedere bene (percezione)?"

Ecco la spiegazione semplice di come hanno scoperto la risposta e cosa hanno fatto per risolvere il problema.

1. La Scoperta: Il problema non è il cervello, ma gli occhi

Gli scienziati hanno fatto un esperimento curioso. Hanno preso il robot e hanno provato a potenziare due cose separatamente:

  • Il "Cervello" (Ragionamento): Gli hanno dato più capacità di logica.
  • Gli "Occhi" (Percezione): Gli hanno insegnato a descrivere le immagini con molta più precisione.

Il risultato sorprendente? Potenziare il cervello non ha aiutato molto. Ma potenziare la capacità di "vedere" e descrivere l'immagine ha fatto saltare le prestazioni in modo incredibile.
La metafora: È come dare a un architetto un libro di matematica più avanzato (ragionamento) quando il suo problema è che non riesce a misurare bene i muri con il metro (percezione). Se non sai misurare, non importa quanto sia bravo a calcolare: l'edificio crollerà.

2. La Soluzione: Insegnare al robot a "disegnare con il codice"

Il team ha capito che le parole (come "cerchio rosso" o "linea tratteggiata") sono troppo vaghe e ambigue per descrivere la scienza. Se dici "disegna un triangolo", il robot potrebbe sbagliare le dimensioni o gli angoli.

La loro idea geniale è stata: "Non chiediamo al robot di descrivere l'immagine con le parole, ma di riscriverla usando il codice di programmazione (Python)."

  • L'analogia: Immagina di dover ricostruire un castello di Lego.
    • Se ti dico a parole: "Metti un mattoncino rosso qui e uno blu là", potresti sbagliare.
    • Se ti do un programma che dice esattamente: "Prendi il mattoncino rosso numero 42, posizionalo a coordinate X=5, Y=10", non c'è errore possibile.
    • Il codice è la "verità assoluta". Se il codice funziona e disegna l'immagine perfetta, allora il robot ha capito perfettamente l'immagine.

3. Cosa hanno creato: Due grandi "palestre" per il robot

Per insegnare a questi robot a vedere meglio, hanno costruito due cose principali:

A. Il "Gym" (ICC-1M): Un milione di esercizi

Hanno creato un'enorme libreria di 1 milione di immagini scientifiche, ma con un trucco: ogni immagine è accompagnata non solo da una descrizione, ma dal codice esatto che l'ha generata.

  • Come funziona: Invece di dire al robot "guarda questa foto di un grafico", gli mostrano la foto e gli dicono: "Scrivi il codice per ridisegnare questa foto". Se il codice è corretto, il robot ha imparato a vedere i dettagli (numeri, posizioni, relazioni) che prima ignorava.

B. Il "Test Finale" (STEM2Code-Eval): L'esame pratico

Prima, si valutava se un robot era bravo guardando se risolveva il problema di matematica. Ma se sbaglia, non sai se è perché non ha visto il grafico o perché non sa fare l'equazione.
Ora, il test è diverso: "Ridisegna l'immagine originale usando il codice."

  • Se il robot scrive un codice che, quando eseguito, produce un'immagine identica all'originale, allora ha passato l'esame di percezione. È un test oggettivo e verificabile: o il codice funziona e l'immagine è uguale, oppure no.

4. Il Risultato: Un robot che "vede" davvero

Grazie a questo metodo, i robot (in particolare la famiglia Qwen) sono diventati molto più bravi a:

  • Contare gli oggetti in un'immagine complessa senza sbagliare.
  • Capire le relazioni spaziali (chi è sopra chi, chi è collegato a chi).
  • Risolvere problemi di matematica visiva perché ora "vedono" i dati correttamente prima di iniziare a ragionare.

In sintesi

Gli autori hanno detto: "Smettiamola di cercare di rendere i robot più intelligenti nel ragionare, e iniziamo a renderli più precisi nel vedere."
Lo hanno fatto insegnando loro a parlare la lingua della precisione: il codice. È come se avessimo dato al robot un metro laser invece di una stima a occhio nudo, permettendogli di vedere il mondo scientifico con una chiarezza mai vista prima.