𝗪𝗵𝘆 𝗬𝗼𝘂𝗿 𝗔𝗜 𝗖𝗼𝗻𝗳𝗶𝗱𝗲𝗻𝗰𝗲 𝗦𝗰𝗼𝗿𝗲𝘀 𝗟𝘆𝗲
ਤੁਸੀਂ ਆਪਣਾ ਮਾਡਲ ਟ੍ਰੇਨ ਕੀਤਾ। ਮੈਟ੍ਰਿਕਸ (metrics) ਬਹੁਤ ਵਧੀਆ ਲੱਗੇ। ਤੁਸੀਂ ਇਸਨੂੰ ਡਿਪਲੋਏ (deploy) ਕਰ ਦਿੱਤਾ।
ਛੇ ਮਹੀਨਿਆਂ ਬਾਅਦ, ਕੁਝ ਗਲਤ ਹੋ ਰਿਹਾ ਹੈ। ਤੁਹਾਡਾ ਐਕਯੂਰੇਸੀ ਡੈਸ਼ਬੋਰਡ (accuracy dashboard) ਠੀਕ ਲੱਗ ਰਿਹਾ ਹੈ, ਪਰ ਮਾਡਲ ਫੇਲ ਹੋ ਰਿਹਾ ਹੈ।
ਇਹ ਡਿਸਟ੍ਰੀਬਿਊਸ਼ਨ ਸ਼ਿਫਟ (distribution shift) ਕਾਰਨ ਹੁੰਦਾ ਹੈ। ਪ੍ਰੋਡਕਸ਼ਨ (production) ਵਿੱਚ ਡਾਟਾ ਤੁਹਾਡੇ ਟ੍ਰੇਨਿੰਗ ਡਾਟਾ ਨਾਲੋਂ ਵੱਖਰਾ ਹੈ। ਇਹ ਸ਼ਿਫਟ ਕੈਲੀਬ੍ਰੇਸ਼ਨ (calibration) ਨੂੰ ਵਿਗਾੜ ਦਿੰਦਾ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ Mixture-of-Experts (MoE) ਆਰਕੀਟੈਕਚਰ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਇੱਕ ਖਾਸ ਜੋਖਮ ਦਾ ਸਾਹਮਣਾ ਕਰਨਾ ਪੈਂਦਾ ਹੈ।
ਕੈਲੀਬ੍ਰੇਸ਼ਨ ਦਾ ਮਤਲਬ ਹੈ ਕਿ ਜੇਕਰ ਕੋਈ ਮਾਡਲ ਕਹਿੰਦਾ ਹੈ ਕਿ ਉਹ 80% ਕਾਨਫੀਡੈਂਟ (confident) ਹੈ, ਤਾਂ ਉਹ 80% ਸਮੇਂ ਸਹੀ ਹੁੰਦਾ ਹੈ। Soft routing ਵਾਲੇ MoE ਮਾਡਲਾਂ ਵਿੱਚ, ਇਹ ਚੁੱਪਚਾਪ ਟੁੱਟ ਜਾਂਦਾ ਹੈ।
Soft routing ਨਤੀਜਾ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਕਈ experts ਨੂੰ ਮਿਲਾਉਂਦਾ ਹੈ। ਭਾਵੇਂ ਹਰ expert ਕੈਲੀਬ੍ਰੇਟਡ ਹੋਵੇ, ਪਰ ਜਦੋਂ ਇਨਪੁਟ ਡਾਟਾ ਬਦਲਦਾ ਹੈ ਤਾਂ ਕੰਬਾਈਨਡ ਸਕੋਰ ਭਰੋਸੇਯੋਗ ਨਹੀਂ ਰਹਿੰਦਾ। ਵੱਖਰੇ ਰੂਟਿੰਗ ਪੈਟਰਨ ਦਿਖਾਈ ਦਿੰਦੇ ਹਨ ਜੋ ਮਾਡਲ ਨੇ ਟ੍ਰੇਨਿੰਗ ਦੌਰਾਨ ਨਹੀਂ ਦੇਖੇ ਸਨ।
Hard routing ਵਧੇਰੇ ਮਜ਼ਬੂਤ (robust) ਹੈ। ਇਹ ਇਨਪੁਟ ਨੂੰ ਸਿਰਫ਼ ਇੱਕ ਹੀ expert ਨੂੰ ਭੇਜਦਾ ਹੈ। ਕਾਨਫੀਡੈਂਸ ਉਸ ਖਾਸ expert ਨਾਲ ਜੁੜੀ ਰਹਿੰਦੀ ਹੈ।
ਇਸ ਨੂੰ ਕਿਵੇਂ ਠੀਕ ਕਰੀਏ:
- Adversarial Reweighting ਦੀ ਵਰਤੋਂ ਕਰੋ: ਆਪਣੇ ਮਾਡਲ ਨੂੰ ਔਖੇ ਉਦਾਹਰਣਾਂ (hard examples) 'ਤੇ ਟ੍ਰੇਨ ਕਰੋ। ਟ੍ਰੇਨਿੰਗ ਦੌਰਾਨ high-loss ਉਦਾਹਰਣਾਂ 'ਤੇ ਜ਼ੋਰ ਦੇਣ ਲਈ ਇੱਕ exponential tilt ਦੀ ਵਰਤੋਂ ਕਰੋ।
- Robust Filtered Loss ਦੀ ਵਰਤੋਂ ਕਰੋ: ਉਨ੍ਹਾਂ ਕੇਸਾਂ 'ਤੇ ਟ੍ਰੇਨਿੰਗ ਕੇਂਦਰਿਤ ਕਰੋ ਜਿੱਥੇ experts ਦਾ ਮਿਸ਼ਰਣ (blend) ਇੱਕ ਸਿੰਗਲ expert ਨਾਲੋਂ ਮਾੜਾ ਪ੍ਰਦਰਸ਼ਨ ਕਰਦਾ ਹੈ।
ਹੁਣੇ ਕੀ ਕਰਨਾ ਹੈ:
- Expected Calibration Error (ECE) ਦੀ ਨਿਗਰਾਨੀ ਕਰੋ: ਟ੍ਰੈਕ ਕਰੋ ਕਿ ਕੀ ਤੁਹਾਡੇ ਕਾਨਫੀਡੈਂਸ ਸਕੋਰ ਤੁਹਾਡੀ ਅਸਲ ਐਕਯੂਰੇਸੀ ਨਾਲ ਮੇਲ ਖਾਂਦੇ ਹਨ।
- Reliability Diagrams ਬਣਾਓ: ਉਨ੍ਹਾਂ ਕਰਵਾਂ (curves) 'ਤੇ ਨਜ਼ਰ ਰੱਖੋ ਜੋ ਡਾਇਗੋਨਲ ਲਾਈਨ (diagonal line) ਤੋਂ ਦੂਰ ਹੁੰਦੇ ਹਨ।
- Input Drift ਨੂੰ ਟ੍ਰੈਕ ਕਰੋ: ਇਹ ਦੇਖਣ ਲਈ Kolmogorov-Smirnov ਵਰਗੇ ਟੈਸਟਾਂ ਦੀ ਵਰਤੋਂ ਕਰੋ ਕਿ ਕੀ ਤੁਹਾਡਾ ਪ੍ਰੋਡਕਸ਼ਨ ਡਾਟਾ ਬਦਲ ਗਿਆ ਹੈ।
- Temperature Scaling ਦੀ ਵਰਤੋਂ ਕਰੋ: ਇਹ ਡਿਪਲੋਇਮੈਂਟ ਤੋਂ ਬਾਅਦ ਕਾਨਫੀਡੈਂਸ ਸਕੋਰਾਂ ਨੂੰ ਠੀਕ ਕਰਨ ਲਈ ਇੱਕ ਤੇਜ਼ ਪੈਚ (patch) ਹੈ, ਹਾਲਾਂਕਿ ਇਹ ਕੋਈ ਸਥਾਈ ਹੱਲ ਨਹੀਂ ਹੈ।
ਕੈਲੀਬ੍ਰੇਸ਼ਨ ਇੱਕ ਸਿਸਟਮ ਦੀ ਵਿਸ਼ੇਸ਼ਤਾ ਹੈ। ਕੈਲੀਬ੍ਰੇਟਡ ਹਿੱਸੇ ਹਮੇਸ਼ਾ ਇੱਕ ਕੈਲੀਬ੍ਰੇਟਡ ਪੂਰਾ ਸਿਸਟਮ ਨਹੀਂ ਬਣਾਉਂਦੇ।
ਕੀ ਤੁਸੀਂ ਪ੍ਰੋਡਕਸ਼ਨ ਵਿੱਚ ਕੈਲੀਬ੍ਰੇਸ਼ਨ ਡ੍ਰਿਫਟ (calibration drift) ਦਾ ਸਾਹਮਣਾ ਕੀਤਾ ਹੈ? ਮੈਨੂੰ ਕੁਮੈਂਟਸ ਵਿੱਚ ਆਪਣਾ ਮਾਨੀਟਰਿੰਗ ਸੈੱਟਅੱਪ ਦੱਸੋ।
Optional learning community: https://t.me/GyaanSetuAi