Measuring whether an LSTM actually learned what you wanted
16 min read
Created ৫ আগ, ২০২৬
भूमिका (Motivation)
ট্রেনিং লস ক্রমাগত হ্রাস পাওয়া কেবল এটাই প্রমাণ করে যে মডেলটি কোনো না কোনো প্যাটার্ন শিখছে। কিন্তু এটি নিজে থেকে কখনো বলে না যে মডেলটি বাস্তব জীবনে সত্যিই কতটা দরকারী, কিংবা আপনার সুনির্দিষ্ট লক্ষ্য অর্জনের জন্য দুটি মডেলের মধ্যে কোনটি বেশি ভালো। এই চ্যাপ্টারে আমরা এমন কিছু ইভ্যালুয়েশন মেট্রিক্স (evaluation metrics) তৈরি ও আলোচনা করব যা আমাদের বাস্তব প্রজেক্ট চ্যাপ্টারের মডেলগুলোকে নিখুঁতভাবে যাচাই করতে সাহায্য করবে — যার মধ্যে ক্লাসিফিকেশন মেট্রিক্স, রিগ্রেশন মেট্রিক্স এবং টাইম সিরিজের বিশেষ ফোরকাস্টিং মেট্রিক্স অন্তর্ভুক্ত থাকবে।
ক্লাসিফিকেশন মেট্রিক্স (Classification Metrics)
ধরা যাক, একটি বাইনারি ক্লাসিফায়ার (binary classifier) ইনপুটের সাপেক্ষে প্রবাবিলিটি বা সম্ভাবনা আউটপুট দেয়, যা একটি নির্দিষ্ট থ্রেশহোল্ড (সাধারণত ০.৫) দ্বারা বাইনারি লেবেল y^∈{0,1}-এ রূপান্তর করা হয় এবং আসল লেবেল y∈{0,1}-এর সাথে তুলনা করা হয়।
প্রতিটি ক্লাসিফিকেশন মেট্রিক মূলত চারটি গণনার ওপর ভিত্তি করে তৈরি (যাকে Confusion Matrix বলা হয়):
একটি বাইনারি কনফিউশন ম্যাট্রিক্সের (Confusion Matrix) চারটি সেল বা ঘর
টার্ম / শব্দ
অর্থ
বাস্তব উদাহরণ (স্প্যাম ফিল্টার)
True Positive (TP)
প্রেডিকশন ১, বাস্তবেও ১
স্প্যাম ইমেইলকে স্প্যাম হিসেবে শনাক্ত করা — সঠিক
True Negative (TN)
প্রেডিকশন ০, বাস্তবেও ০
ভালো ইমেইলকে ইনবক্সে ঢুকতে দেওয়া — সঠিক
False Positive (FP)
প্রেডিকশন ১, বাস্তবে ০
ভালো ইমেইলকে ভুল করে স্প্যাম ফোল্ডারে পাঠানো — ভুল
অসামঞ্জস্যপূর্ণ ডেটায় Accuracy অত্যন্ত বিভ্রান্তিকর হতে পারে
যদি আপনার ডেটাসেটে কেবল ১% ট্রানজেকশন জালিয়াতি বা ফ্রড (fraud) হয়, তবে একটি মডেল যদি চোখ বন্ধ করে সব ট্রানজেকশনকেই "সঠিক বা নট-ফ্রড" বলে দেয়, তবে সেটির Accuracy কিন্তু ৯৯% দেখাবে অথচ সে একটি জালিয়াতিও ধরতে পারেনি। যখন ক্লাসগুলো অসামঞ্জস্যপূর্ণ (imbalanced data) হয় — যা ফ্রড ডিটেকশন, মেডিকেল ডায়াগনোসিস কিংবা বিরল ঘটনা শনাক্তকরণের ক্ষেত্রে খুবই সাধারণ — তখন Accuracy পরিহার করে Precision, Recall, F1-score কিংবা AUC-কে বেশি প্রাধান্য দিন।
ROC কার্ভ এবং AUC (ROC Curve & AUC)
Precision, Recall এবং F1-score প্রতিটিই একটি নির্দিষ্ট ডিসিশন থ্রেশহোল্ডের (decision threshold) ওপর নির্ভর করে। অন্যদিকে, ROC কার্ভ প্রতিটি সম্ভাব্য থ্রেশহোল্ডের জন্য True Positive Rate বনাম False Positive Rate-এর গ্রাফ তৈরি করে, এবং AUC (Area Under the Curve) ওই সম্পূর্ণ কার্ভটিকে ০ থেকে ১-এর মধ্যকার একটি একক সংখ্যায় প্রকাশ করে।
AUC-এর প্রবাবিলিস্টিক ব্যাখ্যা: এর অর্থ হলো, মডেলটি একটি র্যান্ডম পজিটিভ উদাহরণকে একটি র্যান্ডম নেগেটিভ উদাহরণের চেয়ে বেশি স্কোর বা অগ্রাধিকার দেওয়ার সম্ভাবনা কতটুকু। AUC ০.৫ হওয়ার অর্থ হলো র্যান্ডম অনুমানের সমান; এবং ১.০ হওয়ার অর্থ হলো নিখুঁতভাবে দুটি ক্লাস আলাদা করতে পারা।
python
রিগ্রেশন মেট্রিক্স (Regression Metrics)
টাইম সিরিজ পূর্বাভাসের ক্ষেত্রে যেখানে মডেল কন্টিনিউয়াস বা দশমিক সংখ্যা আউটপুট দেয়, সেখানে ব্যবহৃত মেট্রিকসমূহ:
MAPE সূত্রে আসল মান yi দিয়ে ভাগ করা হয়। যদি আপনার ডেটাতে কোনো আসল মান ০ বা তার খুব কাছাকাছি থাকে (যেমন কোনো পণ্যের শূন্য সেলস), তবে MAPE অসীম বা জ্যোতির্বৈজ্ঞানিক রকমের বড় হয়ে যায়। সেই ক্ষেত্রে অবশ্যই SMAPE বা MAE ব্যবহার করবেন।
python
সঠিক মেট্রিক নির্বাচন করা (Choosing the Right Metric)
কাজের ধরণ অনুযায়ী মেট্রিক নির্বাচন নির্দেশিকা
কাজের ধরণ
প্রধান মেট্রিক (Primary)
সহকারী মেট্রিক (Secondary)
বাইনারি ক্লাসিফিকেশন (ব্যালেন্সড)
Accuracy অথবা F1-score
AUC-ROC
বাইনারি ক্লাসিফিকেশন (ইম্বালেন্সড)
F1-score অথবা AUC-ROC
Precision ও Recall আলাদাভাবে
মাল্টি-ক্লাস ক্লাসিফিকেশন
Macro F1-score
Confusion Matrix
রিগ্রেশন / ফোরকাস্টিং
RMSE অথবা MAE
R² অথবা MAPE
ফোরকাস্টিং (শূন্যের কাছাকাছি মান যুক্ত)
MAE অথবা SMAPE
RMSE
মূল বিষয়গুলো (Key Takeaways)
Key Takeaways
ক্লাসিফিকেশন: Accuracy, Precision, Recall এবং F1-score তৈরি হয় TP, TN, FP, FN থেকে; অসামঞ্জস্যপূর্ণ ডেটায় কেবল Accuracy দিয়ে মূল্যায়ন করবেন না।
AUC থ্রেশহোল্ডের ওপর নির্ভর করে না এবং এটি মডেলের র্যাংকিং কোয়ালিটি পরিমাপ করে (০.৫ = র্যান্ডম অনুমান, ১.০ = নিখুঁত)।
রিগ্রেশন: MAE আউটলায়ারের বিরুদ্ধে শক্তিশালী; RMSE বড় ভুলকে বেশি শাস্তি দেয়; R² মডেলের ব্যাখ্যা করার ক্ষমতা পরিমাপ করে।
MAPE শতকরা হিসাব দেয় যা সহজে বোঝা যায়, তবে আসল মান শূন্য হলে এটি কাজ করে না; সেই ক্ষেত্রে SMAPE ব্যবহার করতে হবে।
ট্রেনিং শুরুর আগেই আপনার মেট্রিক সিলেক্ট করুন, ফলাফল দেখার পর নয় — ট্রেনিং শেষে মেট্রিক বদলানো এক ধরণের ওভারফিটিং।
ইন্টারভিউ কর্নার (Interview Corner)
Quick Check
বাস্তব প্র্যাকটিসে এর ভূমিকা
মেশিন লার্নিংয়ের প্রতিটি গবেষণাপত্রে অন্তত একটি মেট্রিক এই চ্যাপ্টার থেকে ব্যবহৃত হয়। আপনার কাজের জন্য সঠিক মেট্রিকটি বেছে নিতে পারা — এবং কেন অন্যান্য মেট্রিক ব্যবহার করলে তা বিভ্রান্তিকর হতো তা ব্যাখ্যা করতে পারা — বাস্তব প্রজেক্ট বা ইন্টারভিউ বোর্ডে আপনার গভীর মেশিন লার্নিং দক্ষতার একটি অন্যতম শক্তিশালী পরিচয়।