1. NL2SQL 评估指标,执行准确率(Execution Accuracy)与精确匹配(Exact Match)的差异,为什么执行准确率更贴近业务
NL2SQL 的评估指标中,执行准确率(Execution Accuracy)与精确匹配(Exact Match)有何差异?为什么执行准确率更贴近业务?
- Execution Accuracy 与 Exact Match 定义
- 两者的差异
- 为何执行准确率更贴近业务
Exact Match 比较生成 SQL 与标准 SQL 是否字符串完全一致,过于严格,因为同一语义可有多种等价写法(不同别名、不同实现),导致误判。Execution Accuracy 则把生成 SQL 与标准 SQL 都执行,比较结果集是否一致,只要结果正确即算对。执行准确率更贴近业务,是因为业务关心的是"查到的数据对不对",而非"SQL 写法是否和标准答案相同";同时它能容忍合法的多样化实现,反映真实能力。因此业界普遍以执行准确率作为主要指标,Exact Match 仅作辅助参考。
指标要与业务目标对齐。执行准确率以"结果正确"为评判标准,天然契合用户诉求;而 Exact Match 的过度严格会掩盖等价解,导致低估模型能力。