ಇಲινόಯ್ ವಿಶ್ವವಿದ್ಯಾಲಯದ ಅರ್ಬಾನಾ-ಚಾಂಪೇನ್ (University of Illinois Urbana-Champaign) ಸಂಶೋಧನಾ ತಂಡವು, ವ್ಯಾಪಕವಾಗಿ ಬಳಕೆಯಾಗುವ BIRD Text-to-SQL ಬೆಂಚ್ಮಾರ್ಕ್ನಲ್ಲಿನ ಅರ್ಧಕ್ಕಿಂತ ಹೆಚ್ಚು ಅಂಕನಗಳು (annotations) ತಪ್ಪಾಗಿವೆ ಎಂದು ಪತ್ತೆಹಚ್ಚಿದೆ. ಇದು ಅನೇಕ ಡೆವಲಪರ್ಗಳು ಅವಲಂಬಿಸಿರುವ ನಿಖರತೆಯ ಅಂಕಗಳ (accuracy scores) ಅರ್ಥವನ್ನೇ ಪ್ರಶ್ನಿಸುವಂತೆ ಮಾಡಿದೆ.
ಈ ಬೆಂಚ್ಮಾರ್ಕ್ ಏಕೆ ಮುಖ್ಯ
BIRD ಎಂಬುದು ಒಂದು ಮಾಡೆಲ್ ನೈಸರ್ಗಿಕ ಭಾಷೆಯ ಪ್ರಶ್ನೆಯನ್ನು SQL ಕ್ವೇರಿಯಾಗಿ ಎಷ್ಟು ಚೆನ್ನಾಗಿ ಪರಿವರ್ತಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ಅಳೆಯುವ ಪ್ರಮುಖ ಮಾನದಂಡವಾಗಿದೆ (de-facto standard). ಸಂಶೋಧನಾ ಪ್ರಬಂಧಗಳು, ಉತ್ಪನ್ನದ ಮಾಹಿತಿ ಪತ್ರಗಳು ಮತ್ತು ನೇಮಕಾತಿ ಪರೀಕ್ಷೆಗಳು BIRD ಅಂಕಗಳನ್ನು ಉಲ್ಲೇಖಿಸುತ್ತವೆ. ಸರಿಯಾದ ಉತ್ತರವನ್ನು ನಿರ್ಧರಿಸುವ "ಗೋಲ್ಡ್" (gold) SQL ಹೇಳಿಕೆಗಳು ದೋಷಪೂರಿತವಾಗಿದ್ದರೆ, ಉತ್ತಮ ಕ್ವೇರಿಯನ್ನು ಬರೆಯುವ ಮಾಡೆಲ್ಗೆ ಶಿಕ್ಷೆ (penalised) ಸಿಗಬಹುದು, ಆದರೆ ತಪ್ಪಾದ ಗೋಲ್ಡ್ ಉತ್ತರವನ್ನು ನಕಲು ಮಾಡುವ ಮಾಡೆಲ್ಗೆ ಬಹುಮಾನ ಸಿಗಬಹುದು.
ದೋಷದ ಪ್ರಮಾಣವು ಹೇಗೆ ಪತ್ತೆಯಾಯಿತು
UIUC ತಂಡವು BIRD-dev ವಿಭಾಗದ 238 ವೈಫಲ್ಯಗಳನ್ನು ಪರಿಶೀಲಿಸಿತು. ಪ್ರತಿಯೊಂದು ಮಾಡೆಲ್ ಔಟ್ಪುಟ್ ಏಕೆ ತಪ್ಪಾಗಿ ಎಂದು ಊಹಿಸುವ ಬದಲು, ಅವರು ಮಾಡೆಲ್ ಸೃಷ್ಟಿಸಿದ SQL ಮತ್ತು ಗೋಲ್ಡ್ ರೆಫರೆನ್ಸ್ ನಡುವಿನ ಪ್ರತಿಯೊಂದು ವ್ಯತ್ಯಾಸವನ್ನು ಮ್ಯಾನುಯಲ್ ಆಗಿ ಟ್ಯಾಗ್ ಮಾಡಿದರು. ಅವರ ತಪಾಸಣೆಯು 52.8% ಸಂದರ್ಭಗಳಲ್ಲಿ ಅಂಕನ ದೋಷಗಳಿವೆ ಎಂದು ಕಂಡುಕೊಂಡಿತು—ಅಂದರೆ ತಪ್ಪಾದ SQL, ಹೊಂದಾಣಿಕೆಯಿಲ್ಲದ ಸ್ಕೀಮಾ (schema), ಅಥವಾ ಸರಿಯಾಗಿ ರೂಪಿಸಲಾಗದ ನೈಸರ್ಗಿಕ ಭಾಷೆಯ ಪ್ರಶ್ನೆಗಳು.
ಒಂದು ಮಾದರಿಯು ಗುರುತಿಸಲಾದ ತಪ್ಪುಗಳಲ್ಲಿ 19% ರಷ್ಟನ್ನು ಒಳಗೊಂಡಿದೆ: ಮಾಡೆಲ್ DISTINCT ಅನ್ನು ಬಳಸಿತು ಆದರೆ ಗೋಲ್ಡ್ ಕ್ವೇರಿ ಬಳಸಲಿಲ್ಲ. ಉದಾಹರಣೆಗೆ, ಅಸಹಜ ಲ್ಯಾಬ್ ವರದಿಗಳನ್ನು ಹೊಂದಿರುವ ರೋಗಿಗಳ ಸಂಖ್ಯೆಯನ್ನು ಕೇಳುವ ಬಳಕೆದಾರರನ್ನು ಕಲ್ಪಿಸಿಕೊಳ್ಳಿ. ಗೋಲ್ಡ್ ಉತ್ತರವು COUNT(ID) ಬಳಸಿ ಸಾಲುಗಳನ್ನು ಎಣಿಸುತ್ತದೆ. ಒಬ್ಬ ರೋಗಿಗೆ ಐದು ಅಸಹಜ ಲ್ಯಾಬ್ ವರದಿಗಳಿದ್ದರೆ, ಗೋಲ್ಡ್ ಕ್ವೇರಿಯು ಒಂದರ ಬದಲಿಗೆ ಐದನ್ನು ವರದಿ ಮಾಡುತ್ತದೆ. ಮಾಡೆಲ್ನ COUNT(DISTINCT ID) ಪ್ರತಿ ರೋಗಿಯನ್ನು ಸರಿಯಾಗಿ ಒಮ್ಮೆ ಮಾತ್ರ ಎಣಿಸುತ್ತದೆ. ಇಂತಹ ಸಂದರ್ಭಗಳಲ್ಲಿ, ಮಾಡೆಲ್ನ ಉತ್ತರವು ಉದ್ದೇಶಿತ ಅರ್ಥಕ್ಕೆ ಹೆಚ್ಚು ಹೊಂದಿಕೆಯಾಗಿದ್ದರೂ ಸಹ, ಬೆಂಚ್ಮಾರ್ಕ್ ಮಾಡೆಲ್ ದೋಷವೆಂದು ದಾಖಲಿಸುತ್ತದೆ.
ಮಾಡೆಲ್ ಅಭಿವೃದ್ಧಿಯ ಮೇಲೆ ನೈಜ ಪ್ರಭಾವ
ಡೆವಲಪರ್ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಕಡಿಮೆ BIRD ಅಂಕಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸಿ, ಪ್ರಾಂಪ್ಟ್ಗಳನ್ನು (prompts) ಬದಲಾಯಿಸುವುದು, "don't use DISTINCT" ಎಂಬಂತಹ ನಿರ್ಬಂಧಗಳನ್ನು ಸೇರಿಸುವುದು ಅಥವಾ ಬೆಂಚ್ಮಾರ್ಕ್ ಡೇಟಾದ ಮೇಲೆ ಮರು-ತರಬೇತಿ (retraining) ನೀಡುವುದು ಮಾಡುತ್ತಾರೆ. ಅಂತಹ ಹೊಂದಾಣಿಕೆಗಳು ವರದಿಯಾದ ಅಂಕಗಳನ್ನು ಹೆಚ್ಚಿಸಬಹುದು, ಇದು ಪ್ರಗತಿಯ ಭ್ರಮೆಯನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ. UIUC ವಿಶ್ಲೇಷಣೆಯು ಈ "ಸುಧಾರಣೆ" ಕೇವಲ ತಪ್ಪಾದ ಉತ್ತರ ಕೀಲಿಗಳಿಗೆ ಓವರ್ಫಿಟ್ಟಿಂಗ್ (overfitting) ಆಗಿರಬಹುದು ಎಂದು ತೋರಿಸುತ್ತದೆ, ಇದು ಸರಿಯಾದ ತರ್ಕದ ಅಗತ್ಯವಿರುವ ನೈಜ ಡೇಟಾಬೇಸ್ಗಳಲ್ಲಿ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಕುಗ್ಗಿಸುವ ಸಾಧ್ಯತೆಯಿದೆ.
ಸಂಶೋಧಕರು ಇದಕ್ಕೆ ವಿರುದ್ಧವಾದ ಸನ್ನಿವೇಶವನ್ನು ಪ್ರದರ್ಶಿಸಿದರು. ಮಾಡೆಲ್ ಮತ್ತು ಗೋಲ್ಡ್ ಕ್ವೇರಿಗಳೆರಡನ್ನೂ ಪಾರ್ಸ್ ಮಾಡಿದ ನಂತರ, ಮಾಡೆಲ್ ಎರಡು ಪ್ರತ್ಯೇಕ ಕಾಲಮ್ಗಳನ್ನು ತಪ್ಪಾಗಿ ಒಂದೇ ಕಾಲಮ್ ಆಗಿ ವಿಲೀನಗೊಳಿಸಿದ ಏಳು ಸಂದರ್ಭಗಳನ್ನು ಅವರು ಗುರುತಿಸಿದರು. ಈ ಸಂದರ್ಭಗಳಲ್ಲಿ ಗೋಲ್ಡ್ SQL ಸರಿಯಾಗಿತ್ತು. ಪರಿಷ್ಕೃತ ಪ್ರಾಂಪ್ಟ್ ಮೂಲಕ ಕೇವಲ ಆ ನೈತಿಕ ದೋಷಗಳನ್ನು ಗುರಿಯಾಗಿಸಿಕೊಂಡು, ಅವರು ಬೆಂಚ್ಮಾರ್ಕ್ ಅಂಕವನ್ನು ಹೆಚ್ಚಿಸದೆ ಮಾಡೆಲ್ನ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೆಚ್ಚಿಸಿದರು.
ಈ ಸಂಶೋಧನೆಯ ಫಲಿತಾಂಶಗಳು ಪಾಲುದಾರರಿಗೆ ಏನನ್ನು ಸೂಚಿಸುತ್ತವೆ
- ಸಂಶೋಧಕರು (Researchers): BIRD ಅಂಕಗಳ ಆಧಾರದ ಮೇಲೆ ಪ್ರಕಟಿಸುವ ಪ್ರಬಂಧಗಳಲ್ಲಿ ಅಂಕನ ಗುಣಮಟ್ಟದ ಬಗ್ಗೆ ಎಚ್ಚರಿಕೆ ಇರಬೇಕು. ಪ್ರಬಂಧಗಳ ನಡುವಿನ ಹೋಲಿಕೆಗಳು ನಿಜವಾದ ವಿಧಾನೀಯ ಪ್ರಗತಿಯನ್ನು ತೋರಿಸುವ ಬದಲು ಬೆಂಚ್ಮಾರ್ಕ್ ಶಬ್ದಕ್ಕೆ (noise) ಹೊಂದಿರುವ ಸಹಿಷ್ಣುತೆಯನ್ನು ಪ್ರತಿಬಿಂಬಿಸಬಹುದು.
- ಉತ್ಪನ್ನ ತಂಡಗಳು (Product teams): ಬಿಡುಗಡೆಗೆ ಸಿದ್ಧತೆಯ ಏಕೈಕ ಮಾನದಂಡವಾಗಿ BIRD ಅನ್ನು ಅವಲಂಬಿಸುವುದು, ದೋಷಪೂರಿತ ಕ್ವೇರಿಗಳನ್ನು ಪುನರಾವರ್ತಿಸಲು ಕಲಿತ ಮಾಡೆಲ್ಗಳನ್ನು ಮಾರುಕಟ್ಟೆಗೆ ತರುವ ಅಪಾಯವನ್ನು ಹೊಂದಿದೆ. ಸ್ವಂತ ಸ್ಕೀಮಾಗಳ ಮೇಲೆ ನೈಜ ಪ್ರಪಂಚದ ಪರೀಕ್ಷೆಗಳು ಅತ್ಯಗತ್ಯವಾಗುತ್ತವೆ.
- ಬೆಂಚ್ಮಾರ್ಕ್ ಕ್ಯುರೇಟರ್ಗಳು (Benchmark curators): ಹೆಚ್ಚಿನ ದೋಷದ ಪ್ರಮಾಣವು ವ್ಯವಸ್ಥಿತ ವಿಮರ್ಶೆಯ ಅಗತ್ಯವನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಗೋಲ್ಡ್ ಸೆಟ್ ಅನ್ನು ಸ್ವಚ್ಛಗೊಳಿಸುವುದು ಅಥವಾ ದ್ವಿತೀಯ "ಪರಿಣತ" (verified) ವಿಭಾಗವನ್ನು ಒದಗಿಸುವುದು ವಿಶ್ವಾಸವನ್ನು ಮರುಸ್ಥಾಪಿಸಬಹುದು.
ಒಂದು ಪ್ರಾಯೋಗಿಕ ಆಡಿಟ್ ವರ್ಕ್ಫ್ಲೋ (Audit workflow)
UIUC ತಂಡವು ಯಾವುದೇ Text-to-SQL ಬೆಂಚ್ಮಾರ್ಕ್ಗೆ ಅನ್ವಯಿಸಬಹುದಾದ ಲಘು ಪ್ರಕ್ರಿಯೆಯನ್ನು ಪ್ರಸ್ತಾಪಿಸುತ್ತದೆ:
- ಪಾರ್ಸ್ (Parse) ಮಾಡೆಲ್ ಸೃಷ್ಟಿಸಿದ ಮತ್ತು ಗೋಲ್ಡ್ SQL ಹೇಳಿಕೆಗಳೆರಡನ್ನೂ ಅಬ್ಸ್ಟ್ರಾಕ್ಟ್ ಸಿಂಟ್ಯಾಕ್ಸ್ ಟ್ರೀಗಳಾಗಿ (abstract syntax trees) ಪರಿವರ್ತಿಸಿ.
- ಅಲೈನ್ (Align) ಆಯ್ಕೆ ಮಾಡಿದ ಕಾಲಮ್ಗಳು, ಫಿಲ್ಟರ್ಗಳು, ಜೋಯಿನ್ಗಳು (joins) ಮತ್ತು ಅಗ್ಗregation ಫಂಕ್ಷನ್ಗಳಲ್ಲಿನ ವ್ಯತ್ಯಾಸಗಳನ್ನು ಬಹಿರಂಗಪಡಿಸಲು ರಚನೆಗಳನ್ನು ಜೋಡಿಸಿ.
- ಟ್ಯಾಗ್ (Tag) ಪ್ರತಿಯೊಂದು ವ್ಯತ್ಯಾಸವನ್ನು ಗುರುತಿಸಿ (ಉದಾಹರಣೆಗೆ, ಹೆಚ್ಚುವರಿ ಕಾಲಮ್, ಕಾಣೆಯಾದ ಫಿಲ್ಟರ್, ತಪ್ಪಾದ ಅಗ್ಗregation).
- ಸಾರಾಂಶ (Summarize) ಪ್ರಮುಖ ದೋಷ ವರ್ಗಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಲು ಹಿಸ್ಟೋಗ್ರಾಮ್ನಲ್ಲಿ ಟ್ಯಾಗ್ಗಳನ್ನು ಸಾರಾಂಶಗೊಳಿಸಿ.
- ಪರಿಣತಗೊಳಿಸಿ (Validate) ಪ್ರಾಂಪ್ಟ್ ಇಂಜಿನಿಯರಿಂಗ್ಗಾಗಿ ಬಳಸುವ ಮೊದಲು ಪ್ರತಿಯೊಂದು ಹೆಚ್ಚಿನ ಫ್ರೀಕ್ವೆನ್ಸಿ ಟ್ಯಾಗ್ಗೆ ಗೋಲ್ಡ್ ಕ್ವೇರಿಯನ್ನು ಪರಿಶೀಲಿಸಿ.
ಗೋಲ್ಡ್ ಉತ್ತರವು ನಿಶ್ಚಿತವಾಗಿ ಸರಿಯಾಗಿರುವ ಸಂದರ್ಭಗಳಲ್ಲಿ ಮಾತ್ರ ಪ್ರಾಂಪ್ಟ್ ತಿದ್ದುಪಡಿಗಳ ಮೇಲೆ ಗಮನ ಕೇಂದ್ರೀಕರಿಸುವ ಮೂಲಕ, ಡೆವಲಪರ್ಗಳು "ದೋಷಪೂರಿತ ಮೆಟ್ರಿಕ್ಗಾಗಿ ಆಪ್ಟಿಮೈಸ್ ಮಾಡುವ" ಬಲೆಗೆ ಬೀಳುವುದನ್ನು ತಪ್ಪಿಸಬಹುದು.
ಸಾರಾಂಶ
ತನ್ನ ಉದಾಹರಣೆಗಳಲ್ಲಿ ಅರ್ಧಕ್ಕಿಂತ ಹೆಚ್ಚು ತಪ್ಪುಗಳನ್ನು ಗುರುತಿಸುವ ಬೆಂಚ್ಮಾರ್ಕ್ ವಿಶ್ವಾಸಾರ್ಹ ಮಾನದಂಡವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ. BIRD ಗುರುತಿಸಿದ ಅನೇಕ "ತಪ್ಪುಗಳು" ವಾಸ್ತವವಾಗಿ ಮಾಡೆಲ್ನ ಯಶಸ್ಸುಗಳಾಗಿವೆ, ಆದರೆ ನೈಜ ದೋಷಗಳು ಸರಿಯಾದ ಗೋಲ್ಡ್ ಉತ್ತರಗಳ ಹಿಂದೆ ಅಡಗಿವೆ ಎಂದು UIUC ಅಧ್ಯಯನವು ತೋರಿಸುತ್ತದೆ. ಗೋಲ್ಡ್ ಸೆಟ್ ಅನ್ನು ಆಡಿಟ್ ಮಾಡುವುದು, ಮೌಲ್ಯಮಾಪನ ಪೈಪ್ಲೈನ್ಗಳನ್ನು ಪರಿಷ್ಕರಿಸುವುದು ಮತ್ತು ಬೆಂಚ್ಮಾರ್ಕ್ ಅಂಕಗಳನ್ನು ವಿಶಾಲವಾದ ಮೌಲ್ಯೀಕರಣ ಕಾರ್ಯತಂತ್ರದ ಒಂದು ಭಾಗವಾಗಿ ಪರಿಗಣಿಸುವುದು ಮಾತ್ರ ಕಾಗದದ ಮೇಲಿನ ಸುಧಾರಣೆಗಳು ನೈಜ ಪ್ರಪಂಚದ ವಿಶ್ವಾಸಾರ್ಹತೆಯಲ್ಲಿ ಪರಿವರ್ತನೆಯಾಗುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವ ಏಕೈಕ ಮಾರ್ಗಗಳಾಗಿವೆ.
