Microsoft / post-training

2 개의 포스트

microsoft

Engineering and algorithmic interventions for multimodal post-training at Microsoft scale (새 탭에서 열림)

대규모 프로덕션 환경에서 멀티모달 에이전트의 사후 학습(Post-training)은 표준적인 강화학습 알고리즘이 예상하지 못한 지점에서 실패하는 경우가 많으며, 특히 전체 보상 지표가 상승함에도 불구하고 실제 성능은 퇴보하는 '침묵하는 실패'가 빈번하게 발생합니다. Microsoft Copilot 팀은 이러한 문제를 해결하기 위해 정책 경사 추정치(Policy gradient estimator)의 정보력을 유지하는 데 초점을 맞춘 공학적 및 알고리즘적 개입 방법을 개발했습니다. 이를 통해 수백만 명의 사용자를 대상으로 하는 복잡한 도구 조작 및 멀티모달 추론 태스크에서 성능 안정성과 모델의 견고성을 확보할 수 있었습니다. ### 단계적 목적 함수 커리큘럼을 통한 조기 전문화 방지 * **문제점**: 단순한 스칼라 보상을 최적화할 경우, 모델은 달성하기 쉬운 지표에만 매몰되어 장기 실행 능력이나 견고성이 필요한 복잡한 행동을 포기하는 조기 전문화(Premature specialization) 현상이 나타납니다. * **검증 및 선호 신호 분리**: 보상 신호를 '검증 가능 신호(도구 구문, 형식 준수 등)'와 '선호도 신호(품질 등)'로 분리하고, 학습 초기 30% 구간에서는 검증 가능 신호에만 집중하여 기본기를 다지게 합니다. * **엔트로피 하한선(Entropy Floor)**: 단순한 엔트로피 보너스 대신, 정책의 엔트로피가 특정 임계값 아래로 떨어질 때만 활성화되는 KL 페널티 형태의 '하한선'을 도입하여 학습 후반부까지 정책의 다양성을 강제로 유지합니다. ### 추정치 건강도에 따른 적응형 커리큘럼 * **ESS(유효 샘플 크기) 모니터링**: 전체 배치 중 실제로 유의미한 그래디언트 업데이트에 기여하는 궤적의 비율인 ESS를 실시간으로 추적합니다. ESS가 20% 미만으로 떨어지면 향후 학습 정체가 일어날 것임을 미리 예측할 수 있습니다. * **근접 실패(Near-miss) 주입**: ESS 수치가 위험 수준에 도달하면 저장소 버퍼에서 '근접 실패' 궤적을 학습 배치에 주입합니다. 이는 모델이 정답과 오답 사이의 미세한 차이를 학습하게 하여 배치 내 결과의 대비(Contrast)를 복구합니다. * **동적 KL 페널티 조절**: 추정치의 건강도가 낮아질 때 일시적으로 KL 페널티를 높여 정책의 급격한 변화를 방지하고, 에스티메이터가 회복될 시간을 확보합니다. ### 구조적 변산성을 고려한 분산 교정 정규화 * **문제점**: 표준적인 태스크별 정규화는 태스크 내의 변산성 구조를 무시합니다. 특히 100토큰 내외의 짧은 궤적과 2000토큰 이상의 긴 궤적 사이에는 거대한 분산 차이가 존재하며, 긴 궤적이 전체 그래디언트 신호를 왜곡하는 현상이 발생합니다. * **길이 기반 보정**: 궤적의 길이에 따라 변산성이 선형적으로 증가하는 특성을 반영하여 정규화 로직을 개선함으로써, 특정 유형의 작업이 전체 학습 방향을 독점하지 않도록 조정합니다. 실제 운영 환경에서의 AI 에이전트 학습은 대시보드상의 요약 지표와 실제 사용자 경험 사이의 괴리를 줄이는 것이 핵심입니다. 특히 ESS와 같은 추정치 건전성 지표를 상시 모니터링하고, 학습 초기 단계에서 모델이 기본 형식을 먼저 마스터할 수 있도록 보상 신호의 투입 시점을 제어하는 전략이 대규모 멀티모달 시스템의 안정적인 배포에 결정적인 역할을 합니다.

microsoft

Diagnosing instability in production-scale agent reinforcement learning (새 탭에서 열림)

Hugging Face는 장기 실행되는 에이전트 시스템과 지속적으로 적응하는 RL(강화학습) 파이프라인을 위해 '사후 훈련 툴킷(Post-Training Toolkit, PTT)'을 TRL 라이브러리에 공식 통합했습니다. 이 툴킷은 기존의 전역 지표로는 포착하기 어려운 도구 사용 에이전트의 '후기 단계 불안정성(Late-phase instability)'을 진단하고 제어하는 데 중점을 둡니다. 이를 통해 개발자는 운영 환경에서 에이전트가 도구 호출 이후 겪는 미세한 성능 저하를 조기에 발견하고 대응할 수 있는 폐쇄 루프 모니터링 체계를 구축할 수 있습니다. **도구 호출로 인한 분산 증폭 현상** - 도구 사용 에이전트의 학습 상태 분포는 일반 텍스트 상호작용과 도구 조건부 상호작용의 혼합으로 구성됩니다. 학습이 진행됨에 따라 도구 사용 비중이 늘어나며 상태 분포의 변화가 발생합니다. - 특히 도구 호출 이후의 맥락(Post-tool context)은 참조 정책(Reference policy)이 낮은 확률을 할당하는 영역인 경우가 많아, 중요도 샘플링 가중치가 급격히 커지는 현상이 발생합니다. - 이로 인해 전역 손실(Loss)이나 보상(Reward) 지표는 안정적으로 보임에도 불구하고, 도구 조건부 맥락에서만 특정 업데이트의 분산이 폭발하며 시스템이 서서히 붕괴되는 '꼬리 부분의 성장(Tail growth)' 현상이 나타납니다. **정밀한 진단을 위한 데이터 슬라이싱과 지표** - PTT는 전체 평균값에 매몰되지 않도록 상호작용 모드(텍스트 전용 vs 도구 이후)별로 진단 지표를 분리하여 계산합니다. - 핵심 지표인 '로그 비율의 95백분위수(95th percentile of |r|)'를 통해 평균적인 행동이 아닌 꼬리 부분의 이상 징후를 추적합니다. 실험 결과, 텍스트 전용 맥락은 안정적이어도 도구 이후 맥락에서는 이 수치가 지속적으로 상승하는 것이 확인되었습니다. - 가중치 집중도를 나타내는 '유효 샘플 크기(Effective Sample Size, ESS)'를 보조 신호로 활용하여, 특정 샘플이 업데이트를 주도하며 학습의 질을 떨어뜨리는지 감시합니다. **실패 사례의 오인과 대응** - 이러한 불안정성은 대개 비대칭적이고 지연되어 나타나기 때문에, 개발자들은 이를 최적화 알고리즘(Optimizer)의 문제나 전역적인 분산 제어 부족으로 오해하는 경우가 많습니다. - 단순히 배치 크기를 키우거나 베이스라인을 개선하는 것만으로는 참조 정책과의 지지 집합(Support) 불일치 문제를 근본적으로 해결할 수 없습니다. - PTT는 도구 호출이 외부 전이를 주입함으로써 발생하는 특수한 분산 증폭을 독립적인 실패 모드로 식별하며, 이를 조기에 시각화하여 운영자가 개입할 수 있는 근거를 제공합니다. 도구 사용 에이전트를 운영 환경에서 훈련시킬 때는 전역 보상이나 엔트로피에만 의존해서는 안 됩니다. TRL에 통합된 PTT를 활용해 도구 호출 전후의 지표를 분리 모니터링하고, 특히 로그 비율의 백분위수 변화를 주시하여 분포의 꼬리가 길어지는 현상을 조기에 차단하는 '드리프트 인식(Drift-aware)' 설정을 도입할 것을 권장합니다.