বালতি

চলুন শুরু করা যাক মেশিন লার্নিং ক্র্যাশ কোর্সের একটি মূল ধারণার দ্রুত পর্যালোচনা দিয়ে। নীচের চার্টে বিতরণ দেখুন।

প্রতি অক্ষাংশে বাড়ির একটি প্লট। প্লটটি অত্যন্ত অনিয়মিত, 36 অক্ষাংশের চারপাশে অস্থিরতা এবং 34 এবং 38 অক্ষাংশের চারপাশে বিশাল স্পাইক রয়েছে। চিত্র 1: বাড়ির দাম বনাম অক্ষাংশ।

নিম্নলিখিত প্রশ্নের জন্য, আপনার উত্তর চেক করতে পছন্দসই তীরটিতে ক্লিক করুন:

চিত্র 1 বিবেচনা করুন। আপনি যদি মনে করেন যে অক্ষাংশ আবাসন মানগুলির একটি ভাল ভবিষ্যদ্বাণী হতে পারে, তাহলে আপনার কি অক্ষাংশকে ভাসমান-বিন্দু মান হিসাবে ছেড়ে দেওয়া উচিত? কেন অথবা কেন নয়? (ধরুন এটি একটি লিনিয়ার মডেল।)
হ্যাঁ — যদি ডেটাসেটে অক্ষাংশ একটি ফ্লোটিং-পয়েন্ট মান হয়, তাহলে আপনার এটি পরিবর্তন করা উচিত নয়।
আপনি যদি আপনার নেটওয়ার্কে সেই ফ্লোটিং-পয়েন্ট মানগুলিকে ফিড করেন তবে এটি বৈশিষ্ট্য এবং লেবেলের মধ্যে একটি রৈখিক সম্পর্ক শিখতে চেষ্টা করবে। কিন্তু একটি রৈখিক সম্পর্ক অক্ষাংশের জন্য সম্ভবত নয়। অক্ষাংশে এক-ডিগ্রি বৃদ্ধি (বলুন, 34 থেকে 35 ডিগ্রি পর্যন্ত) মডেলের আউটপুটে কিছু পরিমাণ পরিবর্তন আনতে পারে, যেখানে ভিন্ন এক-ডিগ্রি বৃদ্ধি (বলুন, 35 থেকে 36 ডিগ্রি পর্যন্ত) ভিন্ন পরিমাণ পরিবর্তন আনতে পারে। . যে অ-রৈখিক আচরণ.
না — অক্ষাংশ এবং আবাসন মানগুলির মধ্যে কোনও রৈখিক সম্পর্ক নেই৷
আপনি সন্দেহ করেন যে পৃথক অক্ষাংশ এবং আবাসন মানগুলি সম্পর্কিত, কিন্তু সম্পর্ক রৈখিক নয়।

অক্ষাংশের উদাহরণের মতো ক্ষেত্রে, প্রতিটি বালতির আবাসন মান সম্পর্কে আলাদা কিছু শিখতে আপনাকে অক্ষাংশগুলিকে বালতিতে ভাগ করতে হবে। থ্রেশহোল্ডের একটি সেট ব্যবহার করে সাংখ্যিক বৈশিষ্ট্যগুলির এই শ্রেণীবদ্ধ বৈশিষ্ট্যগুলিতে রূপান্তরকে বলা হয় বাকেটিং (বা বিনিং)। এই bucketing উদাহরণে, সীমানা সমানভাবে ফাঁক করা হয়.

আগের চিত্রের মতো অক্ষাংশ বনাম আবাসন মূল্যের একই প্লট৷ এবার অবশ্য প্লটটি 11টি "বিন" পূর্ণ সংখ্যা অক্ষাংশের মধ্যে।

চিত্র 2: বাড়ির দাম বনাম অক্ষাংশ, এখন বালতিতে বিভক্ত।

কোয়ান্টাইল বাকেটিং

বালতি যোগ করে আমাদের গাড়ির দামের ডেটাসেট আবার দেখুন। প্রতি বালতিতে একটি বৈশিষ্ট্য সহ, মডেলটি 5000-10000 পরিসরের সমস্ত উদাহরণের মতো>45000 পরিসরে একটি একক উদাহরণের জন্য ততটা ক্ষমতা ব্যবহার করে। এই অপব্যয় মনে হয়. কিভাবে আমরা এই পরিস্থিতির উন্নতি করতে পারি?

সেই দামে বিক্রি হওয়া গাড়ির সংখ্যা প্রতি গাড়ির দামের একটি প্লট। প্লটটি 5000 (গাড়ির দাম) পরিসীমা সহ 10টি সমান আকারের বালতিতে বিভক্ত। প্রথম তিনটি বালতিতে অনেক উদাহরণ রয়েছে, কিন্তু শেষ সাতটি বালতিতে খুব কম উদাহরণ রয়েছে।

চিত্র 3: বিভিন্ন দামে বিক্রি হওয়া গাড়ির সংখ্যা।

সমস্যাটি হল যে সমানভাবে ব্যবধানযুক্ত বালতিগুলি এই বিতরণটিকে ভালভাবে ক্যাপচার করে না। সমাধানটি বালতি তৈরি করার মধ্যে রয়েছে যার প্রতিটিতে একই সংখ্যক পয়েন্ট রয়েছে। এই কৌশলটিকে কোয়ান্টাইল বাকেটিং বলা হয়। উদাহরণস্বরূপ, নিম্নলিখিত চিত্রটি গাড়ির দামকে কোয়ান্টাইল বালতিতে ভাগ করে। প্রতিটি বালতিতে একই সংখ্যক উদাহরণ পাওয়ার জন্য, কিছু বালতি একটি সংকীর্ণ মূল্যের স্প্যানকে অন্তর্ভুক্ত করে যখন অন্যগুলি একটি খুব বিস্তৃত মূল্যের স্প্যানকে অন্তর্ভুক্ত করে।

কোয়ান্টাইল বালতি ছাড়া চিত্র 3 এর মতো। যে, বালতি এখন বিভিন্ন আকার আছে। সবচেয়ে ছোট বালতিটির পরিসীমা প্রায় 1000 ডলার এবং সবচেয়ে বড় বালতিটির পরিসীমা প্রায় 25000 ডলার। প্রতিটি বালতিতে গাড়ির সংখ্যা এখন প্রায় একই।

চিত্র 4: কোয়ান্টাইল বাকেটিং প্রতিটি বালতিকে প্রায় একই সংখ্যক গাড়ি দেয়।

বাকেটিং সারাংশ

আপনি যদি আপনার সংখ্যাসূচক বৈশিষ্ট্যগুলিকে বাকেটাইজ করতে বেছে নেন, তাহলে আপনি কীভাবে সীমানা নির্ধারণ করছেন এবং আপনি কোন ধরণের বাকেটিং প্রয়োগ করছেন সে সম্পর্কে পরিষ্কার হন:

  • সমানভাবে ব্যবধানযুক্ত সীমানা সহ বালতিগুলি : সীমানাগুলি স্থির এবং একই পরিসরকে ঘিরে থাকে (উদাহরণস্বরূপ, 0-4 ডিগ্রী, 5-9 ডিগ্রী, এবং 10-14 ডিগ্রী, বা $5,000-$9,999, $10,000-$14,999, এবং $15,000-$999)। কিছু বালতিতে অনেকগুলি পয়েন্ট থাকতে পারে, অন্যদের মধ্যে কম বা কিছুই থাকতে পারে।
  • কোয়ান্টাইল সীমানা সহ বালতি: প্রতিটি বালতিতে একই সংখ্যক পয়েন্ট রয়েছে। সীমানা স্থির নয় এবং মানগুলির একটি সংকীর্ণ বা প্রশস্ত স্প্যানকে অন্তর্ভুক্ত করতে পারে।