Text2Chart31: Instruction Tuning for Chart Generation with Automatic Feedback

Fatemeh Pesaran Zadeh, Juyeon Kim, Jin-Hwa Kim, Gunhee Kim
10/5/2024
cs.LGcs.AI

Official code: fatemehpesaran310/Text2Chart31 (26 stars, MIT, last commit 2024-10-15).

Abstract

Large language models (LLMs) have demonstrated strong capabilities across various language tasks, notably through instruction-tuning methods. However, LLMs face challenges in visualizing complex, real-world data through charts and plots. Firstly, existing datasets rarely cover a full range of chart types, such as 3D, volumetric, and gridded charts. Secondly, supervised fine-tuning methods do not fully leverage the intricate relationships within rich datasets, including text, code, and figures. To address these challenges, we propose a hierarchical pipeline and a new dataset for chart generation. Our dataset, Text2Chart31, includes 31 unique plot types referring to the Matplotlib library, with 11.1K tuples of descriptions, code, data tables, and plots. Moreover, we introduce a reinforcement learning-based instruction tuning technique for chart generation tasks without requiring human feedback. Our experiments show that this approach significantly enhances the model performance, enabling smaller models to outperform larger open-source models and be comparable to state-of-the-art proprietary models in data visualization tasks. We make the code and dataset available at https://github.com/fatemehpesaran310/Text2Chart31.

View on arXivView PDF

Code Implementations(1)

MIT

Official PyTorch implementation of "Text2Chart31: Instruction Tuning for Chart Generation with Automatic Feedback" (EMNLP 2024 Main Oral)

261PythonJul 9, 20242 years agoMIT
chartchart-generationlarge-language-modelsreinforcement-learningvisualization

Cite this paper

@article{zadeh2024textchart,
  title  = {Text2Chart31: Instruction Tuning for Chart Generation with Automatic Feedback},
  author = {Fatemeh Pesaran Zadeh and Juyeon Kim and Jin-Hwa Kim and Gunhee Kim},
  year   = {2024},
  eprint = {2410.04064},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2410.04064v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2410.04064.svg)](https://codeofpaper.com/paper/2410.04064)

Discussion