CodeIt: 우선순위 기반 사후 재연을 통한 자기 개선 언어 모델
CodeIt: Self-Improving Language Models with Prioritized Hindsight Replay
February 7, 2024
저자: Natasha Butt, Blazej Manczak, Auke Wiggers, Corrado Rainone, David Zhang, Michaël Defferrard, Taco Cohen
cs.AI
초록
대규모 언어 모델은 인간 수준의 추론 능력이 필요한 것으로 여겨지는 과제들을 점점 더 해결하고 있다. 그러나 이러한 모델들은 여전히 추상 및 추론 코퍼스(ARC)와 같은 일반 지능 벤치마크에서 매우 낮은 성능을 보인다. 본 논문에서는 ARC를 예제를 통한 프로그래밍 문제로 접근하고, 언어 모델의 자기 개선을 위한 새로운 확장 가능한 방법인 코드 반복(CodeIt)을 소개한다. 우리의 방법은 1) 프로그램 샘플링 및 사후 재라벨링과 2) 우선순위 경험 재생 학습 간의 반복을 통해 진행된다. 샘플링된 프로그램에 의해 생성된 실제 출력을 에피소드의 목표(즉, 입력에 대한 목표 프로그램 출력)로 재라벨링함으로써, 이 방법은 프로그램 합성에서의 극단적인 보상 희소성 문제를 효과적으로 해결한다. CodeIt을 ARC 데이터셋에 적용하여, 우선순위 사후 재생과 사전 학습 및 데이터 증강이 작업 간 일반화를 성공적으로 이끌어냄을 보여준다. CodeIt은 전체 ARC 평가 데이터셋에 확장 가능한 첫 번째 신경-기호 접근법이다. 우리의 방법은 ARC 평가 과제의 15%를 해결하며, 최첨단 성능을 달성하고 기존의 신경 및 기호 기반 방법들을 능가한다.
English
Large language models are increasingly solving tasks that are commonly
believed to require human-level reasoning ability. However, these models still
perform very poorly on benchmarks of general intelligence such as the
Abstraction and Reasoning Corpus (ARC). In this paper, we approach ARC as a
programming-by-examples problem, and introduce a novel and scalable method for
language model self-improvement called Code Iteration (CodeIt). Our method
iterates between 1) program sampling and hindsight relabeling, and 2) learning
from prioritized experience replay. By relabeling the goal of an episode (i.e.,
the target program output given input) to the realized output produced by the
sampled program, our method effectively deals with the extreme sparsity of
rewards in program synthesis. Applying CodeIt to the ARC dataset, we
demonstrate that prioritized hindsight replay, along with pre-training and
data-augmentation, leads to successful inter-task generalization. CodeIt is the
first neuro-symbolic approach that scales to the full ARC evaluation dataset.
Our method solves 15% of ARC evaluation tasks, achieving state-of-the-art
performance and outperforming existing neural and symbolic baselines.