PaperBench: AI replica ricerca ML? Test ICML 2024

PaperBench: Evaluating AI’s Ability to Replicate AI Research

Autori: Giulio Starace, Oliver Jaffe, Dane Sherburn, James Aung, Chan Jun Shern, Leon Maksin, Rachel Dias, Evan Mays, Benjamin Kinsella, Wyatt Thompson, Johannes Heidecke, Amelia Glaese, Tejal Patwardhan

Titolo originale: PaperBench: Evaluating AI’s Ability to Replicate AI Research

Introduzione:
PaperBench è un benchmark per valutare la capacità degli agenti AI di replicare ricerche AI all’avanguardia. Gli agenti devono replicare da zero 20 articoli ICML 2024 Spotlight e Oral, comprendendo i contributi del paper, sviluppando una codebase ed eseguendo con successo gli esperimenti.

Processo di Valutazione:
Per una valutazione obiettiva, vengono sviluppate rubriche che decompongono gerarchicamente ogni compito di replica in sottocompiti più piccoli con chiari criteri di valutazione. In totale, PaperBench contiene 8.316 compiti valutabili individualmente. Le rubriche sono co-sviluppate con l’autore(i) di ogni paper ICML per accuratezza e realismo.

Valutazione Scalabile:
Per consentire una valutazione scalabile, viene sviluppato anche un giudice basato su LLM per valutare automaticamente i tentativi di replica rispetto alle rubriche e viene valutata la performance del giudice creando un benchmark separato per i giudici.

Performance dei Modelli:
Diversi modelli di frontiera sono stati valutati su PaperBench, scoprendo che l’agente testato con le migliori prestazioni, Claude 3.5 Sonnet (New) con scaffolding open-source, raggiunge un punteggio di replica medio del 21,0%. Infine, sono stati reclutati i migliori dottorandi in ML per tentare un sottoinsieme di PaperBench, scoprendo che i modelli non superano ancora la baseline umana.

Open Source:
Il codice è open-source per facilitare la ricerca futura nella comprensione delle capacità di ingegneria AI degli agenti AI.

Motivazione:
Gli agenti AI che possono replicare autonomamente i paper di ricerca ML potrebbero accelerare il progresso dell’apprendimento automatico, una prospettiva entusiasmante ma che richiede uno studio attento per garantire che le capacità dell’AI siano sviluppate in modo sicuro.

Punti chiave di PaperBench:

  • PaperBench: un benchmark di 20 paper di ricerca ML e rubriche approvate dall’autore, e un flusso di lavoro di valutazione automatizzato utilizzando giudici basati su LLM.
  • PaperBench Code-Dev: una variante più leggera del benchmark che rilassa alcuni requisiti di PaperBench per rendere l’installazione e la valutazione più accessibili alla comunità più ampia.
  • JudgeEval: un dataset di submission valutate da umani, che può essere utilizzato come valutazione ausiliaria per lo sviluppo e la valutazione di giudici automatizzati.
  • Valutazioni di modelli di frontiera su PaperBench: una valutazione delle capacità di diversi agenti AI di frontiera per condurre compiti a lungo orizzonte e ML R&D.

Metodologia:
Per ogni paper in PaperBench, all’agente in valutazione (il candidato) vengono forniti il paper e un’aggiunta di chiarimenti al paper. Il candidato deve produrre una submission che consiste in un repository che include tutto il codice necessario per riprodurre i risultati empirici del paper. Questo repository deve includere un file reproduce.sh alla sua radice, che serve come punto di ingresso per l’esecuzione di tutto il codice necessario per riprodurre i risultati del paper. Una submission riproduce con successo il paper se il suo reproduce.sh riproduce i risultati empirici riportati nel paper.

Grading (Valutazione):
Ogni paper nel benchmark ha una rubrica di accompagnamento che specifica i criteri di valutazione per la replica completa del paper. Le rubriche decompongono gerarchicamente il compito di replica in un albero di requisiti sempre più granulari. I nodi foglia sono valutati per criteri binari di superamento/fallimento, e il punteggio di un genitore è la media ponderata dei suoi figli. Il punteggio a livello di radice è preso come il Replication Score finale della submission.

Tipi di Requisiti:
Ogni nodo foglia ha uno dei tre possibili tipi di requisito, che determina come viene valutato:

  • Result Match: valuta se la submission eseguita contiene prove di replica di un particolare risultato dal paper.
  • Execution: valuta se un particolare risultato di esecuzione si è verificato durante l’esecuzione dello script reproduce.sh.
  • Code Development: valuta se il codice sorgente del candidato sembra contenere un’implementazione corretta di qualche requisito.

Regole:
PaperBench è progettato per essere agnostico agli scaffold degli agenti e ha regole per garantire un confronto equo:

  • L’agente può navigare in internet, ma non può utilizzare risorse da siti web nelle blacklist fornite per ogni paper.
  • Le risorse disponibili per l’agente, come runtime e calcolo, non sono limitate in alcun modo.
  • Gli sviluppatori devono fornire agli agenti le chiavi API per i servizi online necessari.

PaperBench Code-Dev:
Viene rilasciata una versione semplificata di PaperBench, chiamata PaperBench Code-Dev, che riduce il compito di valutazione alla sola code development, saltando la verifica che i risultati siano riprodotti.

Dataset:
PaperBench consiste di 20 paper di machine learning, elencati nella Tabella 2. Per garantire che il benchmark consista di paper che siano rappresentativi della ricerca AI contemporanea, vengono considerati tutti i paper Spotlight e Oral da ICML 2024, e ulteriormente curati per l’idoneità basata sui criteri descritti nell’Appendice B. Vengono rilasciati altri due paper dai Workshop NeurIPS 2024 come development set e mantenuto un set di held-out per uso interno.

Rubriche:
La costruzione delle rubriche per ogni paper è l’aspetto più dispendioso in termini di tempo dello sviluppo di PaperBench. Ogni rubrica è scritta in collaborazione con uno degli autori originali di ogni paper, e richiede molte settimane per paper per passare dalla lettura del paper, alla creazione iniziale, alla revisione della rubrica, all’iterazione, e alla firma finale.

Giudice LLM (SimpleJudge):
Per consentire la valutazione scalabile delle submission di PaperBench, viene sviluppato un semplice giudice basato su LLM (SimpleJudge).
Dato una submission, il giudice valuta indipendentemente ogni nodo foglia in una rubrica. Per un nodo foglia specifico, il giudice viene istruito con il Markdown del paper, le aggiunte, i requisiti precedenti nella rubrica (fratelli e antenati diretti), il requisito del nodo foglia, e i file rilevanti dalla submission.
A meno che non sia diversamente specificato, viene utilizzato o3-mini di OpenAI come modello backend per il giudice.

Valutazione dei Giudici con JudgeEval:
Viene introdotto JudgeEval, un benchmark per valutare l’accuratezza dei giudici automatizzati nel contesto di PaperBench.
Per costruire JudgeEval, vengono utilizzate repliche parziali di quattro paper dal dataset PaperBench e uno dal PaperBench development set. Queste repliche sono create sia da zero che modificando le codebase degli autori originali. Ogni tentativo di replica viene valutato manualmente rispetto alla rubrica del paper corrispondente e questi nodi foglia valutati da umani sono trattati come etichette di verità fondamentale quando si valutano i giudici automatizzati.

Esperimenti e Risultati:
Negli esperimenti, ogni agente viene eseguito in un container Docker Ubuntu 24.04 che ha accesso a una singola GPU A10. La directory di lavoro locale dell’agente contiene il paper in formato PDF e Markdown, l’aggiunta del paper, e un file di testo contenente le istruzioni (vedere Figura 13 per le istruzioni). Il container ha accesso a internet in modo che l’agente possa scaricare pacchetti e navigare nel web come necessario. Viene fornita all’agente una chiave API per HuggingFace e l’API OpenAI con $1000 caricati in modo che possa utilizzare quei servizi durante la sua esecuzione (ad esempio, se un paper coinvolge l’esecuzione di esperimenti utilizzando l’API di fine-tuning di OpenAI).
Si utilizza un semplice scaffolding dell’agente basato sull’agente base di Inspect AI, chiamato BasicAgent, e viene utilizzato nanoeval per l’orchestrazione. Lo scaffold esegue un loop di tool-use finché il modello non sceglie di terminare la sua esecuzione o viene raggiunto il limite di tempo. Viene fornito all’agente uno strumento di esecuzione di comandi bash shell, uno strumento di esecuzione di codice Python, uno strumento di browser web, e uno strumento di lettura di file impaginato per la lettura di documenti lunghi.

Limiti:
PaperBench attualmente consiste solo di 20 paper, e idealmente catturerebbe una porzione ancora più grande dell’output della comunità di ricerca ML. Tuttavia, concentrarsi sul numero di paper può essere fuorviante: poiché ogni rubrica è composta da centinaia di nodi, PaperBench valuta gli agenti su migliaia di requisiti individuali.

Per quasi tutti i paper nel benchmark, la codebase degli autori originali per il paper esiste online. Nella nostra esperienza, queste codebase spesso non replicano l’intero paper e non si conformano al formato specifico richiesto per le submission di PaperBench (ad esempio, deve esistere reproduce.sh che esegue il codice). Tuttavia, i modelli che sono pre-addestrati su grandi corpora potrebbero aver internalizzato soluzioni, risultando in performance gonfiate su questo benchmark. Mentre i modelli attuali molto probabilmente non sono influenzati da questo problema data la recente pubblicazione dei paper nel dataset, questo potrebbe diventare un problema per i modelli futuri.

Realizzazione della Rubrica:
Produrre queste rubriche dettagliate è estremamente laborioso, ognuna richiede a un esperto umano diversi giorni interi per essere creata. Richiede che il creatore della rubrica comprenda profondamente il paper, e ogni rubrica deve essere scritta attentamente per evitare requisiti inaccurati per garantire una valutazione accurata. È risultato difficile addestrare altri a creare rubriche al livello di qualità desiderato. Questo pone una sfida per altri per replicare il processo intrapreso per creare il dataset. Lavori futuri potrebbero desiderare di esaminare approcci più semplificati alla generazione di rubriche, come con l’assistenza di modelli.

Performance del Giudice Basato su LLM:
Nonostante il giudice dimostri una buona performance in JudgeEval, non è accurato come un esperto umano che valuta submission. Inoltre, il giudice non è deterministico a causa dell’uso di chiamate di modelli non deterministici.

Conclusioni:
PaperBench offre un test impegnativo e realistico per misurare l’autonomia dell’AI nella ricerca ML, aprendo la strada a sistemi AI capaci di guidare la propria avanzata nell’apprendimento automatico.

Ti potrebbe anche interessare

Data Science: Infrastrutture Scalabili con Docker e Jupyter

Docker per la Data Science: Creazione di Infrastrutture Scalabili con...

IA Generativa Responsabile: Guida per Leader e Product Manager

Uso Responsabile dell'IA Generativa: Guida per Product Manager e Leader...

IA per PMI: Guida Efficace all’Implementazione

INTELLIGENZA ARTIFICIALE E DIGITALIZZAZIONE NELLE PMI: UN QUADRO PER L'IMPLEMENTAZIONE...