EMNLP2024

LM2: A Simple Society of Language Models Solves Complex Reasoning

Gurusha Juneja, Subhabrata Dutta, Tanmoy Chakraborty

1 citation

Abstract

Despite demonstrating emergent reasoning abilities, Large Language Models (LLMS) often lose track of complex, multi-step reasoning. Existing studies show that providing guidance via decomposing the original question into multiple subproblems elicits more robustness in LLM reasoning -a decomposer generates the subproblems, and a solver solves each of these subproblems. However, these techniques fail to accommodate coordination between the decomposer and the solver modules (either in a single model or different specialized ones) -the decomposer does not keep track of the ability of the solver to follow the decomposed reasoning. In this paper, we propose LM 2 to address these challenges. LM 2 modularizes the decomposition, solution, and verification into three different language models. The decomposer module identifies the key concepts necessary to solve the problem and generates step-by-step subquestions according to the reasoning requirement. The solver model generates the solution to the subproblems that are then checked by the verifier module; depending upon the feedback from the verifier, the reasoning context is constructed using the subproblems and the solutions. These models are trained to coordinate using policy learning. Exhaustive experimentation suggests the superiority of LM 2 over existing methods on in-and out-domain reasoning problems, outperforming the best baselines by 8.1% on MATH, 7.71% on JEEBench, and 9.7% on MedQA problems (code available at https://github.com/ LCS2-IIITD/Language_Model_Multiplex ). : How many distinct, non-equilateral triangles with a perimeter of 60 units have integer side lengths , , and such that , , is an arithmetic sequence? Solver LM Decomposer LM Verifier LM SQ: What is a, b, c in terms of common difference d? SA:Since a, b, and c form an arithmetic sequence, we can express c in terms of a as c = a + d, where d is the common difference Let be the common difference, so and We can assume that is positive In particular, can't be 0, because the triangle is not equilateral Then the perimeter of the triangle is , so Hence, the sides of the triangle are , 20, and These sides must satisfy the triangle inequality, which gives us Solving for , we find , or Therefore, the possible values of are 1, 2, , 9, which gives us possible triangles