언제 답변하고 언제 유보할 것인가: 신뢰할 수 있는 코드 예측을 위한 의사결정 프레임워크
요약
코드 언어 모델의 과도한 확신 또는 불확실한 예측 문제를 해결하기 위해 불확실성 추정, 모델 교정, 도구 기반 유보 처리를 통합한 새로운 프레임워크를 제안합니다. 기존 자연어 처리 방식이 코드 모델에 적용될 때 발생하는 한계를 극복하고, 경량 프로그램 분석을 통해 유보된 사례를 처리할 수 있는 배포 지향적 워크플로우를 구축합니다.
핵심 포인트
- 코드 모델의 과도한 확신(overconfidence) 및 과도한 불확신(underconfidence) 문제 해결
- 기존 사후 교정(post-hoc calibration) 기술의 한계인 예측 순위 개선 문제 극복
- 불확실성을 단순 지표가 아닌 실행 가능한 신호로 활용하는 통합 프레임워크 제안
- 경량 프로그램 분석 절차를 호출하여 유보된 출력을 검증하거나 수정하는 메커니즘 포함
- 분류 및 생성 작업 모두에서 위험 인식 및 커버리지 제어가 가능한 워크플로우 지원
코드 언어 모델 (Code language models)은 이해 및 생성 작업 모두에서 점점 더 많이 채택되고 있습니다. 이러한 성공에도 불구하고, 이 모델들은 빈번하게 과도하게 확신하는 잘못된 예측(overconfident incorrect predictions)과 과도하게 확신하지 못하는 올바른 예측(underconfident correct predictions)을 생성하여, 배포 시의 신뢰성을 저해합니다. 실제 배포를 위해서는 세 가지 능력이 요구됩니다: 정확한 정답 확률 추정, 불확실한 예측에 대한 유보 (abstaining), 그리고 유보된 출력을 검증하거나 수정하기 위한 외부 메커니즘 호출입니다. 주로 자연어 작업 (natural language tasks)을 위해 개발된 기존의 교정 (calibration) 및 불확실성 추정 (uncertainty estimation) 방법들은 코드에 쉽게 전이되지 않습니다. 특히, 사후 교정 (post-hoc calibration) 기술은 확률의 불일치 (probability misalignment)를 줄이는 경우가 많지만, 부분적 커버리지 (partial coverage) 하에서의 선택적 예측 (selective prediction)에 필요한 요구 사항인 '정답 확률에 따른 예측 순위 개선'에는 실패합니다. 더욱이, 대부분의 접근 방식은 불확실성을 실행 가능한 신호 (actionable signal)가 아닌 수동적인 지표로 취급합니다. 본 연구는 코드 모델을 위해 불확실성 추정, 모델 교정, 그리고 도구 기반의 유보 처리 (tool-based abstention handling)를 통합하는 통합 프레임워크를 소개합니다. 제안된 설계는 모델이 신뢰할 수 있는 정답 확률을 할당하고, 불확실성 하에서 유보하며, 유보된 사례를 처리하기 위해 경량 프로그램 분석 절차 (lightweight program analysis procedures)를 호출할 수 있도록 합니다. 이러한 구성 요소들을 단일 배포 지향 워크플로우 (deployment-oriented workflow) 내에서 결합함으로써, 본 프레임워크는 분류 (classification) 및 생성 (generation) 설정 모두에서 위험 인식 (risk-aware) 및 커버리지 제어 (coverage-controlled)가 가능한 코드 모델 사용을 지원합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기