MLExpert가 실행 피드백 창 단위 강화학습으로 자율 MLE를 학습한다
MLExpert: Towards a Generalist Agentic Model for Autonomous Machine Learning Engineering
무엇인가
이 논문은 LLM이 단순한 코드 생성 보조를 넘어 스스로 머신러닝 실험을 설계하고 개선하는 '에이전트형 MLE(Machine Learning Engineering)'를 어떻게 학습시킬 것인가를 다룬다. 저자들은 이를 AI for AI(AI4AI), 나아가 재귀적 자기개선(RSI)으로 가는 경로로 위치시킨다. 기존 MLE 시스템은 미리 정의된 워크플로나 탐색 규칙이 실험 순서와 단계 전환을 통제하고 LLM은 지정된 지점에서 코드를 생성·디버깅하는 역할에 머물렀다. Arbor, Argus 같은 최근 시스템은 모델이 실험을 직접 설계하고 수정하도록 하지만, 학습 관점에서는 세 가지 문제가 남는다. 첫째, 실험 상태를 보존하면서 행동 선택을 모델에 맡기는 상호작용 환경이 필요하다. 둘째, MLE 과제는 이질적이고 궤적에는 유용한 탐색과 실패 복구, 성능이 퇴화한 결정이 뒤섞여 있어 고품질 장기 지도 신호를 골라내기 어렵다. 셋째, 비싼 실험 하나의 피드백은 그 앞의 여러 결정을 함께 반영하므로, 전체 실행이 끝나기 전에 나오는 중간 신호를 온라인 RL에 써야 한다.
어떻게 동작하나
이를 위해 저자들은 Kaggle-MLE Factory와 Interaction Harness를 만든다. Kaggle-MLE Factory는 과거 Kaggle 대회를 공개 워크스페이스, 숨겨진 테스트 분할, 통일된 평가 인터페이스를 갖춘 실행 가능 과제로 변환하는 다중 에이전트 파이프라인이다. discovery 에이전트가 대회를 상태·규모·제출 형식으로 걸러내고, analyzer 에이전트가 데이터 구조와 모달리티 특성을 뽑아 과제 명세를 만들며, generator 에이전트가 데이터와 숨겨진 레이블 테스트 분할, 과제별 평가기를 준비한다. 이후 실제 데이터로 실행하고 데이터 무결성·제출 형식·평가 동작을 검증하며 반복 수리하고, 레이블이나 채점 문제가 남은 과제는 최종 수동 검토에서 제외한다. Interaction Harness는 ReAct 스타일 루프로, 후보 코드·실행 로그·메타데이터를 담은 솔루션 노드를 부모-자식으로 연결해 실험 트리를 만든다. 모델은 이 트리를 다시 방문·비교해 계속할지, 되돌아갈지, 방향을 바꿀지 스스로 정한다. execute_code로 후보를 실행하고 update_answer로 제출 후보를 갱신하며, analyze 도구는 독립 컨텍스트를 가진 분석 서브에이전트에 데이터 탐색과 결과 진단을 위임하고 요약만 돌려받는다. 검증 점수 부풀리기(과적합·데이터 누수)를 막기 위해 invalidate_node로 신뢰할 수 없는 후보를 배제할 수 있다.
무엇과 다른가
학습은 2단계 계층적 에이전트 SFT로 시작한다. 1단계는 다양한 에이전트 과제의 코딩·도구 사용 궤적으로 기본기를 익히고, 2단계는 MLE 도메인과 논문에서 파생한 과학 과제의 교사 궤적으로 알고리즘 설계, 실험 분석, 반복 최적화를 학습한다. 데이터 구성에서 눈에 띄는 것은 결과 기반 감독 선택이다. 첫 완전 해가 성공적으로 실행되고 품질 임계값을 넘는 궤적은 과제 시작부터 해당 실행 피드백까지를 초기 해 궤적으로 추출한다. 또 품질 임계값을 통과한 궤적에서 첫 최고 성능 제출물을 찾고 그 이후 성능 하락 폭을 측정해, 하락이 임계값을 넘으면 첫 최고 제출물을 앵커로 궤적 접두부를 남기고 그렇지 않으면 마지막 제출물을 앵커로 삼는다. 이렇게 성능이 퇴화한 꼬리를 잘라내되 정점 이전의 유용한 탐색과 실패 복구는 보존한다. 손실은 새로 생성된 추론·텍스트 응답·도구 호출 토큰에만 걸리고, 도구 피드백과 상속된 상호작용 이력은 조건 컨텍스트로만 쓰여 마스킹된다.
어떻게 쓰나
핵심 기여인 Windowed Interaction RL(WIRL)은 연속한 실험 결과 사이에 모델이 내린 여러 턴의 결정을 하나의 '실행 창' u_m으로 묶는다. 각 창은 누적된 상호작용 이력을 조건으로 하고, execute_code로 띄운 해당 실험의 결과와 연결된다. 보상은 실행 오류 -1.0, 채점 가능한 제출물 없음 -0.6, 메달 임계값 미만 -0.4+T_m, 동메달·은메달 1.0+T_m, 금메달 2.0+T_m으로 정의된다. T_m은 직전 유효 제출물 대비 성능이 하락·동일·개선인지에 따라 {-0.2, 0, 0.2}를 주는 국소 추세 항이다. 표준 GRPO와 달리 그룹 상대 정규화 없이 검증 가능한 실행 보상을 그대로 어드밴티지로 써서 창 안의 모든 학습 대상 토큰에 공유 적용한다. 실험 시간이 제각각이므로 신뢰할 수 있는 실행 피드백이 나온 창을 비동기로 모아 배치를 만들고, 긴 궤적이 여러 번의 정책 업데이트를 가로지르는 문제는 수집 시 기록한 로그확률로 토큰 단위 정책 보정을 해 해결한다. q = exp(ℓ_old − ℓ_roll)을 계산해 [q_min, q_max] 구간 안의 토큰만 가중하고 밖의 토큰은 정책 경사 업데이트에서 제외한다. 최종 목적함수는 창별 유효 출력 토큰 수로 정규화한 PPO 스타일 손실에 KL 정규화와 엔트로피 항을 더한 형태다.
전제와 한계
실험은 MLE-Bench Lite의 22개 과제에서 이뤄졌다. 각 과제에 최대 3,000 상호작용 스텝과 12시간, 20 vCPU, 220GB RAM, H200 GPU 1장이 주어진다. MLExpert는 Qwen3.6-35B-A3B에서 초기화했고, 같은 하네스에서 평균 메달률을 베이스 모델 37.9%에서 72.7%로 끌어올려 동급 규모 모델 중 최고 성능을 기록했으며 GLM-5.3, Kimi-K3 같은 더 큰 프런티어 모델과 비교 가능한 수준에 도달했다. 범용 코딩 하네스인 Claude Code에서도 69.7%로 베이스 모델 42.4%를 크게 앞서고, 평가된 동급 최강 베이스라인을 22.7%포인트 초과한다. NatureBench Lite에서는 Surpass-SOTA 비율이 0.0%에서 50.0%로, Match-SOTA 비율이 40.0%에서 70.0%로 올라 Nex-N2.5-mini(20.0%)를 넘고 GLM-5.3(50.0%)과 같아졌다.
단계별 절제 실험은 각 구성 요소의 기여를 분리한다. 일반 에이전트 SFT가 37.9%를 47.0%로, MLE 도메인 SFT가 62.1%로, WIRL이 72.7%로 올린다. 궤적 단위 GRPO는 56.1%, PPO 스타일 최적화는 60.6%로 MLE-SFT의 62.1%보다 낮았고, 추세 보상을 뺀 WIRL 변형은 66.7%, 정책 보정을 뺀 변형은 65.2%로 전체 WIRL에 못 미친다. 사례로 든 MLSP 2013 Birds 과제에서 MLExpert는 ROC-AUC를 0.58에서 0.964까지 올린 반면 MLExpert-SFT는 0.60에서 0.88에 그쳤다. 일반화도 확인된다. AIME 2025용 파이썬 스캐폴드 최적화에서는 MLExpert가 최적화한 스캐폴드가 홀드아웃 정확도 43.7%로 베이스 모델의 23.3%를 앞섰고, MLS-Bench-Lite의 알고리즘 구성요소 최적화에서는 평균 검증 보상이 0.322에서 0.425로 올라 12개 과제 중 10개에서 우세, 1개 동률, 1개 열세였다.
개발자 입장에서 이 논문의 실용적 시사점은 두 가지다. 하나는 장기 최적화 능력을 별도 학습 대상으로 다룬다는 점이다. 프롬프트나 워크플로 엔지니어링으로 실험 루프를 짜는 대신, 실행 결과가 나올 때마다 그 사이 결정 묶음에 보상을 주는 방식으로 정책 자체를 학습시킨다. 다른 하나는 학습 신호를 실험 단위로 자르는 설계다. 전체 궤적이 끝나기를 기다리지 않고 완료된 실험의 검증 가능한 결과로 업데이트하므로, 실험 하나가 몇십 분씩 걸리는 환경에서도 학습 처리량을 확보한다. 자체 에이전트를 MLE나 유사한 반복 최적화 작업에 붙일 계획이라면, 실행 창이라는 보상 단위와 비동기 수집 시의 정책 보정(수집 정책과 학습 정책의 로그확률 차이를 클리핑하는 방식)을 그대로 참고할 만하다. 다만 이 수치들은 논문이 공개한 하네스와 12시간·3,000스텝 예산, H200 단일 GPU 조건에서 나온 것이므로, 자신의 인프라와 시간 예산에서 같은 이득이 재현되는지는 별도로 확인해야 한다.
한계와 전제는 논문 본문에 별도의 한계 절로 정리되어 있지는 않지만 곳곳에 드러난다. 평가는 MLE-Bench Lite 22개 과제와 NatureBench Lite 10개 과제로 제한되며, 학습 데이터에서 MLE-Bench나 NatureBench와 겹치는 과제는 제외한다고 명시한다. Kaggle-MLE Factory가 만든 과제는 최종적으로 사람이 검토해 레이블·채점 문제가 남은 것을 걸러내므로 완전 자동 파이프라인이 아니고, 최종 제출물은 숨겨진 테스트 레이블로 독립 평가된다는 전제 위에서만 점수가 의미를 갖는다. 또한 결과 기반 감독 선택과 보상 설계가 메달 임계값이라는 과제별 기준에 의존하므로, 메달 체계가 없는 과제에서는 보상 스케일을 어떻게 잡을지가 열린 문제로 남는다.