ML ও Statistics Interview: overfitting, leakage, metrics, feature engineering, probability

ML/stats question bank (Series 10, Episode 05)

🟡 INTERMEDIATE Series 10 — AI/ML Engineer হিসেবে চাকরি Episode 05 / 10

📑 এই পর্বে যা যা আছে

🧩 ১. গল্প: "accuracy ৯৯%!" — তবু reject

Rahim ML round-এ বলল, "আমার fraud detection model-এর accuracy ৯৯%!" ভেবেছিল interviewer মুগ্ধ হবে। কিন্তু interviewer শুধু জিজ্ঞেস করল — "dataset-এ কত শতাংশ transaction fraud ছিল?" Rahim: "প্রায় ১%।" Interviewer মাথা নাড়ল।

Nila পরে বুঝিয়ে দিল:

"যদি ১% fraud হয়, তাহলে একটা model যেটা সবসময় বলে 'fraud না' — তারও accuracy ৯৯%! তোমার model হয়তো একটা fraud-ও ধরেনি, তবু accuracy ৯৯%। এই কারণেই imbalanced problem-এ accuracy মিথ্যা বলে। interviewer এটাই দেখতে চেয়েছিল — তুমি metric বোঝো, নাকি শুধু বড় সংখ্যা বলছ।"

এই পর্ব একটা question bank — প্রতিটা core ML/stats ধারণা, interviewer কী শুনতে চায়, আর তুমি কীভাবে উত্তর দেবে।

🤔 ২. সমস্যা: buzzword জানা vs বোঝা

ML interview-তে interviewer buzzword-এর সংজ্ঞা নয়, বোঝাপড়া খোঁজে। "overfitting মানে model বেশি শেখে" — এই মুখস্থ উত্তর দুর্বল। "overfitting মানে model training data-র noise-ও মুখস্থ করে ফেলে, তাই training accuracy বেশি কিন্তু test-এ খারাপ; আমি এটা এভাবে ধরি ও এভাবে ঠেকাই" — এটা শক্তিশালী।

সূত্র: প্রতিটা উত্তরে থাকুক — (১) এক লাইনে সংজ্ঞা, (২) কীভাবে চিনি/ধরি, (৩) কীভাবে সমাধান করি, (৪) একটা বাস্তব উদাহরণ (আদর্শভাবে নিজের project থেকে)।

📈 ৩. Overfitting ও Underfitting

Level 1 — intuition: overfitting = পরীক্ষার আগের রাতে প্রশ্নের উত্তর হুবহু মুখস্থ করা — একই প্রশ্ন এলে ১০০%, একটু ঘুরিয়ে জিজ্ঞেস করলে ফেল। underfitting = পড়াশোনাই কম করা — কোনো প্রশ্নেই ভালো না।

Level 2 — technical: overfit = high train accuracy, low test accuracy (high variance)। underfit = train আর test দুইটাই খারাপ (high bias)। লক্ষ্য মাঝামাঝি — good generalization।

Level 3 — engineer perspective: production-এ overfit model demo-তে দারুণ, বাস্তব নতুন data-তে ধসে পড়ে। তাই সবসময় held-out test set-এ যাচাই করি।
Model complexity বাড়ালে: Train error : ────────╲___________ (কমতেই থাকে) Test error : ──╲___ ___╱── (আগে কমে, পরে বাড়ে) underfit | overfit sweet spot

কীভাবে ঠেকাই: আরও data, regularization, simpler model, cross-validation, early stopping, feature কমানো।

💧 ৪. Data Leakage — সবচেয়ে ভয়ংকর

interviewer-দের প্রিয় প্রশ্ন। data leakage মানে — training-এর সময় model এমন তথ্য পেয়ে যায় যা বাস্তবে prediction-এর সময় থাকবে না। ফলে offline metric দারুণ, production-এ ভয়ংকর খারাপ।

# ❌ LEAKAGE: পুরো data-তে scale, তারপর split X_scaled = scaler.fit_transform(X) # test-এর তথ্যও fit-এ ঢুকল! X_tr, X_te = train_test_split(X_scaled) # ✅ ঠিক: আগে split, শুধু train-এ fit X_tr, X_te = train_test_split(X) scaler.fit(X_tr) # শুধু train থেকে শেখা X_tr = scaler.transform(X_tr) X_te = scaler.transform(X_te) # একই parameter apply
আরও leakage-এর উৎস: target থেকে তৈরি feature, ভবিষ্যতের তথ্য (time series-এ future data), duplicate row train ও test দুইটাতেই। উত্তরে বলুন: "আমি সবসময় split-এর পরে preprocessing fit করি, আর pipeline ব্যবহার করি যাতে leakage না হয়।"

🎯 ৫. Metrics: কখন কোনটা

পরিস্থিতিসঠিক metricকেন
Regression (house price)RMSE / MAE / R²ভুলের মাত্রা মাপে; RMSE বড় ভুলকে বেশি শাস্তি দেয়
Balanced classificationAccuracy / F1class সমান হলে accuracy অর্থবহ
Imbalanced (fraud, churn)Precision, Recall, F1, ROC-AUCaccuracy মিথ্যা বলে (গল্প ১)
False negative ব্যয়বহুল (রোগ নির্ণয়)Recall গুরুত্বপূর্ণএকটা রোগী মিস করা মানে বড় ক্ষতি
False positive ব্যয়বহুল (spam)Precision গুরুত্বপূর্ণভালো mail spam বলা খারাপ
Precision vs Recall এক লাইনে: Precision = "যেগুলোকে positive বললাম, তার কত শতাংশ সত্যিই positive"। Recall = "মোট positive-এর কত শতাংশ আমি ধরতে পারলাম"। F1 = দুইটার harmonic mean (balance)। এই তিনটা মুখস্থ না করে বুঝে রাখুন — confusion matrix এঁকে বোঝানো সবচেয়ে শক্তিশালী।

⚖️ ৬. Bias-Variance trade-off

overfitting/underfitting-এর গাণিতিক রূপ। interviewer চায় তুমি সম্পর্কটা বুঝেছ।

উদাহরণ দিয়ে বলুন: "Linear regression high bias হতে পারে (সরল রেখা জটিল pattern ধরে না); একটা খুব deep decision tree high variance (সব noise মুখস্থ)। Random forest variance কমায় averaging দিয়ে।"

🔁 ৭. Cross-validation ও train/val/test

interviewer প্রায়ই জিজ্ঞেস করে — "কেন শুধু একটা train/test split যথেষ্ট নয়?"

k-fold cross-validation (k=5): Fold 1: [test][train][train][train][train] Fold 2: [train][test][train][train][train] Fold 3: [train][train][test][train][train] ... প্রতিবার আলাদা অংশ test, বাকিটা train => ৫টা score-এর গড় = আরও নির্ভরযোগ্য অনুমান

🔧 ৮. Feature Engineering প্রশ্ন

"একটা feature engineering-এর উদাহরণ দাও" — খুব common। মুখস্থ নয়, নিজের project থেকে বলুন।

উদাহরণ উত্তর: "job market project-এ raw JD text থেকে আমি skill count, seniority keyword, আর experience-year বের করে feature বানিয়েছি। categorical কে one-hot encoding করেছি, আর numeric feature standardize করেছি (শুধু train-এ fit করে, leakage এড়াতে)। এতে model-এর signal বেড়েছে।"

🎲 ৯. Probability ও statistics চটজলদি

ধারণাএক লাইনে interview উত্তর
Mean vs Medianoutlier থাকলে median বেশি নির্ভরযোগ্য (mean টেনে নিয়ে যায় outlier)।
Variance/Stddata কতটা ছড়ানো; std হলো variance-এর বর্গমূল, একই unit-এ।
Correlation ≠ Causationদুইটা একসাথে বাড়লেই একটা আরেকটার কারণ নয়।
Normal distributionbell curve; অনেক statistical পদ্ধতি এটা ধরে নেয়।
Bayes theoremনতুন evidence পেলে বিশ্বাস (probability) update করা — P(A|B) সম্পর্ক।
p-value (হালকা)ফলটা নিছক randomness-এ ঘটার সম্ভাবনা কম কিনা — junior-এ deep লাগে না।
💼 Boss Question

Boss: "model ৮৫% accuracy দিচ্ছে বলছ। এটা কি ভালো? আমি product ছাড়ব?"

উত্তর: "৮৫% ভালো কিনা নির্ভর করে baseline আর business cost-এর উপর। যদি সবসময় majority class বললেই ৮৪% হয়, তাহলে ৮৫% প্রায় অর্থহীন। আর fraud-এর মতো ক্ষেত্রে accuracy নয়, recall আর false positive-এর business cost দেখতে হবে। তাই একটা সংখ্যা নয় — সঠিক metric আর baseline-এর সাপেক্ষে সিদ্ধান্ত নেব।" এই উত্তরই একজন engineer-কে business-aware প্রমাণ করে।

🔎 ১০. Job Requirement Decoder

JD-তে প্রায়ই থাকে: "Solid understanding of ML fundamentals and model evaluation."

প্রশ্নউত্তর
কী বোঝায়?overfitting, leakage, সঠিক metric, validation — এগুলো বুঝে প্রয়োগ করতে পারো।
কেন চায়?ভুল metric/leakage মানে production-এ ব্যর্থ model — বড় ব্যবসায়িক ক্ষতি।
কোন সমস্যা সমাধান করে?"demo-তে ভালো, বাস্তবে খারাপ" model ঠেকায়।
junior-এর কী জানা লাগে?এই episode-এর সব ধারণা বুঝে, উদাহরণসহ ব্যাখ্যা করতে পারা।
এখনই কী master লাগে না?গভীর statistical theory, causal inference, Bayesian modeling।
GitHub-এ কীভাবে দেখাবে?project README-তে সঠিক metric, CV, leakage-এড়ানো pipeline দেখিয়ে।
Interview-তে কী জিজ্ঞেস করতে পারে?"accuracy কখন মিথ্যা বলে?", "leakage কীভাবে এড়াও?", "precision vs recall কখন?"

⚠️ ১১. সাধারণ ভুল

ভুল ১: সব problem-এ accuracy বলা। → ঠিক: imbalanced-এ precision/recall/F1/AUC।

ভুল ২: test set-এ tune করা। → ঠিক: validation-এ tune, test একবারই।

ভুল ৩: split-এর আগে scale/encode। → ঠিক: split-এর পরে, শুধু train-এ fit।

ভুল ৪: সংজ্ঞা মুখস্থ বলা, উদাহরণ নেই। → ঠিক: নিজের project থেকে উদাহরণ।

ভুল ৫: correlation-কে causation বলা। → ঠিক: পার্থক্য পরিষ্কার রাখা।

🎤 ১২. Interview Prep (question bank)

১. Overfitting কী, কীভাবে চেনো ও ঠেকাও? → train vs test gap; regularization/data/CV/early stopping।

২. Accuracy কখন বিভ্রান্তিকর? → imbalanced data; majority-class baseline দিয়ে ব্যাখ্যা।

৩. Precision আর recall-এর মধ্যে কখন কোনটাকে গুরুত্ব দেবে? → FN vs FP cost দিয়ে।

৪. Data leakage কী, একটা উদাহরণ দাও। → split-এর আগে fit; future/target-derived feature।

৫. Bias-variance trade-off বোঝাও। → simple=high bias, complex=high variance; total error।

৬. কেন cross-validation? → single split-এর randomness কমায়, stable অনুমান।

৭. একটা feature engineering উদাহরণ দাও। → নিজের project থেকে concrete উদাহরণ।

✍️ ১৩. হাতে-কলমে (Mini Exercise)

উপরের question bank-এর ৭টা প্রশ্নের উত্তর জোরে জোরে বলো (কাউকে শোনাও বা রেকর্ড করো), প্রতিটাতে নিজের project থেকে একটা উদাহরণ জুড়ে দাও।

বোনাস: একটা imbalanced dataset নিয়ে (যেমন churn) একটা model train করো, accuracy আর recall দুইটাই দেখো — নিজের চোখে দেখো কীভাবে accuracy বেশি অথচ recall কম হতে পারে।

🚀 ১৪. Project Connection

Flagship "Bangladesh Tech Career Assistant"-এর ML অংশ (JD থেকে role/seniority prediction) এই সব প্রশ্নের জীবন্ত উদাহরণ। interview-তে বলতে পারো: "আমার project-এ role-prediction imbalanced ছিল, তাই accuracy-র বদলে macro-F1 দেখেছি; preprocessing pipeline split-এর পরে fit করেছি যাতে leakage না হয়; hyperparameter cross-validation দিয়ে tune করেছি।" — একটা project থেকেই প্রায় পুরো প্রশ্ন cover।

📌 ১৫. সারসংক্ষেপ

এই Episode-এ আমরা শিখলাম:

✓ Overfit (high variance) vs underfit (high bias) — চেনা ও ঠেকানো
✓ Data leakage সবচেয়ে ভয়ংকর: split-এর পরে preprocessing fit করা
✓ Metric বাছাই: imbalanced-এ accuracy মিথ্যা, precision/recall/F1/AUC ব্যবহার
✓ Bias-variance trade-off, cross-validation ও train/val/test-এর ভূমিকা
✓ Feature engineering ও probability উত্তরে নিজের উদাহরণ টানা
✓ প্রতিটা উত্তর: সংজ্ঞা + কীভাবে ধরি + কীভাবে সমাধান + project উদাহরণ

➡️ ১৬. পরবর্তী পর্বে কী শিখব

পরবর্তী Episode (S10E06): "Deep Learning ও NLP Interview: backprop, CNN, embeddings, attention, transformers"।

Classical ML round শেষ। এবার deep learning ও NLP-র প্রশ্ন — backpropagation কীভাবে কাজ করে, CNN কেন ছবিতে ভালো, embeddings আর attention আসলে কী। পরের পর্বে intuition-first উত্তরসহ question bank বানাব।
© 2025 Sheikh Thanbir Alam. All Rights Reserved. thanbirtamim.github.io
এই লেখা মূল লেখকের সম্পত্তি — লিখিত অনুমতি ছাড়া কপি করে অন্য কোনো ওয়েবসাইট, ব্লগ, বই বা প্ল্যাটফর্মে প্রকাশ/বিতরণ করা কঠোরভাবে নিষিদ্ধ। Content may not be copied or republished without permission.