[논문 리뷰] Generation Probabilities Are Not Enough: Uncertainty Highlighting in AI Code Completions
논문은 AI 보조 코드 완성에서 두 가지 불확실성 하이라이팅 접근법을 비교하고, 편집될 가능성이 높은 토큰을 하이라이트하는 것이(생성 확률이 아니라) 작업 속도를 높이고 더 타깃화된 수정으로 이어지며, 생성 확률 하이라이트는 뚜렷한 이점이 없음을 보여준다.
Large-scale generative models enabled the development of AI-powered code completion tools to assist programmers in writing code. However, much like other AI-powered tools, AI-powered code completions are not always accurate, potentially introducing bugs or even security vulnerabilities into code if not properly detected and corrected by a human programmer. One technique that has been proposed and implemented to help programmers identify potential errors is to highlight uncertain tokens. However, there have been no empirical studies exploring the effectiveness of this technique -- nor investigating the different and not-yet-agreed-upon notions of uncertainty in the context of generative models. We explore the question of whether conveying information about uncertainty enables programmers to more quickly and accurately produce code when collaborating with an AI-powered code completion tool, and if so, what measure of uncertainty best fits programmers' needs. Through a mixed-methods study with 30 programmers, we compare three conditions: providing the AI system's code completion alone, highlighting tokens with the lowest likelihood of being generated by the underlying generative model, and highlighting tokens with the highest predicted likelihood of being edited by a programmer. We find that highlighting tokens with the highest predicted likelihood of being edited leads to faster task completion and more targeted edits, and is subjectively preferred by study participants. In contrast, highlighting tokens according to their probability of being generated does not provide any benefit over the baseline with no highlighting. We further explore the design space of how to convey uncertainty in AI-powered code completion tools, and find that programmers prefer highlights that are granular, informative, interpretable, and not overwhelming.
연구 동기 및 목표
- AI 기반 코드 자동완성 사용 시 불확실성 하이라이팅이 프로그래머의 성능에 어떤 영향을 미치는지 이해한다.
- 생성 확률과 편집 가능성이라는 두 가지 불확실성 개념을 여러 코딩 작업에 걸쳐 비교한다.
- 프로그래머에게 불확실성을 어떻게 전달할지에 대한 설계 선호를 식별한다.
- 다양한 불확실성 하이라이팅 방식과 관련된 주관적 효용성과 인지 부하를 조사한다.
제안 방법
- 세 가지 코딩 작업을 수행하는 30명의 프로그래머를 대상으로 혼합 방법론의 within-subjects 연구를 수행한다.
- 두 가지 불확실성 하이라이팅 조건을 구현한다: 생성 확률 기반 하이라이트(임계값 약 69.4%)와 편집 모델 기반 하이라이트(6명 중 최소 4명이 편집한 토큰).
- 참가자의 Codex 생성 완성에 대한 편집을 바탕으로 토큰이 편집될 가능성을 예측하도록 폐쇄 세계(edit) 모델을 학습시킨다.
- 다수의 수행 및 주관적 지표에 대해 하이라이트 없음 베이스라인과 비교한다.
- 시간, 정확도, 토큰 생존, 인지 부하 및 지각된 효용성과 관련된 아홉 가지 가설을 사전 등록하고 분석한다.
실험 결과
연구 질문
- RQ1AI 보조 코딩에서 불확실성 하이라이팅이 작업 완료 시간과 정확도를 향상시키는가?
- RQ2어떤 불확실성 개념(생성 확률 vs. 편집 가능성)이 프로그래머들에게 더 이로운가?
- RQ3코드 완성에서 불확실성 하이라이팅에 대한 프로그래머의 설계 선호는 무엇인가?
주요 결과
- 편집될 가능성이 가장 높게 예측된 토큰을 하이라이트하는 것이 작업 완료를 빨리 하고 보다 타깃화된 수정으로 이어진다.
- 생성 확률에 기반한 토큰 하이라이트는 하이라이트 없음 베이스라인 대비 성능 이점을 제공하지 않는다.
- 편집 모델 하이라이트는 참가자들이 하이라이트된 토큰을 수정할 확률을 높이고 주관적으로 선호된다.
- 프로그래머들은 불확실성 하이라이트가 세분화되고 정보적이며 해석 가능하고 과도하지 않길 선호하며, 정확한 확률보다는 음영 처리를 선호한다.
- 샘플 크기로 인해 항상 통계적으로 유의하진 않지만 편집 모델 하이라이트로 여러 작업에서 정확도 향상을 시사하는 증거가 있다.
- 프로그램 편집 데이터를 바탕으로 학습된 간단한 폐쇄 세계 편집 모델은 코드 생성의 불확실성에 대한 실용적인 탐침으로 사용할 수 있다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.