MathCoder: Integración fluida de código en LLM para mejorar el razonamiento matemático
MathCoder: Seamless Code Integration in LLMs for Enhanced Mathematical Reasoning
October 5, 2023
Autores: Ke Wang, Houxing Ren, Aojun Zhou, Zimu Lu, Sichun Luo, Weikang Shi, Renrui Zhang, Linqi Song, Mingjie Zhan, Hongsheng Li
cs.AI
Resumen
El recientemente lanzado GPT-4 Code Interpreter ha demostrado una notable
proficiencia en la resolución de problemas matemáticos desafiantes, atribuida
principalmente a su capacidad para razonar de manera fluida con lenguaje
natural, generar código, ejecutar código y continuar razonando basándose en los
resultados de la ejecución. En este artículo, presentamos un método para
ajustar modelos de lenguaje de código abierto, permitiéndoles utilizar código
para modelar y derivar ecuaciones matemáticas y, en consecuencia, mejorar sus
habilidades de razonamiento matemático. Proponemos un método para generar
conjuntos de datos novedosos y de alta calidad con problemas matemáticos y sus
soluciones basadas en código, denominado MathCodeInstruct. Cada solución
entrelaza lenguaje natural, código y resultados de ejecución. También
introducimos un enfoque personalizado de ajuste fino supervisado e inferencia.
Este enfoque da lugar a los modelos MathCoder, una familia de modelos capaces
de generar soluciones basadas en código para resolver problemas matemáticos
complejos. De manera impresionante, los modelos MathCoder logran puntuaciones
de vanguardia entre los LLM de código abierto en los conjuntos de datos MATH
(45.2%) y GSM8K (83.9%), superando sustancialmente a otras alternativas de
código abierto. Cabe destacar que el modelo MathCoder no solo supera a ChatGPT-3.5
y PaLM-2 en GSM8K y MATH, sino que también supera a GPT-4 en el conjunto de datos
MATH de nivel competitivo. El conjunto de datos y los modelos se publicarán en
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.