ভূমিকা
মেশিন লার্নিং প্রজেক্টে ডেটা বা তথ্যের গুণমান খুবই গুরুত্বপূর্ণ। আপনি যদি ভুল বা অস্বাভাবিক তথ্য দিয়ে মডেল তৈরি করেন, তবে সেটির ফলাফলও ভুল আসবে। এই ভিডিওতে আমরা রিয়েল এস্টেট (বাড়ি-ঘর বেচাকেনা) সংক্রান্ত একটি প্রজেক্টের ডেটা থেকে 'আউটলায়ার' (Outliers) বা অস্বাভাবিক ডেটা পয়েন্টগুলো শনাক্ত করা এবং সেগুলো মুছে ফেলার প্রক্রিয়া শিখবো।
১. আউটলায়ার কী এবং কেন এটি গুরুত্বপূর্ণ?
রেফারেন্স: [00:00]
সহজ কথায়, আউটলায়ার হলো এমন সব ডেটা যা সাধারণ তথ্যের চেয়ে অনেক বেশি বা অনেক কম। এগুলো অনেক সময় ডেটা এন্ট্রি ভুল হতে পারে, আবার কখনও বাস্তবেই এমন হতে পারে কিন্তু মডেলের জন্য সেগুলো বিভ্রান্তিকর।
- উদাহরণ: ধরুন, আপনি এমন একটি বাড়ির তথ্য পেলেন যা ৫০০ স্কয়ার ফুট কিন্তু তাতে ১০টি বেডরুম আছে! বাস্তবে এটি অসম্ভব বা খুবই অদ্ভুত। এই জাতীয় ডেটাগুলোকে আউটলায়ার বলা হয়। এগুলো মডেলের সঠিক পূর্বাভাসের ক্ষমতা নষ্ট করে দেয়, তাই এগুলো সরিয়ে ফেলা জরুরি।
২. স্কয়ার ফিট এবং বেডরুমের অনুপাত বিশ্লেষণ
রেফারেন্স: [00:44]
এখানে আমরা ব্যবসার ম্যানেজারের সাথে কথা বলে একটি নিয়ম বা 'থ্রেশহোল্ড' (Threshold) ঠিক করি। থ্রেশহোল্ড মানে একটি সীমা—এর নিচে বা উপরে হলে আমরা সেটিকে অস্বাভাবিক ধরব।
- পদ্ধতি: সাধারণত প্রতি বেডরুমে ন্যূনতম ৩০০ স্কয়ার ফিট জায়গা থাকা স্বাভাবিক। যদি কোথাও তার চেয়ে কম জায়গা পাওয়া যায়, তবে সেই ডেটাগুলো আমরা ফিল্টার করে বের করে ফেলি।
কোডিং স্নাইপেট:
Python
# যেখানে প্রতি বেডরুমের স্কয়ার ফিট ৩০০-এর কম, সেগুলোকে বাদ দেওয়া হচ্ছে
df6 = df[~(df.total_sqft/df.bhk < 300)]
- ব্যাখ্যা: এখানে
~চিহ্নটি ব্যবহার করা হয়েছে উল্টোটি করার জন্য। অর্থাৎ, যে ডেটাগুলো ৩০০-এর কম সেগুলো বাদ দিয়ে বাকিগুলো রাখা হচ্ছে।
৩. প্রাইস পার স্কয়ার ফিট (Price per sqft) ক্লিনআপ
রেফারেন্স: [03:52]
অনেক সময় প্রতি স্কয়ার ফিটের দাম অস্বাভাবিকভাবে বেশি বা কম থাকে। এগুলো ঠিক করতে আমরা 'স্ট্যান্ডার্ড ডেভিয়েশন' (Standard Deviation) নামক একটি পরিসংখ্যানের নিয়ম ব্যবহার করি।
- সহজ ব্যাখ্যা: স্ট্যান্ডার্ড ডেভিয়েশন হলো ডেটাগুলো তাদের গড় (Mean) থেকে কতটা দূরে ছড়িয়ে আছে তার পরিমাপ। আমরা যদি ধরে নিই যে আমাদের ডেটা একটি সাধারণ বিন্যাসে (Normal Distribution) আছে, তবে গড়ের আশেপাশে যে ডেটাগুলো থাকে সেগুলোই আসল। অনেক দূরের ডেটাগুলো আমরা মুছে ফেলি।
৪. বেডরুমের সংখ্যার সাথে দামের তুলনা
রেফারেন্স: [07:38]
কখনও কখনও দেখা যায় একই সাইজের জায়গায় ৩ বেডরুমের বাড়ির চেয়ে ২ বেডরুমের বাড়ির দাম বেশি। এটি যৌক্তিক মনে নাও হতে পারে। গ্রাফ বা স্ক্যাটার প্লট (Scatter Plot) ব্যবহার করে আমরা এই অস্বাভাবিক কেসগুলো দেখি এবং নির্দিষ্ট লজিক ব্যবহার করে সেগুলো মুছে ফেলি।
৫. বাথরুমের সংখ্যা নিয়ে সতর্কতা
রেফারেন্স: [15:38]
বাথরুমের ক্ষেত্রে একটি সাধারণ নিয়ম হলো: একটি বাড়ির বাথরুমের সংখ্যা সাধারণত বেডরুমের সংখ্যার চেয়ে ২টির বেশি হওয়া উচিত নয়। যদি ৩ বেডরুমের বাড়িতে ৮টি বাথরুম থাকে, তবে সেটি নিশ্চয়ই কোনো ভুল। এই ধরনের ডেটাও আমরা সরিয়ে দিই।
৬. ফাইনাল ডেটা সেট তৈরি
সব অস্বাভাবিক ডেটা বাদ দেওয়ার পর, যে ফিচারগুলো বা কলামগুলো আর প্রয়োজন নেই (যেমন: price_per_sqft বা size), সেগুলো ড্রপ (Drop) করে আমরা একটি পরিষ্কার ডেটা সেট তৈরি করি যা মেশিন লার্নিং মডেল ট্রেনিংয়ের জন্য একদম প্রস্তুত।
বিশ্লেষণ ও আমার মতামত
এই ভিডিওটি ডেটা সায়েন্সের একটি বাস্তবমুখী শিক্ষা দেয়। এখানে সবচেয়ে বড় শিক্ষা হলো—শুধুমাত্র কোডিং জানলেই হয় না, ডোমেইন নলেজ বা বিষয়বস্তু সম্পর্কে জ্ঞান থাকা জরুরি। যেমন, একজন রিয়েল এস্টেট বিশেষজ্ঞ ছাড়া আপনি হয়তো বুঝতে পারতেন না যে ১০ বেডরুমের বাড়িতে ২০ বাথরুম কেন অস্বাভাবিক।
পরামর্শ: প্রজেক্ট করার সময় সবসময় ডেটার সাথে 'খেলুন', অর্থাৎ গ্রাফ প্লট করে দেখুন ডেটাগুলো বাস্তবে কেমন দেখাচ্ছে। অনেক সময় কোড ঠিক থাকলেও ডেটা ভুল হতে পারে, যা কেবল ভিজ্যুয়ালাইজেশন বা গ্রাফ দেখলে সহজেই ধরা পড়ে। এই ভিডিওটি যারা নতুন ডেটা সায়েন্স শিখছেন, তাদের জন্য একটি দুর্দান্ত গাইড।
ভিডিও লিঙ্ক: Machine Learning & Data Science Project - 4 : Outlier Removal
[
Machine Learning & Data Science Project - 4 : Outlier Removal (Real Estate Price Prediction Project)
codebasics · 210K views
](http://www.youtube.com/watch?v=cbqZa_1vzcg)

মন্তব্যসমূহ
একটি মন্তব্য পোস্ট করুন
আপনার সমস্যাটি কমেন্ট করে আমাদের জানান :-d