Outlier হচ্ছে এমন একটি observation, যেটি dataset-এর অন্যান্য observations-এর তুলনায় unusually far বা extreme।
ধরুন একটি food delivery system-এ কয়েকটি delivery time হলো:
21
24
19
26
23
250
এখানে বেশিরভাগ delivery time 19 থেকে 26 মিনিটের মধ্যে।
কিন্তু:
250 minutes
অন্য values-এর তুলনায় অনেক বেশি। তাই 250 একটি possible outlier হতে পারে।
তবে শুধু value-টি অন্যগুলোর চেয়ে বড় হলেই সেটিকে automatically outlier বলা উচিত নয়।
Outlier কেন হতে পারে?
একটি outlier বিভিন্ন কারণে তৈরি হতে পারে।
যেমন:
Data-entry mistake
System bug
Rare real event
Fraud
Extreme weather
Road accident
Restaurant failure
অর্থাৎ outlier দুই ধরনের situation নির্দেশ করতে পারে:
Error
↓
ভুল data বা system problem
Valid extreme observation
↓
বাস্তব কিন্তু rare ঘটনা
তাই:
Outlier পেলেই delete করা উচিত নয়। আগে বুঝতে হবে value-টি কেন এসেছে।
উদাহরণ হিসেবে, কোনো restaurant-এর delivery time যদি 250 মিনিট হয়, তাহলে সেটি হয়তো ভুল data entry হতে পারে। আবার একই value কোনো বড় road accident বা extreme weather-এর কারণে বাস্তবও হতে পারে।
এই কারণেই outlier handling-এর প্রথম step হলো investigation।
Z-score Method
Outlier detect করার একটি common statistical approach হলো Z-score।
Z-score বলে একটি observation mean থেকে কত standard deviation দূরে অবস্থান করছে।
$$z = \frac{x - \mu}{\sigma}$$যেখানে:
$x$ = observation
$\mu$ = mean
$\sigma$ = standard deviation
একটি common heuristic হলো:
|z| > 3
হলে observation-টিকে potential outlier হিসেবে investigate করা।
এখানে “potential” শব্দটি গুরুত্বপূর্ণ।
কারণ:
|z| > 3
হলেই observation যে ভুল—এমন নয়।
এটি শুধু বলে যে value-টি mean থেকে তুলনামূলকভাবে অনেক দূরে।
IQR Method
Outlier detection-এর আরেকটি popular method হলো IQR (Interquartile Range)।
প্রথমে:
$$IQR = Q3 - Q1$$যেখানে:
$Q_{1}$ = First Quartile $Q_{3}$ = Third Quartile
তারপর দুটি boundary নির্ধারণ করা হয়।
Lower bound:
$$Q1 - 1.5 \times IQR$$Upper bound:
$$Q3 + 1.5 \times IQR$$এই দুই boundary-এর বাইরে থাকা observations-কে সাধারণত potential outlier হিসেবে চিহ্নিত করা হয়।
Lower Bound Upper Bound
↓ ↓
-----|===========================|-----
↑ ↑
Q1 - 1.5×IQR Q3 + 1.5×IQR
Normal Range
IQR method বিশেষভাবে useful কারণ এটি mean ও standard deviation-এর উপর নির্ভর করে না এবং skewed data-এর ক্ষেত্রেও অনেক সময় ভালোভাবে কাজ করে।
Z-score vs IQR
দুটি method-এর basic idea আলাদা:
Z-score
→ Mean এবং Standard Deviation-এর ভিত্তিতে
→ Distribution সম্পর্কে কিছু assumption গুরুত্বপূর্ণ হতে পারে
IQR
→ Q1 এবং Q3-এর ভিত্তিতে
→ Distribution-এর extreme values-এর প্রভাব তুলনামূলক কম
তাই outlier detection-এর ক্ষেত্রে dataset-এর distribution এবং problem context বিবেচনা করা গুরুত্বপূর্ণ।
Interview Question
Would you always remove an outlier?
না। প্রথমে দেখতে হবে value-টি data error, নাকি rare but valid observation। Fraud detection বা anomaly detection-এর মতো problem-এ outlier-টাই হয়তো সবচেয়ে valuable information হতে পারে।
আরও একটি গুরুত্বপূর্ণ বিষয় হলো, outlier handling-এর decision problem-এর উপর নির্ভর করে।
Data cleaning
→ ভুল observation হলে correction/removal বিবেচনা করা যায়
Fraud detection
→ Outlier-ই গুরুত্বপূর্ণ signal হতে পারে
Anomaly detection
→ Outlier-ই মূল target হতে পারে
Regression
→ Extreme value model-এর উপর বড় প্রভাব ফেলতে পারে
তাই interview-এ শুধু “outlier remove করব” বলা যথেষ্ট নয়।
ভালো উত্তর হবে:
প্রথমে outlier-এর কারণ বুঝব। এটি যদি data error হয়, তাহলে correction বা removal বিবেচনা করব। কিন্তু যদি এটি valid extreme observation হয়, তাহলে problem-এর context অনুযায়ী সেটি retain, transform বা আলাদাভাবে handle করব।