ডিসিশন ট্রি হল এলোমেলো বন অ্যালগরিদমের মৌলিক বিল্ডিং ব্লক। এটি মেশিন লার্নিং-এর অন্যতম জনপ্রিয় অ্যালগরিদম হিসেবে বিবেচিত এবং শ্রেণীবিভাগের উদ্দেশ্যে ব্যবহৃত হয়। একটি সিদ্ধান্ত গাছ দ্বারা প্রদত্ত সিদ্ধান্তটি ব্যাখ্যা করতে ব্যবহার করা যেতে পারে কেন একটি নির্দিষ্ট ভবিষ্যদ্বাণী করা হয়েছিল। এর অর্থ হল প্রক্রিয়ার ভিতরে এবং বাইরে ব্যবহারকারীর কাছে পরিষ্কার হবে। এগুলি CART নামেও পরিচিত, যেমন শ্রেণীবিভাগ এবং রিগ্রেশন ট্রি। এটি একটি বাইনারি ট্রি হিসাবে কল্পনা করা যেতে পারে (যা ডেটা স্ট্রাকচার এবং অ্যালগরিদমে অধ্যয়ন করা হয়েছে)।
গাছের প্রতিটি নোড একটি একক ইনপুট ভেরিয়েবলকে উপস্থাপন করে এবং লিফ নোড (যা টার্মিনাল নোড নামেও পরিচিত) আউটপুট পরিবর্তনশীল ধারণ করে। এই লিফ নোডগুলি নোডের পূর্বাভাস দিতে ব্যবহৃত হয়। যখন একটি সিদ্ধান্ত গাছ তৈরি করা হচ্ছে, তখন মূল ধারণাটি হল যে প্রদত্ত স্থানটি একাধিক বিভাগে বিভক্ত করা হচ্ছে। কম খরচে এবং সর্বোত্তম ভবিষ্যদ্বাণী মান অর্জনের জন্য সমস্ত মানগুলি স্থাপন করা হয় এবং বিভিন্ন বিভাজনের চেষ্টা করা হয়। এই মানগুলি একটি লোভী পদ্ধতিতে বেছে নেওয়া হয়েছে।
গাছের সর্বোচ্চ গভীরতা না পৌঁছানো পর্যন্ত এই নোডগুলির বিভাজন চলতে থাকে। ডিসিশন ট্রি ব্যবহার করার পিছনে ধারণাটি হল ইনপুট ডেটাসেটটিকে নির্দিষ্ট বৈশিষ্ট্যের মানের উপর ভিত্তি করে ছোট ডেটাসেটে ভাগ করা যতক্ষণ না প্রতিটি লক্ষ্য ভেরিয়েবল একটি একক বিভাগের অধীনে না আসে। এই বিভাজনটি তৈরি করা হয়েছে যাতে প্রতিটি পদক্ষেপের জন্য সর্বাধিক তথ্য লাভ করা যায়।
প্রতিটি সিদ্ধান্ত গাছ একটি শিকড় দিয়ে শুরু হয়, এবং এই জায়গা যেখানে প্রথম বিভক্ত করা হয়. নোডগুলি সংজ্ঞায়িত করা হয়েছে তা নিশ্চিত করার জন্য একটি কার্যকর উপায় তৈরি করা উচিত।
এখানেই জিনি মান ছবিতে আসে। জিনিকে অসমতা পরিমাপ করার জন্য সবচেয়ে বেশি ব্যবহৃত পরিমাপগুলির মধ্যে একটি হিসাবে বিবেচনা করা হয়। অসমতা লক্ষ্য শ্রেণীকে বোঝায় (আউটপুট) যা একটি নোডের প্রতিটি উপসেট অন্তর্ভুক্ত হতে পারে।
DecisionTreeRegressor −
ব্যবহার করার সময় নিচের সিনট্যাক্স ব্যবহার করা হয়class sklearn.tree.DecisionTreeRegressor (*, criterion=’mse’,…
আসুন আমরা বুঝতে পারি কিভাবে DecisionTreeRegressor ব্যবহার করা যেতে পারে −
উদাহরণ
from sklearn import tree my_data = [[1, 1], [5, 5], [2,3], [7,11]] target_vals = [0.1, 1.5, 0.75, 1.73] clf = tree.DecisionTreeRegressor() print("The decision tree regressor has been called") DTreg = clf.fit(my_data, target_vals) print("Data has been fit") pred_val = DTreg.predict([[4, 7]]) print("The predicted data is ") print(pred_val)
আউটপুট
The decision tree regressor has been called Data has been fit The predicted data is [1.5]
ব্যাখ্যা
- প্রয়োজনীয় প্যাকেজ পরিবেশে আমদানি করা হয়।
- বৈশিষ্ট্য ভেক্টর এবং লক্ষ্য মান সংজ্ঞায়িত করা হয়।
- ডিসিশনট্রিরিগ্রেসর বলা হয় এবং ডেটা মডেলের সাথে মানানসই।
- 'ভবিষ্যদ্বাণী' ফাংশনটি বৈশিষ্ট্যের মানগুলির মানগুলির পূর্বাভাস দিতে ব্যবহৃত হয়৷
- আউটপুট কনসোলে প্রদর্শিত হয়।