آموزش انتخاب ویژگی داده ها در یادگیری ماشین با پایتون

انتخاب ویژگی داده ها در یادگیری ماشین با پایتون (Feature Selection) یکی از مراحل مهم است که شامل انتخاب زیرمجموعه‌ای از ویژگی‌های موجود به‌منظور بهبود عملکرد مدل می‌باشد. در ادامه، برخی از روش‌های متداول انتخاب ویژگی معرفی شده‌اند:

روش‌های فیلتر (Filter Methods)

در این روش، میزان مرتبط بودن هر ویژگی با هدف مدل به‌صورت آماری (مانند همبستگی، اطلاعات متقابل، آزمون کای‌دو و …) محاسبه و بر اساس امتیاز به‌دست‌آمده رتبه‌بندی می‌شود. ویژگی‌هایی که امتیاز پایینی دارند، از مدل حذف می‌گردند.

برای پیاده‌سازی روش‌های فیلتر در زبان پایتون، می‌توانید از توابع SelectKBest یا SelectPercentile از ماژول sklearn.feature_selection استفاده کنید. در ادامه، یک قطعه کد ساده برای این منظور آمده است:

روش‌های پوششی (Wrapper Methods)

در این روش، با افزودن یا حذف ویژگی‌ها، عملکرد مدل ارزیابی می‌شود و آن زیرمجموعه‌ای از ویژگی‌ها انتخاب می‌گردد که بهترین عملکرد را به همراه دارد. اگرچه این روش از نظر محاسباتی هزینه‌بر است، اما دقت بالاتری نسبت به روش‌های فیلتر دارد.

برای پیاده‌سازی روش‌های پوششی در پایتون، می‌توانید از تابع RFE (حذف بازگشتی ویژگی‌ها – Recursive Feature Elimination) از ماژول sklearn.feature_selection استفاده نمایید. در زیر، مثالی از نحوه استفاده از این روش آورده شده است:

روش‌های توکار (Embedded Methods)

در این روش، انتخاب ویژگی به‌طور مستقیم در فرآیند ساخت مدل ادغام می‌شود. این کار با استفاده از تکنیک‌هایی مانند رگرسیون لاسو (Lasso)، رگرسیون ریج (Ridge) یا درخت تصمیم (Decision Tree) انجام می‌گیرد. این مدل‌ها به هر ویژگی یک وزن اختصاص می‌دهند و ویژگی‌هایی که وزن پایینی دارند، از مدل حذف می‌شوند.

برای پیاده‌سازی روش‌های توکار در پایتون، می‌توانید از توابع رگرسیون Lasso یا Ridge از ماژول sklearn.linear_model استفاده نمایید. نمونه‌ای از کد پیاده‌سازی روش توکار با استفاده از لاسو در ادامه آمده است:

تحلیل مؤلفه‌های اصلی (PCA)

این روش، نوعی یادگیری بدون‌ناظر (unsupervised learning) محسوب می‌شود که در آن ویژگی‌های اصلی داده به مجموعه‌ای از مؤلفه‌های غیرهمبسته تبدیل می‌گردند؛ این مؤلفه‌ها بیشترین واریانس موجود در داده را توضیح می‌دهند. با تعیین آستانه‌ای برای تعداد مؤلفه‌ها، می‌توان ابعاد داده را کاهش داد.

برای پیاده‌سازی PCA در پایتون، می‌توانید از تابع PCA از ماژول sklearn.decomposition استفاده نمایید. در مثال زیر، تعداد ویژگی‌ها با استفاده از ۳ مؤلفه اصلی کاهش یافته است:

حذف بازگشتی ویژگی‌ها (RFE)

در این روش، ویژگی‌هایی که کمترین اهمیت را دارند، به‌صورت بازگشتی حذف می‌شوند تا در نهایت یک زیرمجموعه از مهم‌ترین ویژگی‌ها به‌دست آید. این روش مبتنی بر مدل است و می‌تواند از نظر محاسباتی پرهزینه باشد؛ با این حال، در داده‌هایی با ابعاد بالا عملکرد مطلوبی دارد.

برای پیاده‌سازی RFE در پایتون، می‌توانید از تابع RFECV (حذف بازگشتی ویژگی با اعتبارسنجی متقابل) از ماژول sklearn.feature_selection استفاده نمایید. در ادامه نمونه‌ای از کد پیاده‌سازی آورده شده است:

این تکنیک‌های انتخاب ویژگی را می‌توان به‌صورت مستقل یا ترکیبی برای بهبود عملکرد مدل‌های یادگیری ماشین به‌کار برد. انتخاب روش مناسب باید با توجه به حجم داده، نوع ویژگی‌ها و مدل مورد استفاده انجام شود.

مثال

در این مثال، سه روش انتخاب ویژگی را پیاده‌سازی می‌کنیم:

  • انتخاب ویژگی تک‌متغیره با آزمون کای‌دو

  • حذف بازگشتی ویژگی با اعتبارسنجی متقابل (RFECV)

  • تحلیل مؤلفه‌های اصلی (PCA)

ما از مجموعه‌داده تشخیص سرطان سینه ویسکانسین (Breast Cancer Wisconsin – Diagnostic) استفاده خواهیم کرد که در کتابخانه scikit-learn موجود است. این داده‌ها شامل ۵۶۹ نمونه با ۳۰ ویژگی هستند و هدف، طبقه‌بندی تومور به خوش‌خیم یا بدخیم است.

در ادامه، کدهای مربوط به پیاده‌سازی هر یک از این روش‌ها ارائه شده‌اند:

خروجی

با اجرای کد فوق، خروجی مشابه زیر در ترمینال چاپ خواهد شد:

برای عملی کردن مهارت‌های یادگیری ماشین و پردازش داده‌ها، می‌توانید مسیر خود را با یک آموزش طراحی سایت با پایتون ادامه دهید. این آموزش به شما امکان می‌دهد داده‌ها و مدل‌های خود را در قالب وب‌اپلیکیشن‌های واقعی پیاده‌سازی کنید و تجربه کار عملی با پایتون را کسب کنید.

5/5 - (1 امتیاز)

راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.

آموزش انیمیشن‌ سازی دو بعدی با موهو – خلق انیمیشن‌ های خلاقانه شبیه دیرین دیرین
  • انتشار: ۳۰ مرداد ۱۴۰۴

دسته بندی موضوعات

آخرین محصولات فروشگاه

مشاهده همه

نظرات

بازخوردهای خود را برای ما ارسال کنید