MathCoder : Intégration transparente du code dans les LLM pour un raisonnement mathématique amélioré
MathCoder: Seamless Code Integration in LLMs for Enhanced Mathematical Reasoning
October 5, 2023
Auteurs: Ke Wang, Houxing Ren, Aojun Zhou, Zimu Lu, Sichun Luo, Weikang Shi, Renrui Zhang, Linqi Song, Mingjie Zhan, Hongsheng Li
cs.AI
Résumé
Le récemment publié GPT-4 Code Interpreter a démontré une remarquable compétence dans la résolution de problèmes mathématiques complexes, principalement grâce à sa capacité à raisonner de manière fluide en langage naturel, à générer du code, à exécuter ce code et à poursuivre son raisonnement en fonction des résultats de l'exécution. Dans cet article, nous présentons une méthode pour affiner des modèles de langage open-source, leur permettant d'utiliser du code pour modéliser et dériver des équations mathématiques, améliorant ainsi leurs capacités de raisonnement mathématique. Nous proposons une méthode de génération de jeux de données novateurs et de haute qualité contenant des problèmes mathématiques et leurs solutions basées sur du code, appelée MathCodeInstruct. Chaque solution entrelace langage naturel, code et résultats d'exécution. Nous introduisons également une approche personnalisée de fine-tuning supervisé et d'inférence. Cette approche donne naissance aux modèles MathCoder, une famille de modèles capables de générer des solutions basées sur du code pour résoudre des problèmes mathématiques complexes. De manière impressionnante, les modèles MathCoder atteignent des scores de pointe parmi les LLM open-source sur les jeux de données MATH (45,2 %) et GSM8K (83,9 %), surpassant largement les autres alternatives open-source. Il est à noter que le modèle MathCoder non seulement surpasse ChatGPT-3.5 et PaLM-2 sur GSM8K et MATH, mais dépasse également GPT-4 sur le jeu de données MATH de niveau compétition. Le jeu de données et les modèles seront disponibles à l'adresse https://github.com/mathllm/MathCoder.
English
The recently released GPT-4 Code Interpreter has demonstrated remarkable
proficiency in solving challenging math problems, primarily attributed to its
ability to seamlessly reason with natural language, generate code, execute
code, and continue reasoning based on the execution output. In this paper, we
present a method to fine-tune open-source language models, enabling them to use
code for modeling and deriving math equations and, consequently, enhancing
their mathematical reasoning abilities. We propose a method of generating novel
and high-quality datasets with math problems and their code-based solutions,
referred to as MathCodeInstruct. Each solution interleaves natural language,
code, and execution results. We also introduce a customized supervised
fine-tuning and inference approach. This approach yields the MathCoder models,
a family of models capable of generating code-based solutions for solving
challenging math problems. Impressively, the MathCoder models achieve
state-of-the-art scores among open-source LLMs on the MATH (45.2%) and GSM8K
(83.9%) datasets, substantially outperforming other open-source alternatives.
Notably, the MathCoder model not only surpasses ChatGPT-3.5 and PaLM-2 on GSM8K
and MATH but also outperforms GPT-4 on the competition-level MATH dataset. The
dataset and models will be released at https://github.com/mathllm/MathCoder.