Core Concepts
사람들은 기계에게 프로그래밍 개념을 가르치는 데 어려움을 겪는다. 전문가가 아닌 사람들이 제공한 예제로는 프로그램 합성 시스템이 원하는 개념을 정확하게 학습하기 어렵다.
Abstract
이 연구는 사람들이 기계에게 코딩을 가르칠 수 있는지 여부를 탐구한다. 연구 결과에 따르면 전문가가 아닌 참여자들은 프로그램 합성 시스템이 원하는 개념을 학습하는 데 충분한 예제를 제공하지 못했다.
참여자들은 리스트 조작 개념에 대한 예제를 제공했다. 이 예제들을 사용하여 프로그램 합성 시스템을 학습시켰을 때, 대부분의 경우 시스템이 원하는 프로그램을 정확하게 학습하지 못했다. 반면 프로그램 합성에 전문가인 참여자가 제공한 예제로는 시스템이 모든 개념을 완벽하게 학습할 수 있었다.
이 결과는 프로그램 합성 분야에 중요한 시사점을 제공한다. 기존 연구에서는 사용자가 충분한 예제를 제공할 수 있다고 가정했지만, 이 연구 결과는 이 가정이 항상 성립하지 않음을 보여준다. 또한 대부분의 프로그램 합성 연구에서는 무작위로 생성한 예제를 사용하지만, 이 연구 결과는 이러한 예제가 사람이 제공한 예제보다 성능이 더 좋을 수 있음을 시사한다.
Stats
전문가가 제공한 예제로 학습한 프로그램 합성 시스템은 모든 과제에서 100%의 정확도를 달성했다.
비전문가 참여자가 제공한 예제로 학습한 시스템은 대부분의 과제에서 최대 정확도에 도달하지 못했다.
컴퓨터 과학 배경이 있는 참여자와 없는 참여자 간 성능 차이는 통계적으로 유의미하지 않았다.
Quotes
"사람들은 기계에게 프로그래밍 개념을 가르치는 데 어려움을 겪는다."
"전문가가 아닌 참여자들은 프로그램 합성 시스템이 원하는 개념을 학습하는 데 충분한 예제를 제공하지 못했다."
"대부분의 프로그램 합성 연구에서는 무작위로 생성한 예제를 사용하지만, 이 연구 결과는 이러한 예제가 사람이 제공한 예제보다 성능이 더 좋을 수 있음을 시사한다."