সরাসরি প্রধান সামগ্রীতে চলে যান

ডাটা সেট থেকে আউটলিয়ার (Outlier) চেনার ও সরানোর সহজ উপায়


ভূমিকা

আমরা যখন কোন ডাটা নিয়ে কাজ করি, তখন অনেক সময় দেখা যায় কিছু ডাটা বা সংখ্যা বাকি সবগুলোর তুলনায় অনেক আলাদা বা অস্বাভাবিক। একেই বলা হয় 'আউটলিয়ার' (Outlier)। এই ভিডিওতে আমরা শিখব কীভাবে জ্যা-স্কোর (Z-score) এবং স্ট্যান্ডার্ড ডেভিয়েশন (Standard Deviation) ব্যবহার করে খুব সহজে এই অস্বাভাবিক ডাটাগুলোকে শনাক্ত করে বাদ দেওয়া যায়, যা আমাদের ডাটা অ্যানালাইসিস বা মেশিন লার্নিং মডেলকে আরও নির্ভুল করে তোলে।


১. আউটলিয়ার কী এবং কেন এটি বাদ দেওয়া দরকার?

ভিডিও রেফারেন্স: [00:00]

আউটলিয়ার হলো এমন কিছু ভ্যালু যা আপনার ডাটা সেটের বাকি ভ্যালুগুলোর তুলনায় অনেক বেশি বা অনেক কম।

সহজ ভাষায়: ধরুন, একটি ক্লাসের সব ছাত্রের উচ্চতা ৫ ফিট থেকে ৬ ফিটের মধ্যে। কিন্তু হঠাৎ যদি একজনের উচ্চতা ৮ ফিট দেখা যায়, তবে সেই ৮ ফিটের ডাটাটি হলো আউটলিয়ার। এগুলো অনেক সময় ডাটা এন্ট্রির ভুল হতে পারে অথবা বিশেষ কোনো কেস হতে পারে। এগুলো বাদ দিলে আমাদের মডেল আরও ভালো কাজ করে।


২. নরমাল ডিস্ট্রিবিউশন (Normal Distribution) বোঝা

ভিডিও রেফারেন্স: [02:13]

আমাদের ডাটাগুলো দেখতে কেমন বা কীভাবে ছড়িয়ে আছে, তা বোঝার জন্য আমরা হিস্টোগ্রাম (Histogram) ব্যবহার করি। বেশির ভাগ ক্ষেত্রেই ডাটা 'বেল কার্ভ' (Bell Curve) আকারে থাকে।

  • বেল কার্ভ কী? এর মানে হলো বেশির ভাগ মানুষ বা ডাটা মাঝখানের দিকে (গড়ে) থাকে। আর অনেক বেশি বা অনেক কম ডাটা খুব কম মানুষের ক্ষেত্রে দেখা যায়। এটি অনেকটা ঘণ্টার মতো দেখতে, তাই একে বেল কার্ভ বলে।

৩. স্ট্যান্ডার্ড ডেভিয়েশন (Standard Deviation) দিয়ে আউটলিয়ার শনাক্তকরণ

ভিডিও রেফারেন্স: [06:40]

স্ট্যান্ডার্ড ডেভিয়েশন হলো একটি পরিমাপ যা দিয়ে বোঝা যায় ডাটাগুলো গড়ের (Mean) তুলনায় কতটা দূরে আছে।

  • কীভাবে কাজ করে: সাধারণত বলা হয় যে ডাটা যদি নরমাল ডিস্ট্রিবিউশনে থাকে, তবে ৯৯.৭% ডাটা গড়ের ৩টি স্ট্যান্ডার্ড ডেভিয়েশনের মধ্যে থাকে। যদি কোনো ডাটা ৩টি স্ট্যান্ডার্ড ডেভিয়েশনের বাইরে থাকে, তবে তাকে আমরা আউটলিয়ার হিসেবে ধরে নিতে পারি।

কোড স্নিপেট:

Python

upper_limit = df.height.mean() + 3 * df.height.std()
lower_limit = df.height.mean() - 3 * df.height.std()

# আউটলিয়ার খুঁজে বের করা
outliers = df[(df.height > upper_limit) | (df.height < lower_limit)] 
  • ব্যাখ্যা: এখানে আমরা গড়ের সাথে ৩ গুণ স্ট্যান্ডার্ড ডেভিয়েশন যোগ করে সর্বোচ্চ সীমা (Upper limit) এবং বিয়োগ করে সর্বনিম্ন সীমা (Lower limit) তৈরি করেছি। এই সীমার বাইরের ডাটাগুলোই আমাদের আউটলিয়ার।

৪. জ্যা-স্কোর (Z-score) পদ্ধতি

ভিডিও রেফারেন্স: [12:15]

জ্যা-স্কোর হলো স্ট্যান্ডার্ড ডেভিয়েশন ব্যবহার করারই একটি বিকল্প ও সহজ উপায়। এটি সরাসরি বলে দেয় একটি ডাটা পয়েন্ট গড় থেকে কত স্ট্যান্ডার্ড ডেভিয়েশন দূরে।

কোড স্নিপেট:

Python

df['zscore'] = (df.height - df.height.mean()) / df.height.std()

# ৩ এর বেশি বা -৩ এর কম জ্যা-স্কোর যাদের আছে তাদের বাদ দেওয়া
clean_df = df[(df.zscore < 3) & (df.zscore > -3)] 
  • ব্যাখ্যা: জ্যা-স্কোর বের করার সূত্রটি খুবই সহজ: (ডাটা পয়েন্ট - গড়) / স্ট্যান্ডার্ড ডেভিয়েশন। যদি জ্যা-স্কোর ৩ বা তার বেশি হয়, তবে আমরা তাকে আউটলিয়ার হিসেবে চিহ্নিত করে বাদ দিতে পারি।

বিশ্লেষণ ও পরামর্শ

সারাংশ: এই ভিডিওটির মূল লক্ষ্য হলো ডাটা পরিষ্কার করা (Data Cleaning)। আপনি যদি কোনো মেশিন লার্নিং মডেল বা ডাটা অ্যানালাইসিসে ভালো করতে চান, তবে আপনার ডাটা থেকে অপ্রয়োজনীয় বা ভুল ডাটা (আউটলিয়ার) সরাতে হবে। জ্যা-স্কোর এবং ৩ স্ট্যান্ডার্ড ডেভিয়েশন এর জন্য আদর্শ পদ্ধতি।

আমার ভাবনা: সবসময় যে আউটলিয়ার বাদ দিতে হবে এমন নয়। আগে বুঝতে হবে সেগুলো কি আসলেই ভুল ডাটা নাকি বিশেষ কোনো তথ্য। যদি ডাটাগুলো সত্যিই ভুল হয় (যেমন: মানুষের উচ্চতা ১০ ফুট হওয়া অসম্ভব), তবে অবশ্যই তা বাদ দিতে হবে। আর যদি ডাটা ঠিক থাকে কিন্তু খুব ব্যতিক্রম হয়, তবে ব্যবসায়িক সিদ্ধান্ত অনুযায়ী সেগুলো রাখা বা বাদ দেওয়া উচিত।

পরামর্শ: আপনি যদি নতুন হন, তবে প্রথমে ছোট ডাটা সেটে এই পদ্ধতিগুলো নিজে কোড করে প্র্যাকটিস করুন। ভিডিওতে উল্লেখিত Kaggle-এর ডাটা সেটগুলো ব্যবহার করা একটি দারুণ বুদ্ধি।

ইউটিউব লিঙ্ক: https://www.youtube.com/watch?v=KFuEAGR3HS4

[

Outlier detection and removal: z score, standard deviation | Feature engineering tutorial python # 3

codebasics · 137K views

](http://www.youtube.com/watch?v=KFuEAGR3HS4)

মন্তব্যসমূহ

এই ব্লগটি থেকে জনপ্রিয় পোস্টগুলি

সিজ্জিন (Sijjin) vs ইল্লিয়িন (Illiyin) পার্থক্য Difference

Sijjin (سِجِّين) এবং Illiyin (عِلِّيِّين) —এ দুটি শব্দ কুরআনে এসেছে এবং দুটোই মানুষের আমলনামা সংরক্ষণ সম্পর্কিত স্থানকে নির্দেশ করে। ১. সিজ্জিন (Sijjin) সিজ্জিন হলো পাপীদের (কাফের, মুনাফিক ও দুরাচারীদের) আমলনামা সংরক্ষণের স্থান। এটি সাত তলদেশের নীচে এক কারাগার বা অন্ধকার জগতে অবস্থিত বলে উল্লেখ রয়েছে। সূরা আল-মুতাফফিফীন (৮৩:৭-৯) তে বলা হয়েছে: "كَلَّا إِنَّ كِتَابَ الْفُجَّارِ لَفِي سِجِّينٍ ۝ وَمَا أَدْرَاكَ مَا سِجِّينٌ ۝ كِتَابٌ مَرْقُومٌ" অর্থ: "না, পাপীদের আমলনামা সিজ্জিনে সংরক্ষিত। তুমি কি জানো, সিজ্জিন কী? এটি এক লিখিত দলিল।" সিজ্জিনকে একটি কারাগার, সংকীর্ণ স্থান, বা নিচের স্তরে অবস্থিত এক অন্ধকার দুনিয়া হিসেবে ব্যাখ্যা করা হয়। ২. ইল্লিয়িন (Illiyin) ইল্লিয়িন হলো সৎকর্মশীলদের (মুমিন ও নেককারদের) আমলনামা সংরক্ষণের স্থান । এটি সপ্তম আসমানের ওপরে সংরক্ষিত এক সম্মানিত স্থান। সূরা আল-মুতাফফিফীন (৮৩:১৮-২১) তে বলা হয়েছে: "كَلَّا إِنَّ كِتَابَ الْأَبْرَارِ لَفِي عِلِّيِّينَ ۝ وَمَا أَدْرَاكَ مَا عِلِّيُّونَ ۝ كِتَابٌ مَرْقُومٌ ۝ يَش...

তারাবিহ সমগ্র - প্রথম আলো

রামাদান ২০২৪ উপলক্ষে প্রথম আলোর নিয়মিত আয়োজন - খতমে তারাবিহ'র সূরা গুলো নিয়ে সংক্ষিপ্ত আলোচনা'র লিংক  নিচে দেওয়া হলো।  লিংকে ক্লিক করলেই আপনাকে আলোচনা তে নিয়ে যাবে। তারাবিহ: ১ | একটি খুন ও গাভি নিয়ে বনি ইসরাইলের বাড়াবাড়ি তারাবিহ: ২ | নারীর মর্যাদা ও অধিকার এবং অলৌকিক তিন ঘটনা তারাবিহ: ৩ | যে ১৪ নারীকে বিয়ে করা হারাম তারাবিতে: ১২ | মহানবী (সা.)–এর আকাশভ্রমণ এবং আসহাবে কাহাফের কাহিনি

রেডমি নোট ৯ এর বিস্তারিত | Redmi Note 9 in Bangla

৩০ এপ্রিল, ২০২০ এ শাওমির ঘোষনা আসে এই ফোনটি নিয়ে। কিন্তু ফোনটি মার্কেটে আসে মে মাসের শেষের দিকে৷ করোনার কারনে ফোনটি বাংলাদেশে আসতে আরো সময় নেয়। বর্তমানে বাংলাদেশে আন অফিশিয়াল ভাবে ফোনটি পাওয়া যাচ্ছে৷ বাংলাদেশে অফিশিয়াল ভাবে এখনো ফোনটি আসার তথ্য নেয়৷ চলুন ফোনটি নিয়ে বিস্তারিত আলোচনা করা যাক। শাওমি নোট সিরিজের ফোন বের করে এদের রেডমি নামে সাব ব্যান্ড৷ এদের কাজ হল এই নোট সিরিজ নিয়ে কাজ করা৷ প্রতিবছর নোট সিরিজের ১/২ টা ফোন বাজারে আসে। সাথে সেই ফোন গুলার বিভিন্ন ভার্সন (যেমন - র‍্যাম ও রমের ভিত্তিতে) বাজারে আসে। এই বছরও তারা রেডমি সিরিজের নোট ৯ বাজারে আনে। এই বছর হয়তো এই সিরিজের আরো ফোন বাজারে আসবে। ডিস্পলেঃ ফোনটির ডিসপ্লে সাইজ ৬.৫৩ ইঞ্চি। এতে আইপিএস এলসিডি ডিসপ্লে ব্যবহার করা হয়েছে। এই ফোনের ডিসপ্লে প্রটেকশন হিসেবে আছে গরিলা গ্লাস ফাইভ। স্ক্রিন আর ফোনের বডির অনুপাত প্রায় ৮৩.৫%। এই ফোনের ডিসপ্লে ফুলএইচডি মানে ১০৮০পি। এই ডিস্পলের দৈর্ঘ্য ১৯.৫ একক এবং প্রস্থ হল ৯ একক। এত বড় ফোনের কারনে এই ফোনের পিপি আই ডেনসিটি ৩৯৫। যা একটু কম। প্লাটফর্মঃ এই ফোনের অপারেটিং সিস্টেম এন্ড্রয়েড ১০ এবং এর...