Home »
Blog »
AI/ML Engineer সিরিজ » Series 04 » Episode 04
Statistics Basics: mean, median, variance, std — data-র চরিত্র
সংখ্যায় data-কে বর্ণনা করা (Series 04, Episode 04)
🟢 BEGINNER
Series 04 — Math, Statistics ও Probability
Episode 04 / 07
📑 এই পর্বে যা যা আছে
- ১. গল্প: "গড় বেতন ৮০ হাজার" — কিন্তু...
- ২. আসল সমস্যা: এক সংখ্যায় পুরো data বোঝানো
- ৩. কেন Statistics junior-দের সবচেয়ে বেশি লাগে
- ৪. Level 1 — mean, median, mode (শ্রেণির নম্বর)
- ৫. mean বনাম median — কখন কোনটা
- ৬. Level 2 — variance ও standard deviation (ছড়ানো)
- ৭. Level 3 — ML-এ scaling ও outlier-এ এর ব্যবহার
- ৮. Distribution — data-র আকৃতি
- ৯. Visual: একই mean, ভিন্ন ছড়ানো
- ১০. Code: Pandas/NumPy দিয়ে describe
- ১১. বাংলাদেশের context (job market data)
- ১২. Boss Question
- ১৩. Job Requirement Decoder
- ১৪. সাধারণ ভুল ধারণা
- ১৫. Interview Prep
- ১৬. হাতে-কলমে (Mini Exercise)
- ১৭. Project Connection
- ১৮. সারসংক্ষেপ ও পরবর্তী পর্ব
💰 ১. গল্প: "গড় বেতন ৮০ হাজার" — কিন্তু...
Rahim একটা রিপোর্টে পড়ল: "এই কোম্পানির কর্মীদের গড় (mean) বেতন ৮০ হাজার টাকা।" সে খুশি হয়ে
Nila-কে বলল, চাকরিটা নিশ্চয় দারুণ। Nila একটু হাসল।
Nila বলল: "একটু সাবধান। ধরো কোম্পানিতে ১০ জন — ৯ জনের বেতন ৩০ হাজার, আর CEO-র বেতন ৫ লাখ ৩০
হাজার। এবার গড় বের করো।"
Rahim হিসাব করল: (৯×৩০ + ৫৩০) / ১০ = ৮০ হাজার। সে অবাক — "গড় ৮০ হাজার, কিন্তু ৯ জনই তো ৩০
হাজার পায়!"
Nila: "এইজন্যই একটা মাত্র সংখ্যা (mean) মিথ্যা বলতে পারে। এখানে median (মাঝের মান)
হলো ৩০ হাজার — যেটা বাস্তব চিত্র বলে। Statistics মানেই এই — data-র চরিত্র সঠিকভাবে বোঝা। আর এটা
junior AI Engineer-রা প্রতিদিন ব্যবহার করে।"
এই পর্বে আমরা Series 04-এর তৃতীয় স্তম্ভ Statistics শিখব — junior-দের প্রতিদিনের সবচেয়ে দরকারি গণিত।
🎯 ২. আসল সমস্যা: এক সংখ্যায় পুরো data বোঝানো
আপনার কাছে ১০ লাখ customer-এর data। কেউ এটা এক নজরে "দেখতে" পারবে না। তাই আমরা কয়েকটা সংখ্যায়
(summary statistics) পুরো data-র চরিত্র প্রকাশ করি — কেন্দ্র কোথায় (mean/median), কতটা ছড়ানো
(variance/std), আকৃতি কেমন (distribution)। কিন্তু ভুল summary বাছলে ভুল সিদ্ধান্ত হয়, যেমন উপরের
বেতনের গল্প।
💡 ৩. কেন Statistics junior-দের সবচেয়ে বেশি লাগে
S04E01-এ বলেছিলাম junior AI Engineer-রা Calculus/Linear Algebra-র চেয়ে Statistics ও Probability
বেশি ব্যবহার করে। কারণ:
- EDA (Exploratory Data Analysis) — প্রতিটা project data বোঝা দিয়ে শুরু।
- Feature scaling ও outlier handling — সরাসরি mean/std/distribution নির্ভর।
- Metric ব্যাখ্যা — accuracy, error সব statistics।
- "data ঠিক আছে কিনা" যাচাই — model-এর আগে data-র চরিত্র বোঝা।
📝 ৪. Level 1 — mean, median, mode (শ্রেণির নম্বর)
একটা ক্লাসের পরীক্ষার নম্বর দিয়ে ভাবুন:
Mean (গড়): সব নম্বর যোগ করে ছাত্রসংখ্যা দিয়ে ভাগ। "সমান ভাগ করলে প্রত্যেকে কত পেত"।
Median (মধ্যক): নম্বরগুলো সাজিয়ে ঠিক মাঝের মান। "অর্ধেক এর নিচে, অর্ধেক এর উপরে"।
Mode (সংখ্যাগুরু): সবচেয়ে বেশিবার আসা মান। "সবচেয়ে common নম্বর"।
⚖️ ৫. mean বনাম median — কখন কোনটা
এটাই সবচেয়ে ব্যবহারিক Statistics সিদ্ধান্ত। মূল নিয়ম:
Mean ব্যবহার করুন
যখন data মোটামুটি সুষম (symmetric), বড় outlier নেই। যেমন ক্লাসের height।
Median ব্যবহার করুন
যখন কয়েকটা extreme মান (outlier) আছে — যেমন বেতন, বাড়ির দাম। median outlier-এ কম প্রভাবিত।
কেন median outlier-এ টলে না: CEO-র বেতন ৫ লাখ হোক বা ৫০ লাখ — মাঝের মান একই
থাকে। কিন্তু mean প্রতিটা extreme মানে টেনে যায়। তাই আয়/দাম নিয়ে কাজ করলে median-ই বেশি সৎ।
📏 ৬. Level 2 — variance ও standard deviation (ছড়ানো)
Mean/median বলে "কেন্দ্র কোথায়", কিন্তু বলে না "data কতটা ছড়ানো"। দুটো ক্লাসের mean একই ৬০ হতে পারে,
কিন্তু একটায় সবাই ৫৮-৬২, আরেকটায় কেউ ২০ কেউ ৯৫। এই "ছড়ানো"-ই variance ও standard deviation।
- Variance: প্রতিটা মান mean থেকে কত দূরে, সেই দূরত্বের বর্গের গড়। (বর্গ করার কারণ — ঋণাত্মক দূরত্ব যেন কাটাকাটি না যায়।)
- Standard deviation (std): variance-এর বর্গমূল। সুবিধা — এটা মূল data-র একই এককে (যেমন টাকা, বছর) থাকে, তাই ব্যাখ্যা সহজ।
সহজভাবে: std ছোট = data mean-এর কাছে জমাট; std বড় = data অনেক ছড়ানো। এটা junior-দের
outlier ও data quality বোঝার প্রধান হাতিয়ার।
👷 ৭. Level 3 — ML-এ scaling ও outlier-এ এর ব্যবহার
একজন AI Engineer এই summary statistics দিয়ে সরাসরি কাজ করে:
- Standardization: প্রতিটা feature থেকে তার mean বিয়োগ করে std দিয়ে ভাগ — যাতে সব feature একই স্কেলে আসে (Series 03/05-এ দেখেছি/দেখব)। এটা mean ও std ছাড়া অসম্ভব।
- Outlier detection: mean থেকে ৩ std-এর বেশি দূরের মানকে সন্দেহজনক ধরা একটা common নিয়ম।
- Data sanity check: কোনো feature-এর std যদি ০ হয়, মানে সব মান একই — সেই feature model-এ অকেজো।
মনে রাখবেন: scaling করার সময় mean/std শুধু training data থেকে বের করতে হয়,
নইলে data leakage হয় (S03E08)। এটাই concept বোঝা আর tool চালানোর মধ্যে পার্থক্য।
🔔 ৮. Distribution — data-র আকৃতি
Distribution মানে — কোন মান কতবার আসে তার আকৃতি। সবচেয়ে বিখ্যাত হলো normal distribution
(ঘণ্টার আকৃতি/bell curve): বেশিরভাগ মান mean-এর কাছে, দুই প্রান্তে কম। মানুষের height, পরীক্ষার
নম্বর প্রায়ই এমন। কিন্তু আয়/দাম প্রায়ই right-skewed — বেশিরভাগ কম, কয়েকজন অনেক বেশি
(লম্বা লেজ ডান দিকে)। distribution বুঝলে বোঝা যায় mean না median ব্যবহার করব, scaling লাগবে কিনা।
📊 ৯. Visual: একই mean, ভিন্ন ছড়ানো
দুটো ক্লাস, দুটোরই mean = 60
Class A (std ছোট ≈ 2): জমাট
▁▂▅█████▅▂▁
55 58 60 62 65
Class B (std বড় ≈ 20): ছড়ানো
▁▂▃▄▅▆▇█▇▆▅▄▃▂▁
20 40 60 80 100
একই কেন্দ্র (mean), কিন্তু চরিত্র সম্পূর্ণ আলাদা —
তাই mean একা যথেষ্ট নয়, std-ও দেখতে হয়।
💻 ১০. Code: Pandas/NumPy দিয়ে describe
বাস্তবে আমরা হাতে variance বের করি না — Pandas এক লাইনে দেয়। আমরা Pandas ব্যবহার করছি কারণ এটাই
tabular data-র standard tool, আর .describe() EDA-র প্রথম ধাপ।
import pandas as pd
# ছোট বেতন data (হাজার টাকায়)
salaries = pd.Series([30, 30, 30, 30, 30, 30, 30, 30, 30, 530])
print("mean :", salaries.mean()) # 80.0 (outlier-এ টানা)
print("median:", salaries.median()) # 30.0 (সৎ চিত্র)
print("std :", round(salaries.std(), 2))
print()
print(salaries.describe()) # এক নজরে পুরো summary
কী observe করবেন: mean (80) আর median (30)-এর বিশাল ফারাক-ই বলে দিচ্ছে data
skewed, outlier আছে। .describe()-এর 25%, 50%, 75% (quartile) দেখলে
distribution-এর আকৃতিও আঁচ করা যায় — এটাই junior-দের প্রথম EDA reflex হওয়া উচিত।
🇧🇩 ১১. বাংলাদেশের context (job market data)
আমাদের Bangladesh job-market data নিয়ে কাজ করলে দেখা যায় — "গড় বেতন" প্রায়ই বিভ্রান্তিকর, কারণ
কয়েকটা senior/remote role গড়কে উপরে টেনে নেয়। একজন ভালো analyst তাই median বেতন, আর বিভিন্ন
experience-level-এ আলাদা distribution দেখায়। ঠিক এভাবেই bKash/Daraz-এর data team-ও transaction
বা order value নিয়ে কাজ করার সময় mean-এর ফাঁদ এড়াতে median ও distribution দেখে।
💼 ১২. Boss Question
💼 Boss Question
Boss: "আমাদের app-এ user-রা গড়ে ১২ মিনিট সময় কাটায় — দারুণ, তাই না? এই statistics দিয়ে আমার কী?"
উত্তর: একটু সাবধান করব। "গড় ১২ মিনিট" হতে পারে কারণ বেশিরভাগ user ২ মিনিটে চলে
যায়, আর কিছু user ঘণ্টাখানেক থাকে (outlier গড়কে টানছে)। median দেখলে হয়তো দেখব সত্যিকারের সাধারণ
user মাত্র ৩ মিনিট থাকে — মানে সমস্যা আছে। এই পার্থক্য ধরতে পারা মানে সঠিক business সিদ্ধান্ত।
তাই আমি সবসময় mean-এর পাশে median আর distribution দেখি — এটাই আমাকে ভুল আত্মতুষ্টি থেকে বাঁচায়।
🔎 ১৩. Job Requirement Decoder
"Solid understanding of descriptive statistics for data analysis."
| প্রশ্ন | উত্তর |
| এর মানে কী? | data-কে সংখ্যায় বর্ণনা (mean, median, std, distribution) ও ব্যাখ্যা করতে পারেন। |
| কোম্পানি কেন চায়? | model-এর আগে data বোঝা, ভুল summary থেকে ভুল সিদ্ধান্ত এড়ানো। |
| কোন সমস্যা সমাধান করে? | skewed data, outlier, misleading average — এসব ধরা পড়ে। |
| junior-এর কী জানা লাগে? | mean vs median কখন, std মানে ছড়ানো, distribution-এর আকৃতি পড়া। |
| এখনই কী master লাগে না? | hypothesis testing-এর গভীর তত্ত্ব, সব distribution-এর সূত্র মুখস্থ। |
| GitHub-এ কীভাবে দেখাবেন? | একটা EDA notebook — .describe(), histogram, mean/median তুলনা ও ব্যাখ্যা। |
| Interview-তে কী জিজ্ঞেস করতে পারে? | "mean vs median কখন?", "std কী বোঝায়?", "salary data-তে কোন average ব্যবহার করবেন, কেন?" |
⚠️ ১৪. সাধারণ ভুল ধারণা
ভুল ১: "mean-ই সবসময় 'average' হিসেবে যথেষ্ট।" →
ঠিক: skewed/outlier data-তে median বেশি সৎ।
ভুল ২: "std আর variance একই জিনিস।" →
ঠিক: std = variance-এর বর্গমূল; std মূল এককে থাকে, তাই ব্যাখ্যা সহজ।
ভুল ৩: "সব data normal distribution follow করে।" →
ঠিক: আয়/দাম প্রায়ই skewed; ধরে নেওয়ার আগে histogram দেখুন।
ভুল ৪: "scaling-এর mean/std পুরো dataset থেকে বের করব।" →
ঠিক: শুধু training data থেকে — নইলে data leakage হয়।
🎤 ১৫. Interview Prep
প্রশ্ন ১: mean আর median-এর মধ্যে কখন কোনটা ব্যবহার করবেন?
উত্তর: outlier/skew থাকলে median (যেমন বেতন, দাম); সুষম data-তে mean।
প্রশ্ন ২: standard deviation কী বোঝায়?
উত্তর: data mean থেকে গড়ে কতটা ছড়ানো; ছোট = জমাট, বড় = ছড়ানো।
প্রশ্ন ৩: একটা feature-এর std = 0 হলে কী বোঝায়?
উত্তর: সব মান একই; feature-টি model-এর জন্য অকেজো, বাদ দেওয়া যায়।
প্রশ্ন ৪: right-skewed distribution-এ mean ও median-এর সম্পর্ক?
উত্তর: mean সাধারণত median-এর চেয়ে বড় হয় (লম্বা ডান লেজ mean-কে টানে)।
✍️ ১৬. হাতে-কলমে (Mini Exercise)
১. উপরের বেতন-Series-এ CEO-র মান ৫৩০ থেকে ৫০০০ করুন — mean ও median কে বেশি বদলাল? কেন?
২. দুটো তালিকা বানান একই mean কিন্তু ভিন্ন std, তারপর .std() দিয়ে যাচাই করুন।
৩. এক লাইনে লিখুন: কেন "গড় বেতন" একটা misleading marketing number হতে পারে?
🚀 ১৭. Project Connection
Series 03-এ আমাদের flagship "Bangladesh Tech Career Assistant"-এর data-analyzer
(V2) job-market data নিয়ে কাজ করে। আজকের mean/median/std/distribution ঠিক সেই analysis-এর কেন্দ্র —
"কোন skill-এর জন্য median বেতন বেশি?", "junior vs senior বেতনের ছড়ানো কেমন?" — এই প্রশ্নগুলোর
উত্তর দিতে গেলে আজকের statistics-ই কাজে লাগবে। পরে V3 ML model-এও feature scaling করতে এই mean/std লাগবে।
📌 ১৮. সারসংক্ষেপ ও পরবর্তী পর্ব
এই পর্বে আমরা শিখলাম:
✓ mean/median/mode — data-র কেন্দ্র; outlier থাকলে median বেশি সৎ
✓ variance ও std — data কতটা ছড়ানো; std মূল এককে, তাই ব্যাখ্যা সহজ
✓ একই mean-এ ভিন্ন std মানে সম্পূর্ণ ভিন্ন চরিত্র — এক সংখ্যা যথেষ্ট নয়
✓ distribution (normal, skewed) data-র আকৃতি বলে; scaling ও outlier সিদ্ধান্তে লাগে
✓ ML-এ standardization ও outlier detection সরাসরি mean/std নির্ভর
✓ Statistics junior AI Engineer-দের প্রতিদিনের সবচেয়ে দরকারি গণিত
পরবর্তী Episode (S04E05): "Covariance, Correlation ও Distribution: feature-রা কীভাবে
সম্পর্কিত"। এবার দেখব দুটো feature একসাথে কীভাবে চলে, correlation কী, আর কেন "correlation ≠ causation"
— এই একটা ভুল বোঝা junior-দের অনেক বড় ভুল সিদ্ধান্ত থেকে বাঁচায়।