অ্যাট্রিবিউট সাবসেট সিলেকশন অপ্রাসঙ্গিক বা রিডান্ডান্ট অ্যাট্রিবিউট (অথবা ডাইমেনশন) সরিয়ে ডেটাসেটের আকার কমায়। এর লক্ষ্য হলো এমন একটি ন্যূনতম অ্যাট্রিবিউট সেট খুঁজে বের করা যাতে ডেটা ক্লাসগুলোর ফলস্বরূপ প্রোবাবিলিটি ডিস্ট্রিবিউশন オリজিনাল ডিস্ট্রিবিউশনের (যেটি সব অ্যাট্রিবিউট ব্যবহার করে পাওয়া যায়) যতটা সম্ভব কাছাকাছি হয়। কম অ্যাট্রিবিউটে ডেটা মাইনিং করার একটি অতিরিক্ত সুবিধা আছে: এটি আবিষ্কৃত প্যাটার্নগুলোর মধ্যে একাধিক অ্যাট্রিবিউটের সংখ্যা কমায়, ফলে প্যাটার্নগুলো বোঝা সহজ হয়।
n সংখ্যক অ্যাট্রিবিউটের জন্য 2ⁿটি সম্ভাব্য সাবসেট থাকে। অ্যাট্রিবিউটের অপ্টিমাল সাবসেটের জন্য একটি এক্সহাস্টিভ সার্চ খুব ব্যয়বহুল হতে পারে, বিশেষ করে যখন n এবং ডেটা ক্লাসের সংখ্যা বেড়ে। তাই হিউরিস্টিক পদ্ধতিগুলো ব্যবহার করা হয় যা কম সার্চ স্পেস এক্সপ্লোর করে।
এই পদ্ধতিগুলো সাধারণত লালচী (greedy) ধরনের: অ্যাট্রিবিউট স্পেসে সার্চ করার সময় তারা সবসময় সেই সময় সেরা চয়ন বলে মনে হয় সেটি বেছে নেয়। তাদের কৌশল হলো লোকালি অপ্টিমাল চয়ন করা এই আশায় যে এটি গ্লোবালি অপ্টিমাল সমাধান দিকে নিয়ে যাবে। এ ধরনের গ্রিডি পদ্ধতিগুলো প্র্যাকটিসে দক্ষ এবং অপ্টিমাল সমাধানের কাছাকাছি আশুলিয়ে দিতে পারে।
সেরা এবং খারাপ অ্যাট্রিবিউটগুলো সাধারণত স্ট্যাটিস্টিক্যাল সিগনিফিকেন্স টেস্ট দিয়ে নির্ধারিত হয়, যা ধরে নেয় অ্যাট্রিবিউটগুলো পরস্পর থেকে স্বতন্ত্র। কিছু অন্যান্য অ্যাট্রিবিউট ইভ্যালুয়েশন মাপও ব্যবহার করা হয়, যাতে ইনফরমেশন গেইন মাপ (যেটি ক্লাসিফিকেশনের জন্য ডিসিশন ট্রি তৈরিতে ব্যবহৃত হয়) থাকে।
অ্যাট্রিবিউট সাবসেট সিলেকশনের পদ্ধতিগুলো
স্টেপওয়াইজ ফরওয়ার্ড সিলেকশন: প্রক্রিয়া একটি খালি অ্যাট্রিবিউট সেট দিয়ে শুরু হয়। মূল অ্যাট্রিবিউটগুলোর মধ্যে সেরা টি নির্বাচন করে রিডিউসড সেটে যোগ করা হয়। প্রতিটি পরবর্তী ধাপে, বাকি মূল অ্যাট্রিবিউটগুলোর মধ্যে সেরা টি সেটে যোগ করা হয়।
স্টেপওয়াইজ ব্যাকওয়ার্ড এলিমিনেশন: প্রক্রিয়া পুরো অ্যাট্রিবিউট সেট দিয়ে শুরু হয়। প্রতিটি ধাপে, সেটে থাকা সবচেয়ে খারাপ অ্যাট্রিবিউটটি অপসারণ করা হয়।
ফরওয়ার্ড সিলেকশন ও ব্যাকওয়ার্ড এলিমিনেশনের কম্বিনেশন: এই দুটি পদ্ধতিকে যৌথ করা হয় যাতে প্রতিটি ধাপে প্রক্রিয়া বাকি অ্যাট্রিবিউটগুলোর মধ্যে সেরা টি বেছে নেয় এবং খারাপ টি অপসারণ করে।
ডিসিশন ট্রি ইন্ডাকশন: ID3, C4.5, এবং CART-এর মতো ডিসিশন ট্রি অ্যালগরিদমগুলো মূলত ক্লাসিফিকেশনের জন্য ডিজাইন করা হয়েছিল। ডিসিশন ট্রি ইন্ডাকশন একটি ফ্লোচার্ট-সদৃশ কাঠামো তৈরি করে যেখানে প্রতিটি ইন্টারনাল (নন-লিফ) নোড একটি অ্যাট্রিবিউটে একটি টেস্ট নির্দেশ করে, প্রতিটি ব্রাঞ্চ টেস্টের ফলাফল নির্দেশ করে, এবং প্রতিটি এক্সটার্নাল (লিফ) নোড একটি ক্লাস প্রেডিকশন নির্দেশ করে। প্রতিটি নোডে, অ্যালগরিদম ডেটাকে আলাদা ক্লাসে পার্টিশন করার জন্য "সেরা" অ্যাট্রিবিউট বেছে নেয়।