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 করব।