Plot2Code: Un Benchmark Completo per la Valutazione di Modelli Linguistici Multimodali di Grande Scala nella Generazione di Codice da Grafici Scientifici
Plot2Code: A Comprehensive Benchmark for Evaluating Multi-modal Large Language Models in Code Generation from Scientific Plots
May 13, 2024
Autori: Chengyue Wu, Yixiao Ge, Qiushan Guo, Jiahao Wang, Zhixuan Liang, Zeyu Lu, Ying Shan, Ping Luo
cs.AI
Abstract
I notevoli progressi dei Modelli Linguistici Multimodali di Grande Dimensione (MLLMs) hanno attirato una significativa attenzione grazie alle loro prestazioni superiori in contesti visivi. Tuttavia, le loro capacità nel convertire figure visive in codice eseguibile non sono state valutate in modo approfondito. Per affrontare questa lacuna, introduciamo Plot2Code, un benchmark completo di codifica visiva progettato per una valutazione equa e approfondita degli MLLMs. Abbiamo raccolto con cura 132 grafici matplotlib di alta qualità, selezionati manualmente e suddivisi in sei tipologie, provenienti da gallerie matplotlib pubblicamente disponibili. Per ciascun grafico, forniamo attentamente il codice sorgente e un'istruzione descrittiva riassunta da GPT-4. Questo approccio consente a Plot2Code di valutare estensivamente le capacità di codifica degli MLLMs attraverso varie modalità di input. Inoltre, proponiamo tre metriche di valutazione automatica, tra cui il tasso di successo del codice, il rapporto di corrispondenza testuale e la valutazione complessiva di GPT-4V, per un'analisi granulare del codice generato e delle immagini renderizzate. Invece di limitarci a giudicare semplicemente il successo o il fallimento, utilizziamo GPT-4V per effettuare una valutazione complessiva tra le immagini generate e quelle di riferimento, dimostrando coerenza con la valutazione umana. I risultati della valutazione, che includono analisi di 14 MLLMs come il proprietario GPT-4V, Gemini-Pro e l'open-source Mini-Gemini, evidenziano le sostanziali sfide poste da Plot2Code. Con Plot2Code, riveliamo che la maggior parte degli MLLMs esistenti fatica nella codifica visiva per grafici con testo denso, dipendendo fortemente dalle istruzioni testuali. Speriamo che i risultati della valutazione di Plot2Code sulla codifica visiva guidino lo sviluppo futuro degli MLLMs. Tutti i dati relativi a Plot2Code sono disponibili all'indirizzo https://huggingface.co/datasets/TencentARC/Plot2Code.
English
The remarkable progress of Multi-modal Large Language Models (MLLMs) has
attracted significant attention due to their superior performance in visual
contexts. However, their capabilities in turning visual figure to executable
code, have not been evaluated thoroughly. To address this, we introduce
Plot2Code, a comprehensive visual coding benchmark designed for a fair and
in-depth assessment of MLLMs. We carefully collect 132 manually selected
high-quality matplotlib plots across six plot types from publicly available
matplotlib galleries. For each plot, we carefully offer its source code, and an
descriptive instruction summarized by GPT-4. This approach enables Plot2Code to
extensively evaluate MLLMs' code capabilities across various input modalities.
Furthermore, we propose three automatic evaluation metrics, including code pass
rate, text-match ratio, and GPT-4V overall rating, for a fine-grained
assessment of the output code and rendered images. Instead of simply judging
pass or fail, we employ GPT-4V to make an overall judgement between the
generated and reference images, which has been shown to be consistent with
human evaluation. The evaluation results, which include analyses of 14 MLLMs
such as the proprietary GPT-4V, Gemini-Pro, and the open-sourced Mini-Gemini,
highlight the substantial challenges presented by Plot2Code. With Plot2Code, we
reveal that most existing MLLMs struggle with visual coding for text-dense
plots, heavily relying on textual instruction. We hope that the evaluation
results from Plot2Code on visual coding will guide the future development of
MLLMs. All data involved with Plot2Code are available at
https://huggingface.co/datasets/TencentARC/Plot2Code.