
논문: https://arxiv.org/pdf/2406.08426
평가 지표
Text-to-SQL 작업의 평가 지표로 널리 사용되는 네 가지 평가 방법을 소개합니다: SQL 콘텐츠 매칭을 기반으로 한 구성 요소 매칭(Component Matching) 및 정확 매칭(Exact Matching)과, 실행 결과를 기반으로 한 실행 정확도(Execution Accuracy) 및 유효 효율성 점수(Valid Efficiency Score)입니다.
콘텐츠 매칭 기반 지표:
구성 요소 매칭(Component Matching, CM): SQL 콘텐츠 매칭 지표는 예측된 SQL 쿼리와 정답 SQL 쿼리를 구조적, 문법적으로 비교합니다. CM은 SELECT, WHERE, GROUP BY, ORDER BY, KEYWORDS 등의 SQL 구성 요소에 대해 예측된 쿼리와 정답 쿼리 간의 일치 여부를 F1 점수로 측정합니다. 각 구성 요소는 하위 구성 요소 집합으로 분해되어 순서 제약 없이 정확하게 일치하는지 평가됩니다.
정확 매칭(Exact Matching, EM): EM은 예측된 SQL 쿼리의 모든 구성 요소가 정답 SQL 쿼리와 정확히 일치하는지 측정하는 지표입니다. 예측된 SQL이 정확하다고 간주되려면 CM에서 설명한 모든 구성 요소가 정답 쿼리와 일치해야 합니다.
실행 기반 지표:
실행 정확도(Execution Accuracy, EX): EX는 데이터베이스에서 예측된 SQL 쿼리를 실행한 결과와 정답 쿼리를 실행한 결과를 비교하여 예측된 SQL 쿼리의 정확성을 평가합니다.
유효 효율성 점수(Valid Efficiency Score, VES):
유효한 SQL 쿼리 정의: 유효한 SQL 쿼리는 예측된 SQL 쿼리가 실행된 결과가 정답 SQL 쿼리의 결과와 정확히 일치하는 경우를 의미합니다. 즉, 실행 결과가 동일할 때 해당 SQL 쿼리를 유효하다고 간주합니다.
효율성 평가: VES는 주어진 데이터셋에 대해 예측된 SQL 쿼리들이 얼마나 효율적으로 실행되었는지를 평가합니다. 구체적으로는, 각 예측된 SQL 쿼리의 실행 시간을 측정하여 정답 SQL 쿼리의 실행 시간과 비교합니다.
계산식: VES는 다음과 같은 식으로 계산됩니다:


평균 계산: 전체 데이터셋에 대해 위 식을 계산하여 평균을 구합니다. 이를 통해 VES는 예측된 SQL 쿼리가 얼마나 빠르게 실행되는지를 정답 SQL 쿼리와 비교하여 평가하게 됩니다.
따라서 VES는 예측된 SQL 쿼리가 정답과 동일한 결과를 반환하는 동시에, 실행 시간도 효율적인지를 종합적으로 평가하는 지표입니다. 이 지표는 SQL 쿼리의 정확도뿐만 아니라 실행 효율성까지 고려함으로써, 실제 데이터베이스 환경에서의 성능을 보다 현실적으로 반영할 수 있습니다.
최근 LLM 기반 Text-to-SQL 연구들은 주로 Spider, Spider-Realistic, Spider-SYN, BIRD와 같은 네 가지 데이터셋과 EM, EX, VES의 세 가지 평가 방법에 초점을 맞추고 있습니다.