মডেল ইভ্যালুয়েশন বা মূল্যায়ন (Model Evaluation)
ধরা যাক, একটি ফ্রি ক্লিনিকের একজন ডাক্তার বছরে ১,০০০ জন রোগী দেখেন। এদের মধ্যে মাত্র ১০ জনের আসলেই একটি বিরল রোগ বা রেয়ার ডিজিজ (rare disease) আছে। একদিন, সেই ক্লিনিকে রোগ শনাক্ত করার জন্য একটি নতুন এআই ডায়াগনস্টিক টুল (AI diagnostic tool) আনা হলো। ডাক্তারটি ১,০০০ জন রোগীর ওপরই এই টুলটি চালালেন, এবং টুলটি একটি ফলাফল ঘোষণা করলো: "এখানকার কারোই কোনো রোগ নেই!"
অ্যাকুরেসি (Accuracy) বা নির্ভুলতা? ৯৯%। বেশ দারুণ বা ইমপ্রেসিভ খবর, তাই না?
কিন্তু এটি আসলে সেই ১০ জন মানুষকেই মিস করেছে বা ধরতে পারেনি, যাদের আসলেই এই রোগটি ছিল। ফলে ওই ১০ জন রোগী এ কথা ভেবেই ক্লিনিক থেকে বেরিয়ে যাবেন যে তারা একেবারে সুস্থ। এই মডেলটি ৯৯% অ্যাকুরেট হলেও, এটি বাস্তবে ১০০% ইউজলেস বা পুরোপুরি অকেজো।
আর ঠিক এই কারণেই বাস্তব দুনিয়ার সমস্যাগুলোর ক্ষেত্রে শুধু অ্যাকুরেসির ওপর নির্ভর করাটা খুবই জঘন্য একটি ব্যাপার। এ ধরনের সমস্যা সমাধানের জন্য আমাদের কাছে ইভ্যালুয়েশন পরিমাপ করার বেশ কিছু শক্তিশালী মেট্রিক বা টুলকিট (toolkit) রয়েছে, যেগুলোর প্রতিটি এখানকার মডেলের পারফরম্যান্সের বিভিন্ন গুরুত্বপূর্ণ দিকগুলোকে পরখ করতে আর তা সবার সামনে তুলে ধরতে সাহায্য করে।
অ্যাকুরেসির বাইরেও আরও যা কিছু আছে: দ্য মেট্রিকস টুলকিট (Beyond accuracy: the metrics toolkit)
প্রিসিশন ও রিকল (Precision & Recall)
- প্রিসিশন (Precision): মডেলটি যাদের অসুস্থ (sick) হিসেবে অ্যালার্ম দিয়েছে বা ফ্ল্যাগ করেছে, তাদের মধ্যে ঠিক কতজন আসলেই অসুস্থ ছিলেন? (অ্যালার্মের মান বা কোয়ালিটি)
- রিকল (Recall): আসলেই অসুস্থ থাকা সকল রোগীদের মধ্যে, এই মডেলটি ঠিক কতজনকে ধরতে পেরেছে? (কভারেজ)
এফ১ স্কোর (F1 Score)
এটি প্রিসিশন (precision) এবং রিকল-এর (recall) হারমোনিক মিন (harmonic mean)। এর যে কোনো একটি কম হলেই, এটি আপনাকে কড়া পেনাল্টি (penalty) দেয়। উদাহরণস্বরূপ, যদি কোনো মডেলের ৯৯% প্রিসিশন কিন্তু মাত্র ১% রিকল থাকে, তবে এর সাধারণ গড়ের (average) মতো ৫০% হওয়ার বদলে, এটি মূলত ~০.০২ এফ১ (F1) স্কোর পায়।
আরওসি কার্ভ এবং এইউসি (ROC Curve & AUC)
বেশিরভাগ ক্লাসিফায়ারগুলোই শুধু "হ্যাঁ/না (yes/no)"-তে উত্তর দেয় না — এর বদলে এগুলো একটি সম্ভাবনা বা প্রবাবিলিটি (probability) (যেমন: "রোগ হওয়ার ৭৮% (78%) সম্ভাবনা রয়েছে") হিসেবে এর উত্তর বা আউটপুটগুলো দেয়। আপনি যখন ডিসিশন থ্রেশহোল্ডটিকে (decision threshold) ০% থেকে ১০০%-এ নিয়ে যান, তখন এর ট্রু পজেটিভ রেট (True Positive Rate) বনাম ফলস পজেটিভ রেটের (False Positive Rate) প্লটগুলো ঠিক কীরকম দেখায়, এখানকার আরওসি কার্ভটি (ROC curve) মূলত সেটিই নির্দেশ করে।
এইউসি (AUC) বা এরিয়া আন্ডার দ্য কার্ভ (Area Under the Curve) মূলত এই আরওসি কার্ভটিকে একটি একক নম্বর বা সিঙ্গেল নাম্বার হিসেবে তুলে ধরে: যেখানে ১.০ = পারফেক্ট (perfect) বা নিখুঁত, এবং ০.৫ = রেন্ডম গেসিং (random guessing) বা অন্ধকারে ঢিল ছোঁড়া বোঝায়।
অ্যাকশনে কম্প্রিহেনসিভ বা আরও ডিটেইল মডেল ইভ্যালুয়েশন (Comprehensive Model Evaluation)
সঠিক মেট্রিক বেছে নেওয়া (Choosing the right metric)
| ব্যবহারের ক্ষেত্র (Use Case) | প্রায়োরিটি বা অগ্রাধিকার (Priority) | সেরা মেট্রিক (Best Metric) |
|---|---|---|
| স্প্যাম ফিল্টার (Spam filter) | কখনোই আসল ইমেইলগুলো ব্লক না করা | বেশি নিখুঁততা (High Precision) |
| ক্যান্সার শনাক্তকরণ (Cancer detection) | কোনো ক্যান্সার রোগী যেন বাদ না পড়ে যায় | হাই রিকল (High Recall) |
| ব্যালেন্সড ডেটাসেট (Balanced dataset) | সামগ্রিক বা ওভারঅল পারফরম্যান্স (Overall performance) | অ্যাকুরেসি (Accuracy) বা F1 |
| ক্লাসিফায়ারগুলোর মধ্যে তুলনা করা (Comparing classifiers) | থ্রেশহোল্ড স্বাধীন (Threshold-independent) | ROC-AUC |
থ্রেশহোল্ড ট্রেড-অফ (The threshold tradeoff)
বেশিরভাগ ক্লাসিফায়ার মূলত আপনাকে শুধু এর হওয়ার সম্ভাবনাটি (probability) জানিয়ে দেয়। এরপর এর কাট-অফ পয়েন্টটি কী হবে, তার সিদ্ধান্ত আপনাকেই নিতে হয়। আপনি কি এটি ৫০% (50%) এ সেট করবেন? সেটিই হলো এখানকার সাধারণ বা স্ট্যান্ডার্ড নিয়ম। আপনি কি সেটি ২০% এ নামিয়ে আনবেন? এতে আপনি অনেক বেশি আসল বা ট্রু-পজিটিভ রোগী ধরতে পারবেন ঠিকই, তবে এতে আপনার আগের চেয়ে বেশি ফলস অ্যালার্মও (false alarms) বেড়ে যাবে। একটি আরওসি কার্ভ বা গ্রাফ মূলত আপনাকে এখানকার সম্ভাব্য সব ধরনের ট্রেড-অফ (tradeoff) এবং থ্রেশহোল্ডগুলো (thresholds) দেখায়, যাতে করে আপনি নিজেই আপনার জন্য সবচেয়ে ভালো সিদ্ধান্তটি নিতে পারেন।
Key Metrics
ছোট কুইজ
পড়া চালিয়ে যান