ਯੂਨੀਵਰਸਿਟੀ ਆਫ ਇਲੀਨੋਇਸ ਅਰਬਾਨਾ-ਸ਼ੈਂਪੇਨ (University of Illinois Urbana-Champaign) ਦੀ ਇੱਕ ਖੋਜ ਟੀਮ ਨੇ ਪਾਇਆ ਹੈ ਕਿ ਵਿਆਪਕ ਤੌਰ 'ਤੇ ਵਰਤੇ ਜਾਣ ਵਾਲੇ BIRD Text-to-SQL ਬੈਂਚਮਾਰਕ ਵਿੱਚ ਅੱਧੇ ਤੋਂ ਵੱਧ ਐਨੋਟੇਸ਼ਨਾਂ (annotations) ਗਲਤ ਹਨ, ਜਿਸ ਨਾਲ ਉਹਨਾਂ ਅਕੂਰੇਸੀ ਸਕੋਰਾਂ ਦੀ ਮਹੱਤਤਾ 'ਤੇ ਸਵਾਲ ਖੜ੍ਹੇ ਹੋ ਗਏ ਹਨ ਜਿਨ੍ਹਾਂ 'ਤੇ ਬਹੁਤ ਸਾਰੇ ਡਿਵੈਲਪਰ ਭਰੋਸਾ ਕਰਦੇ ਹਨ।

ਬੈਂਚਮਾਰਕ ਕਿਉਂ ਮਹੱਤਵਪੂਰਨ ਹੈ

BIRD ਇੱਕ ਮਾਡਲ ਕਿੰਨੀ ਚੰਗੀ ਤਰ੍ਹਾਂ ਕੁਦਰਤੀ-ਭਾਸ਼ਾ (natural-language) ਦੇ ਸਵਾਲ ਨੂੰ SQL ਕੁਐਰੀ (query) ਵਿੱਚ ਬਦਲ ਸਕਦਾ ਹੈ, ਇਸ ਨੂੰ ਮਾਪਣ ਲਈ ਡੀ-ਫੈਕਟੋ (de-facto) ਮਿਆਰਡ ਹੈ। ਖੋਜ ਪੱਤਰ (papers), ਪ੍ਰੋਡਕਟ ਸ਼ੀਟਾਂ ਅਤੇ ਭਰਤੀ ਟੈਸਟ BIRD ਸਕੋਰਾਂ ਦਾ ਹਵਾਲਾ ਦਿੰਦੇ ਹਨ। ਜੇਕਰ ਸਹੀ ਹੋਣ ਦੀ ਪਰਿਭਾਸ਼ਾ ਦੇਣ ਵਾਲੇ "gold" SQL ਸਟੇਟਮੈਂਟਸ ਵਿੱਚ ਖਾਮੀਆਂ ਹਨ, ਤਾਂ ਇੱਕ ਅਜਿਹਾ ਮਾਡਲ ਜੋ ਬਿਹਤਰ ਕੁਐਰੀ ਲਿਖਦਾ ਹੈ, ਉਸ ਨੂੰ ਸਜ਼ਾ ਮਿਲ ਸਕਦੀ ਹੈ, ਜਦੋਂ ਕਿ ਇੱਕ ਅਜਿਹਾ ਮਾਡਲ ਜੋ ਗਲਤ "gold" ਉੱਤਰ ਦੀ ਨਕਲ ਕਰਦਾ ਹੈ, ਉਸ ਨੂੰ ਇਨਾਮ ਮਿਲ ਸਕਦਾ ਹੈ।

ਗਲਤੀ ਦੀ ਦਰ ਦਾ ਪਤਾ ਕਿਵੇਂ ਲੱਗਾ

UIUC ਦੀ ਟੀਮ ਨੇ BIRD-dev split ਤੋਂ 238 ਅਸਫਲਤਾਵਾਂ ਦੀ ਜਾਂਚ ਕੀਤੀ। ਇਹ ਅੰਦਾਜ਼ਾ ਲਗਾਉਣ ਦੀ ਬਜਾਏ ਕਿ ਮਾਡਲ ਦਾ ਹਰੇਕ ਆਉਟਪੁੱਟ ਗਲਤ ਕਿਉਂ ਦੱਸਿਆ ਗਿਆ ਸੀ, ਉਨ੍ਹਾਂ ਨੇ ਮਾਡਲ ਦੁਆਰਾ ਤਿਆਰ ਕੀਤੇ ਗਏ SQL ਅਤੇ "gold" ਰੈਫਰੈਂਸ ਵਿਚਕਾਰ ਹਰ ਅੰਤਰ ਨੂੰ ਮੈਨੂਅਲੀ ਟੈਗ ਕੀਤਾ। ਉਨ੍ਹਾਂ ਦੇ ਆਡਿਟ ਵਿੱਚ ਪਾਇਆ ਗਿਆ ਕਿ 52.8 % ਮਾਮਲਿਆਂ ਵਿੱਚ ਐਨੋਟੇਸ਼ਨ ਦੀ ਗਲਤੀ ਹੈ—ਗਲਤ SQL, ਮਿਸਮੈਚਡ ਸਕੀਮਾ (schema), ਜਾਂ ਇੱਕ ਗਲਤ ਕੁਦਰਤੀ-ਭਾਸ਼ਾ ਦਾ ਸਵਾਲ।

ਇੱਕ ਪੈਟਰਨ ਨੇ ਫਲੈਗ ਕੀਤੀਆਂ ਗਈਆਂ ਗਲਤੀਆਂ ਦੇ 19 % ਹਿੱਸੇ ਦੀ ਪ੍ਰਤੀਨਿਧਤਾ ਕੀਤੀ: ਮਾਡਲ ਨੇ DISTINCT ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਦੋਂ ਕਿ "gold" ਕੁਐਰੀ ਵਿੱਚ ਇਸ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕੀਤੀ ਗਈ ਸੀ। ਕਲਪਨਾ ਕਰੋ ਕਿ ਇੱਕ ਉਪਭੋਗਤਾ ਅਸਧਾਰਨ ਲੈਬ ਨਤੀਜਿਆਂ ਵਾਲੇ ਮਰੀਜ਼ਾਂ ਦੀ ਗਿਣਤੀ ਪੁੱਛ ਰਿਹਾ ਹੈ। "Gold" ਉੱਤਰ COUNT(ID) ਨਾਲ ਰੋਅ (rows) ਗਿਣਦਾ ਹੈ। ਜੇਕਰ ਇੱਕ ਮਰੀਜ਼ ਦੇ ਪੰਜ ਅਸਧਾਰਨ ਲੈਬ ਨਤੀਜੇ ਹਨ, ਤਾਂ "gold" ਕੁਐਰੀ ਇੱਕ ਦੀ ਬਜਾਏ ਪੰਜ ਦੱਸਦੀ ਹੈ। ਮਾਡਲ ਦਾ COUNT(DISTINCT ID) ਹਰੇਕ ਮਰੀਜ਼ ਨੂੰ ਸਹੀ ਤਰ੍ਹਾਂ ਇੱਕ ਵਾਰ ਗਿਣਦਾ ਹੈ। ਇਹਨਾਂ ਮਾਮਲਿਆਂ ਵਿੱਚ, ਬੈਂਚਮਾਰਕ ਮਾਡਲ ਦੀ ਗਲਤੀ ਦਰਜ ਕਰਦਾ ਹੈ ਭਾਵੇਂ ਕਿ ਮਾਡਲ ਦਾ ਉੱਤਰ ਅਸਲ ਅਰਥਾਂ (semantics) ਦੇ ਵਧੇਰੇ ਅਨੁਕੂਲ ਹੋਵੇ।

ਮਾਡਲ ਵਿਕਾਸ 'ਤੇ ਅਸਲ ਦੁਨੀਆ ਦਾ ਪ੍ਰਭਾਵ

ਡਿਵੈਲਪਰ ਅਕਸਰ ਘੱਟ BIRD ਸਕੋਰਾਂ ਪ੍ਰਤੀ ਪ੍ਰੋਂਪਟਸ (prompts) ਨੂੰ ਬਦਲ ਕੇ, "don't use DISTINCT" ਵਰਗੀਆਂ ਪਾਬੰਦੀਆਂ ਜੋੜ ਕੇ, ਜਾਂ ਬੈਂਚਮਾਰਕ ਡੇਟਾ 'ਤੇ ਮੁੜ ਸਿਖਲਾਈ (retraining) ਦੇ ਕੇ ਪ੍ਰਤੀਕਿਰਿਆ ਦਿੰਦੇ ਹਨ। ਉਹ ਅਜਸਮੈਂਟਸ (adjustments) ਰਿਪੋਰਟ ਕੀਤੇ ਸਕੋਰ ਨੂੰ ਵਧਾ ਸਕਦੇ ਹਨ, ਜਿਸ ਨਾਲ ਤਰੱਕੀ ਦਾ ਭਰਮ ਪੈਦਾ ਹੁੰਦਾ ਹੈ। UIUC ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਦਿਖਾਉਂਦਾ ਹੈ ਕਿ ਇਹ "ਸੁਧਾਰ" ਸ਼ਾਇਦ ਸਿਰਫ਼ ਗਲਤ ਉੱਤਰ ਕੁੰਜੀ (answer key) ਦੇ ਨਾਲ ਓਵਰਫਿਟਿੰਗ (overfitting) ਹੋ ਸਕਦਾ ਹੈ, ਜੋ ਕਿ ਅਸਲ ਡੇਟਾਬੇਸਾਂ 'ਤੇ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਘਟਾ ਸਕਦਾ ਹੈ ਜਿੱਥੇ ਸਹੀ ਤਰਕ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।

ਖੋਜਕਰਤਾਵਾਂ ਨੇ ਉਲਟ ਸਥਿਤੀ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਕੀਤਾ। ਮਾਡਲ ਅਤੇ "gold" ਕੁਐਰੀਆਂ ਦੋਵਾਂ ਨੂੰ ਪਾਰਸ (parse) ਕਰਨ ਤੋਂ ਬਾਅਦ, ਉਨ੍ਹਾਂ ਨੇ ਸੱਤ ਅਜਿਹੇ ਮਾਮਲੇ ਲੱਭੇ ਜਿੱਥੇ ਮਾਡਲ ਨੇ ਗਲਤੀ ਨਾਲ ਦੋ ਵੱਖ-ਵੱਖ ਕਾਲਮਾਂ ਨੂੰ ਇੱਕ ਵਿੱਚ ਮਿਲਾ ਦਿੱਤਾ ਸੀ। ਇਹਨਾਂ ਮਾਮਲਿਆਂ ਵਿੱਚ "gold" SQL ਸਹੀ ਸੀ। ਇੱਕ ਸੁਧਰੇ ਹੋਏ ਪ੍ਰੋਂਪਟ ਨਾਲ ਸਿਰਫ਼ ਉਹਨਾਂ ਅਸਲ ਗਲਤੀਆਂ ਨੂੰ ਨਿਸ਼ਾਨਾ ਬਣਾ ਕੇ, ਉਨ੍ਹਾਂ ਨੇ ਬੈਂਚਮਾਰਕ ਸਕੋਰ ਨੂੰ ਵਧਾਏ ਬਿਨਾਂ ਮਾਡਲ ਦੇ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਵਧਾਇਆ।

ਖੋਜ ਦੇ ਨਤੀਜਿਆਂ ਦਾ ਸਟੇਕਹੋਲਡਰਾਂ (stakeholders) ਲਈ ਕੀ ਮਤਲਬ ਹੈ

  • ਖੋਜਕਰਤਾ: BIRD ਸਕੋਰਾਂ 'ਤੇ ਅਧਾਰਤ ਪ੍ਰਕਾਸ਼ਨ ਦਾਅਵਿਆਂ ਵਿੱਚ ਐਨੋਟੇਸ਼ਨ ਦੀ ਗੁਣਵੱਤਾ ਬਾਰੇ ਇੱਕ ਚੇਤਾਵਨੀ ਦੀ ਲੋੜ ਹੈ। ਵੱਖ-ਵੱਖ ਖੋਜ ਪੱਤਰਾਂ ਵਿਚਕਾਰ ਤੁਲਨਾ ਅਸਲ ਵਿਧੀਗਤ ਤਰੱਕੀ ਦੀ ਬਜਾਏ ਬੈਂਚਮਾਰਕ ਨੋਇਜ਼ (noise) ਪ੍ਰਤੀ ਵੱਖ-ਵੱਖ ਸਹਿਣਸ਼ੀਲਤਾ ਨੂੰ ਦਰਸਾ ਸਕਦੀ ਹੈ।
  • ਪ੍ਰੋਡਕਟ ਟੀਮਾਂ: ਰਿਲੀਜ਼ ਦੀ ਤਿਆਰੀ ਲਈ ਇਕਲੌਤੇ ਮਾਪਦੰਡ ਵਜੋਂ BIRD 'ਤੇ ਨਿਰਭਰ ਰਹਿਣ ਨਾਲ ਅਜਿਹੇ ਮਾਡਲਾਂ ਨੂੰ ਲਾਂਚ ਕਰਨ ਦਾ ਖਤਰਾ ਹੁੰਦਾ ਹੈ ਜੋ ਗਲਤ ਕੁਐਰੀਆਂ ਨੂੰ ਦੁਹਰਾਉਣਾ ਸਿੱਖ ਚੁੱਕੇ ਹਨ। ਪ੍ਰੋਪਰਾਈਟਰੀ ਸਕੀਮਾ (proprietary schemas) 'ਤੇ ਅਸਲ ਦੁਨੀਆ ਦੀ ਜਾਂਚ ਜ਼ਰੂਰੀ ਹੋ ਜਾਂਦੀ ਹੈ।
  • ਬੈਂਚਮਾਰਕ ਕਿਊਰੇਟਰ: ਉੱਚ ਗਲਤੀ ਦੀ ਦਰ ਸੁਝਾਉਂਦੀ ਹੈ ਕਿ ਇੱਕ ਵਿਵਸਥਿਤ ਸਮੀਖਿਆ ਦੀ ਲੋੜ ਹੈ। "Gold" ਸੈੱਟ ਨੂੰ ਸਾਫ਼ ਕਰਨਾ ਜਾਂ ਇੱਕ ਸੈਕੰਡਰੀ "ਵੈਰੀਫਾਈਡ" (verified) ਸਪਲਿਟ ਪ੍ਰਦਾਨ ਕਰਨਾ ਭਰੋਸਾ ਬਹਾਲ ਕਰ ਸਕਦਾ ਹੈ।

ਇੱਕ ਵਿਵਹਾਰਕ ਆਡਿਟ ਵਰਕਫਲੋ (audit workflow)

UIUC ਦੀ ਟੀਮ ਇੱਕ ਹਲਕੀ ਪ੍ਰਕਿਰਿਆ ਦਾ ਪ੍ਰਸਤਾਵ ਦਿੰਦੀ ਹੈ ਜੋ ਕਿਸੇ ਵੀ Text-to-SQL ਬੈਂਚਮਾਰਕ 'ਤੇ ਲਾਗੂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ:

  1. ਪਾਰਸ (Parse) ਮਾਡਲ ਦੁਆਰਾ ਤਿਆਰ ਕੀਤੇ ਗਏ ਅਤੇ "gold" SQL ਸਟੇਟਮੈਂਟਸ ਦੋਵਾਂ ਨੂੰ ਐਬਸਟਰੈਕਟ ਸਿੰਟੈਕਸ ਟ੍ਰੀਜ਼ (abstract syntax trees) ਵਿੱਚ ਬਦਲੋ।
  2. ਅਲਾਈਨ (Align) ਚੁਣੇ ਗਏ ਕਾਲਮਾਂ, ਫਿਲਟਰਾਂ, ਜੋਇਨਾਂ (joins) ਅਤੇ ਐਗਰੀਗੇਸ਼ਨ ਫੰਕਸ਼ਨਾਂ ਵਿੱਚ ਅੰਤਰ ਨੂੰ ਪ੍ਰਗਟ ਕਰਨ ਲਈ ਢਾਂਚੇ ਨੂੰ।
  3. **ਟੈ