انتخاب ویژگی در یادگیری ماشین چیست؟ – توضیح Featured Selection به زبان ساده


هنگام استفاده از «مجموعهدادهای» (Dataset) مشخص، به احتمال زیاد نیازی به تمامی دادهها و ستونهای مجموعهداده برای آموزش مدل «یادگیری ماشین» (Machine Learning) خود نداشته باشید. استفاده از دادههای غیر ضروری ممکن است مدل یادگیری ماشین را گمراه کرده و در نتیجه به «بیشبرازش» (Overfitting) یا «کمبرازش» (Underfitting) منتهی شود. متغیرهای ورودی مدلهای یادگیری ماشین را «ویژگی» (Feature) مینامند. هر ستون در مجموعهداده برابر با یک ویژگی است. برای آموزش دادن مدلی بهینه، باید مطمئن شویم که تنها ویژگیهای مهم و ضروری را انتخاب کردهایم. اگر ویژگیهای اضافه زیادی داشته باشیم، این امکان وجود دارد که مدل یادگیری ماشین الگوهای بیاهمیت را شناسایی و در نتیجه به خوبی آموزش نبیند. در این مطلب از مجله فرادرس، با مفهوم انتخاب ویژگی آشنا شده و نحوه بهکارگیری آن را یاد میگیریم.
در این مطلب، ابتدا مفهوم انتخاب ویژگی را تعریف و سپس چند نمونه مهم از مدلهای آن را معرفی میکنیم. در ادامه با طرح یک مسئله، از انتخاب ویژگی در جداسازی و انتخاب ویژگیهای برتر در مجموعهدادهای مشخص استفاده میکنیم. در انتهای این مطلب از مجله فرادرس، معیارهایی را برای برگزیدن مدل انتخاب ویژگی مناسب شرح داده و به چند پرسش متداول در این زمینه پاسخ میدهیم.
انتخاب ویژگی در یادگیری ماشین چیست؟
به روشی که از طریق آن ویژگیها و پارامترهای مهم دادههای خود را انتخاب میکنیم «انتخاب ویژگی» (Feature Selection) گویند. به بیان دیگر انتخاب ویژگی، فرایند انتخاب زیرمجموعهای از مناسبترین ویژگیهای مرتبط با مسئله، برای استفاده در ساخت مدل یادگیری ماشین و قدمی بسیار مهم برای طراحی مدلی بهینه از نظر محاسباتی است. برخی ویژگیها در هر مجموعهداده، ارزش چندانی به فرایند یادگیری ماشین اضافه نمیکنند و حذف آنها باعث بهبود عملکرد نهایی مدل میشود. همچنین هر چه تعداد ویژگیهای مورد استفاده در آموزش کمتر باشد، با کاهش نیروی محاسباتی لازم، در هزینههای اقتصادی نیز صرفهجویی خواهد شد.

نتایج حاصل پس از اعمال فرایند انتخاب ویژگی، قابل تفسیرتر بوده و با شناسایی زودهنگام «ویژگیهای همخط» (Collinear Features)، احتمال بروز مشکلاتی همچون بیشبرازش و کمبرازش کاهش پیدا میکند. باید توجه داشت که انتخاب ویژگیهای مناسب، بهطور کامل وابسته به دادهها و اهداف پروژه است.
چرا انتخاب ویژگی لازم است؟
مدلهای یادگیری ماشین از قانون ساده، خروجی وابسته به ورودی است پیروی میکنند. اگر ورودی مدل کیفیت قابل قبولی نداشته باشد، از خروجی نیز نباید انتظار چندان زیادی داشت. برای آموزش و یادگیری بهتر مدل، ابتدا باید دادههای زیادی جمعآوری کنیم. هنگام جمعآوری داده، احتمال وجود دادههای بیکیفیت نیز افزایش پیدا میکند؛ در صورتی که ممکن است برخی از ستونهای مجموعهداده تاثیر چندانی در بهبود عملکرد مدل نداشته باشند. همچنین حجم داده زیاد، ممکن است از سرعت فرایند آموزش مدل کاسته و بار پردازشی آن را افزایش دهد. انتخاب ویژگی، یکی از معیارهای تمایز دانشمندان علم داده حرفهای از دیگران است. در رقابتهایی با مدل یادگیری ماشین و منابع پردازشی یکسان، تنها انتخاب ویژگی است که برنده را از سایرین متمایز میکند. در نتیجه صرفنظر از انتخاب مدل، ابتدا باید دادههای مناسب برای آموزش را انتخاب کنیم. به عنوان مثال، جدول زیر که شامل اطلاعات خودروهای قدیمی است را در نظر بگیرید. وظیفه مدل، انتخاب خودروهایی است که باید اوراق شوند:

همانطور که در جدول بالا مشاهده میکنید، مدل خودرو (Model)، سال تولید (Year) و مسافت طی شده (Miles) از جمله ویژگیهای ارزشمند برای تشخیص نو یا قدیمی بودن خودرو هستند. با این حال، نام مالک قبلی خودرو (Owner)، اطلاعات مفیدی از میزان سلامت ماشین به ما ارائه نمیدهد. همین امر باعث گمراهی الگوریتم یادگیری ماشین در پیدا کردن روابط میان ویژگیهای مختلف مجموعه داده میشود. در نتیجه بهتر است برای دستیابی به عملکرد بهتر، ویژگی Owner یا همان مالک را از مجموعهداده حذف کنیم.

مدل های انتخاب ویژگی
تکنیکهای انتخاب ویژگی را میتوان به دو دسته نظارت شده و نظارت نشده تقسیم کرد. منظور از «یادگیری نظارت شده» (Supervised Learning)، استفاده از دادههای برچسبگذاری شده برای آموزش الگوریتمهای یادگیری ماشین و در نهایت پیشبینی خروجی یا همان پاسخ نمونه دادههای جدید و از قبل دیده نشده است. از طرفی دیگر، در «یادگیری نظارت نشده» (Unsupervised Learning) دادهها بدون برچسب هستند و هدف، کشف الگوهای مخفی موجود در داده است.
روش های انتخاب ویژگی نظارت شده
انتخاب ویژگی نظارت شده فرایندی در یادگیری ماشین است که در آن مجموعهای از ویژگیهای مرتبط در مجموعهداده، در واقع همان تابع خروجی پیشبینی شده مورد انتظار شما هستند. روش یادگیری نظارت شده را میتوان به سه دسته زیر تقسیم کرد:
- «روشهای جداسازی» (Filter Methods)
- «روشهای پوششی» (Wrapper Methods)
- «روشهای تعبیه شده» (Embedded Methods)
در ادامه به بررسی دقیقتر هر یک از روشهای عنوان شده در فهرست بالا میپردازیم.
روش های جداسازی
در «روشهای جداسازی» (Filter Methods)، ارزیابی ارزش هر ویژگی بدون در نظر گرفتن عملکرد مدل یادگیری ماشین صورت میپذیرد. در این روشها، برای درک «همبستگی» (Correlation) میان دادهها، تنها دادهها مورد ارزیابی قرار میگیرند. روشهای جداسازی از چهار دسته تکنیک انتخاب ویژگی زیر تشکیل میشوند:
- «بهره اطلاعاتی» (Information Gain)
- آزمون Chi-square
- «امتیاز فیشر» (Fisher’s Score)
- «نسبت مقادیر ناموجود» (Missing Value Ratio)
در روشهای جداسازی از معیار همبستگی برای بررسی مرتبط بودن یا نبودن ویژگیها به برچسبهای خروجی و حذف برخی از ویژگیهای دیگر استفاده میشود. در ادامه این مطلب، به توضیح تکنیکهای جداسازی انتخاب ویژگی میپردازیم.
بهره اطلاعاتی
تکنیک «بهره اطلاعاتی» (Information Gain)، به معنی بررسی موارد مختلف و انتخاب مفیدترین گزینه برای رسیدن به پاسخ است. نحوه عملکرد این تکنیک، مانند مرتبسازی ابزارهای مختلف بر اساس رنگ یا شکل آنها در گروههای مختلف و پیدا کردن کارآمدترین ابزار است. تکنیک بهره اطلاعاتی را میتوان مانند زیر و در زبان برنامهنویسی پایتون پیادهسازی کرد:
با در اختیار داشتن دادههای با برچسب و بدون برچسب و در ادامه اجرای تکنیک بهره اطلاعاتی بر روی آنها، میتوان میزان کارآمدی هر ویژگی را بهدست آورد.

در نمودار بالا، عدد بزرگتر نشاندهنده اهمیت و تاثیر بالای هر ویژگی در احتمال مبتلا شدن به بیماری دیابت است.
آزمون Chi-square
آزمون Chi-square، آزمون آماری سادهایست که از طریق آن میتوان متوجه مرتبط بودن یا نبودن ویژگیها به یکدیگر شد. فرمول آزمون Chi-square مانند زیر تعریف میشود:
توضیح هر یک از نمادها در فرمول آزمون Chi-square به شرح زیر است:
- نماد : نشاندهنده نتیجه آماری آزمون Chi-square.
- نماد : فراوانی مشاهده شده در یک دسته خاص.
- نماد : نشاندهنده فراوانی مورد انتظار در یک دسته.
این آزمون مانند انجام دادن نوعی بازی برای درک میزان همبستگی میان خوردن ذرت و احساس شادی است. اگر ویژگیهای در بیرون مرزها قرار بگیرند، یعنی فاقد هبستگی هستند؛ در غیر اینصورت با یکدیگر همبستگی دارند.

امتیاز فیشر
«امتیاز فیشر» (Fisher's Score) روشی است که از طریق آن میتوان مهمترین ویژگیهای هر گروه یا دسته را پیدا کرد. در این روش، به هر یک از ویژگیها بر اساس میزان اهمیتی که در فرایند یادگیری دارند، امتیاز داده میشود و هر چه امتیاز یک ویژگی بیشتر باشد، به این معنی است که باید بیشتر مورد توجه قرار بگیرد. امتیاز فیشر را میتوانیم مانند زیر و به زبان برنامهنویسی پایتون پیادهسازی کنیم:
همانطور که در نمودار زیر مشاهده میکنید، امتیاز بیشتر، نسبت مستقیمی با میزان اهمیت بیشتر ویژگی دارد.

نسبت مقادیر ناموجود
«نسبت مقادیر ناموجود» (Missing Value Ratio) معیاری است که از طریق آن تعداد ویژگیهای ناموجود در یک گروه را مشخص میکنیم. نسبت مقادیر ناموجود را میتوان به شمردن تعداد قطعههای گم شده پازل تشبیه کرد. اگر تعداد قطعه پازلهای گم شده زیاد باشد، ممکن است در تکمیل پازل و درک تصویر کلی با چالش مواجه شویم. همچنین یک ویژگی ناکامل، یعنی ویژگی که دادههای ناقصی داشته باشد، نمیتواند انتخاب خوبی برای آموزش دادن مدل یادگیری ماشین باشد.
روش های پوششی
«روشهای پوششی» (Wrapper Methods) را میتوان به دوستی تشبیه کرد که پس از بررسی ابزارهای مختلف، کارآمدترینها را به شما معرفی میکند. روشهای پوششی را میتوان به چهار گروه زیر تقسیم کرد:
- «انتخاب ویژگی رو به جلو» (Forward Selection)
- «انتخاب ویژگی رو به عقب» (Backward Selection)
- «انتخاب ویژگی جامع» (Exhaustive Feature Selection)
- «حذف بازگشتی ویژگی» (Recursive Feature Elimination)
در روشهای پوششی از معیاری «کمکی» (Helper) به عنوان مدل یادگیری ماشین که وظیفه آن شناسایی مهمترین ویژگیها در هر مجموعهداده است، استفاده میکنیم. در ادامه این مطلب، بیشتر با روشهای انتخاب ویژگی پوششی آشنا میشویم.
انتخاب ویژگی رو به جلو
فرض کنید برای تسهیل کاری، ابزار خاصی را انتخاب و از آن استفاده میکنید. سپس ابزار دیگری اضافه و بهرهوری را بالاتر نیز میبرید. با ادامه روند اضافه کردن ابزارهای جدید، در نهایت جعبه ابزاری از ابزارهای کاربردی را خواهید داشت. در نمونه کد زیر که به زبان پایتون نوشته شده است، از روش «رگرسیون لاجستیک» (Logistic Regression) برای تخمین و پیدا کردن بهترین ویژگی استفاده کردهایم:
نمودار زیر نشاندهنده تعداد ویژگیهای مورد نیاز برای رسیدن به دقتی خاص در مدل یادگیری ماشین است:

همانطور که در نمودار نیز مشاهده میکنید، تنها با چهار ویژگی میتوان به دقت تقریبی ۹۵ درصد دست یافت.
انتخاب ویژگی رو به عقب
بر خلاف روش انتخاب ویژگی رو به جلو، در این روش با مجموعه کاملی از ویژگیها شروع و سپس تک-تک ویژگیهایی که مشارکتی در دقت و عملکرد مدل ندارند حذف میشوند، تا در نهایت زیرمجموعه بهینهای از ویژگیها باقی بماند. نمودار زیر نمایشی از روش انتخاب ویژگی رو به عقب است:

در این نمودار مشاهده میکنید که در محدوده ۶ تا ۱۴ ویژگی، مدل یادگیری ماشین، دقت به نسبت ثابت و پایداری را نتیجه میدهد.
انتخاب ویژگی جامع
این روش برای شناسایی ویژگیهایی که بهترین عملکرد را در مدل یادگیری ماشین از خود به نمایش میگذارند، تمامی ترکیبهای ممکن از ویژگیها را مورد ارزیابی قرار میدهد. در ادامه پیادهسازی روش انتخاب ویژگی جامع را با زبان پایتون مشاهده میکنید. در این پیادهسازی از تابع ExhaustiveFeatureSelector و الگوریتم «جنگل تصادفی» (Random Forest) استفاده شده است:
نتیجه حاصل از این روش را میتوان مانند نمونه ترسیم کرد. توجه داشته باشید که این نمودار با خروجی پیادهسازی بالا تفاوت دارد:

حذف بازگشتی ویژگی
در این رویکرد، با زیرمجموعهای از ویژگیها شروع و در ادامه با توجه به میزان اهمیت ویژگیها، آنها را اضافه و یا حذف میکنیم. در نمودار زیر، نحوه کار روش حذف بازگشتی ویژگی را مشاهده میکنید:

همانگونه که در نمودار نیز مشخص است، حذف یا اضافه شدن ویژگیها بر اساس میزان اهمیت آنها صورت میگیرد.
روش های تعبیه شده
«روشهای تعبیه شده» (Embedded Methods) مانند ربات هوشمندی هستند که میتواند بهطور خودکار یاد گرفته و بهترین ویژگیها را برای کاربردی خاص انتخاب کند. این ربات همزمان با یادگیری، مدلسازی کرده و از این طریق مهمترین ویژگیها را شناسایی و حفظ میکند. در فهرست زیر، دو گروه از روشهای تعبیه شده را ملاحظه میکنید:
- «منظمسازی» (Regularization Method)
- «اعتبار جنگل تصادفی» (Random Forest Importance)
روشهای تعبیه شده بهطور معمول عملکرد بهتری نسبت به روشهای پوششی دارند و کاربردهای واقعگرایانهتری ارائه میدهند. در ادامه به شرح و توضیح روشهای تعبیه شده میپردازیم.
روش منظمسازی
این روش از انتخاب ویژگی، مانند بستن کمربند ایمنی هنگام رانندگی است که با جلوگیری از سرعت بالا و حفظ کنترل، ایمنی شما را تضمین میکند.

استفاده از این روش، احتمال پیچیده شدن بیش از حد و در نتیجه بیشبرازش شدن مدل را کاهش میدهد.
روش اعتبار جنگل تصادفی
برای درک بهتر روش «اعتبار جنگل تصادفی» (Random Forest Importance)، فرض کنید در مورد موضوع خاصی از گروه دوستان خود درخواست کمک کردهاید. هر کدام از دوستان شما دیدگاه شخصی خود را داشته و ممکن است برخی از آنها باهوشتر از سایرین باشند. این روش، تمامی دیدگاهها یا در اینجا «درختهای تصمیم» (Decision Trees) را مورد بررسی قرار داده و با ترکیب آنها، مهمترین معیارها در فرایند تصمیمگیری را شناسایی میکند. در قطعه کد زیر نمونهای از روش اعتبار جنگل تصادفی را پیادهسازی کردهایم:
نمودار زیر، نتیجه حاصل از اعمال این روش را نشان میدهد:

با بهرهگیری از روش اعتبار جنگل تصادفی، متوجه میشویم کدام ویژگیها بیشترین تاثیر را بر خروجی مدل یادگیری ماشین میگذارند.
روش های انتخاب ویژگی نظارت نشده
بهطور خلاصه، روشهایی را نظارت نشده مینامند که شما با استفاده از یک الگوریتم، الگوها و شباهتهای موجود در میان دادهها را بدون هیچگونه راهنمایی صریحی پیدا میکنید. به بیانی دیگر، بدون آنکه به الگوریتم بگویید چه خوب است و چه بد، ویژگیها صرفنظر از خروجی پیشبینی شده انتخاب میشوند. این روش به ما اجازه میدهد تا بدون برچسبگذاری، ویژگیها و صفات مهم دادهها را استخراج کنیم. انتخاب ویژگی نظارت نشده، مانند این است که پازلی به کامپیوتر داده و به آن اجازه دهید تا خود راهحل را پیدا کند. کامپیوتر بدون کمک شما، دادهها را سازماندهی کرده و شباهتها را کشف میکند. در زیر پنج نمونه از روشهای انتخاب ویژگی نظارت نشده را فهرست کردهایم:
- «تحلیل مولفه اصلی» (Principal Component Analysis | PCA)
- «تحلیل مولفه مستقل» (Independent Component Analysis | ICA)
- «فاکتورگیری نامنفی ماتریس» (Non-negative Matrix Factorization | NMF)
- «t-توکاری همسایگی تصادفی توزیع شده» (T-distributed Stochastic Neighbor Embedding | t-SNE)
- «خودرمزگذار» (Autoencoder)
در ادامه این مطلب از مجله فرادرس، بیشتر با روشهای انتخاب ویژگی نظارت نشده در فهرست بالا آشنا میشویم.
روش تحلیل مولفه اصلی
تحلیل مولفه اصلی یا به اصطلاح PCA، راهی برای درک و سادهسازی داده است. روشی که با استفاده از آن میتوانیم مهمترین بخشهای هر دادهای را پیدا کنیم. فرض کنید تصویری بزرگ با جزییات فراوان دارید؛ روش PCA به ما کمک میکند تا اشکال اصلی یا رنگهای شاخص در تصویر را از دیگر بخشها جدا کنیم. به بیان سادهتر، تحلیل مولفه اصلی رویکردی است برای یافتن عناصر کلیدی که تصویر اصلی را نمایندگی میکنند؛ بدون آنکه درگیر جزییات کوچکتر شویم. روش PCA را میتوان مانند نمونه با زبان پایتون پیادهسازی کرد. تنها کافیست دادههای خود را بارگذاری کرده و تابع PCA را فراخوانی کنید:
خروجی PCA نموداری حاوی «واریانس تجمعی» (Cumulative Variance) است که تعداد ویژگیها یا مولفههای اصلی نمایانگر دادهها را به تصویر میکشد.
روش تحلیل مولفه مستقل
تحیلی مولفه مستقل یا ICA، روش انتخاب ویژگی است که به ما در فهم نحوه ترکیب شدن ویژگیهای مختلف کمک میکند. فرض کنید جعبهای از صداهای مختلف از جمله صدای صحبت کردن افراد، موسیقی و بوق ماشین در اختیار دارید. با استفاده از روش ICA میتوان صداها را از یکدیگر تفکیک و مفهوم هر کدام را به تنهایی درک کرد. مانند گوش دادن به صدای مکانهای شلوغ یا ارکستر سمفونی و تلاش برای فهمیدن سخنان رد و بدل شده یا تفکیک سازهایی که در هر بخش از سمفونی نواخته میشوند. با اجرای قطعه کد زیر، میتوانیم به سادگی روش ICA را پیادهسازی کنیم:
> X_transformed.shapeخروجی پیادهسازی بالا مانند زیر خواهد بود:
(1797, 7)

روش فاکتورگیری نامنفی ماتریس
وظیفه روش فاکتوریگیری نامنفی ماتریس، تجزیه اعداد بزرگ به اعداد کوچکتر مثبت است. عدد بزرگی را فرض کنید که نماد یک تصویر کامل است و شما میخواهید اجزای تشکیلدهنده آن را یاد بگیرید. با بهرهگیری از روش فاکتورگیری نامنفی ماتریس یا NMF، میتوان اعداد کوچکتر مثبت را پیدا و پس از ترکیب آنها با یکدیگر، عدد یا تصویر بزرگ نهایی را بازسازی کرد. مانند آن است که پازلی را ابتدا بهم ریخته و سپس بررسی کنیم که چطور با کنار هم قرار دادن تکههای کوچکتر، باید پازل را از نو بازسازی کرد. مانند سایر مدلهای شرح داده شده قبلی، پیادهسازی این روش نیز بسیار راحت است:
خروجی شما ممکن است مانند زیر باشد:

روش t-توکاری همسایگی تصادفی توزیع شده
روش به اصطلاح خلاصه شده T-SNE، رویکردی در یادگیری ماشین است که با استفاده از آن میتوانیم به چگونگی ارتباط میان ویژگیهای مختلف پیببریم. فرض کنید تعدادی تصویر از حیوانات مختلف در اختیار دارید و حالا میخواهید ببینید کدام دو عکس شبیه به یکدیگر هستند. روش T-SNE در اینجا به کمک ما آمده و نقشهای متشکل از حیوانات شبیه بهم که نزدیک یکدیگر قرار گرفتهاند را در اختیار ما قرار میدهد. این روش شباهتها را به تصویر میکشد و به سادگی نیز قابل پیادهسازی است:
> X_embedded.shapeخروجی چیزی شبیه به تصویر زیر خواهد بود:
(4, 2)

روش خودرمزگذار
تکنیک «خودرمزگذار» (Autoencoders) نوعی از شبکههای عصبی مصنوعی است که یاد میگیرد چگونه کپیبرداری کند. فرض کنید نقاشی از یک حیوان را در اختیار دارید و میخواهید به کامپیوتر یاد دهید که چگونه چیزی مشابه آن را طراحی کند. یک خودرمزگذار، نقاشی را به کامپیوتر داده و آن را وادار به کپیبرداری میکند. در واقع به کامپیوتر آموزش داده میشود که چگونه با تقلید از نقاشی، یاد بگیرد خودش آن حیوان را از نو نقاشی کند. در نتیجه خودرمزگذارها در انجام فرایندهایی همچون آموزش دادن کامپیوتر برای درک و بازآفرینی نقاشیها یا تصاویر مفید هستند. بهوسیله قطعه کد زیر، میتوانید خودرمزگذاری را به راحتی و با زبان برنامهنویسی پایتون پیادهسازی کنید:
تصویر زیر نشاندهنده خروجی روش خودرمزگذار است:

انتخاب ویژگی با پایتون
در این بخش، برای آشنایی و درک بهتر فرایند انتخاب ویژگی، از مجموعهداده «کوبی برایانت» (Kobe Bryant) بازیکن بسکتبال، برای تجزیه و تحلیل پرتابهای موفق کوبی از ناحیههای مختلف زمین استفاده میکنیم.
تعداد ۲۵ ویژگی یا ستون در این مجموعهداده موجود است که ما به همه آنها نیاز نداریم. ابتدا کتابخانههای مورد نیاز را مانند زیر فراخوانی میکنیم:
سپس دو ستون loc_x و loc_y که نشاندهنده طول و عرض جغرافیایی هستند را بررسی میکنیم:
نتیجه اجرای قطعه کد بالا مانند زیر خواهد بود:

با توجه به دو نمودار خروجی بالا، مشاهده میکنیم که شکل زمین بسکتبال مانند حرف D انگلیسی نمایان شده است. بهجای دو ستون مجزا، میتوانیم دو مختصات را به یک ستون «مختصات قطبی» (Polar Coordinate) با نام angle تبدیل کنیم:
همچنین دو ستون minutes و seconds را به یک ستون با نام time تبدیل میکنیم:
مقادیر منحصربهفرد دو ستون team_id و team_name به شرح زیر است:
[1610612747]<br>['Los Angeles Lakers']این دو ستون تنها یک مقدار داشته و از همینرو میتوان آنها را حذف کرد. با قطعه کد زیر نگاهی به دو ستون match_up و opponent میاندازیم:

این دو ستون نیز مقدایر مشابهی داشته و اطلاعات مفیدی اضافه نمیکنند. در ادامه مقادیر دو ستون dist و shot_distance را بر روی نمودار یکسانی رسم میکنیم تا متوجه تفاوت آنها شویم:

مقادیر دو ستون dist و shot_distance نیز یکسان هستند. در قطعه کد زیر مقادیر ستونهای shot_zone_area ، shot_zone_basic و shot_zone_range را بررسی میکنیم:
تصاویر زیر نشاندهنده سه نمودار حاصل از ستونهای مذکور هستند:

بخشهای مختلف زمین که پرتابها از آن انجام شده است را در تصاویر مشاهده میکنید. این اطلاعات در دو ستون angle و dist موجود است. در ادامه تمامی ستونهای بیفایده را حذف میکنیم:
پس از ادغام و حذف ستونهای بیهوده، مجموعهداده نهایی ما شامل ۸ ستون یا ویژگی مهم خواهد بود.

برگزیدن مدل انتخاب ویژگی مناسب
فرایند برگزیدن مدل انتخاب ویژگی مناسب چندان دشوار نیست و تنها کافیست از نوع داده متغیرهای ورودی و خروجی اطلاع حاصل کنیم. متغیرها به دو نوع کلی زیر تقسیم میشوند:
- «متغیرهای عددی» (Numerical Variables): شامل مقادیر صحیح (Integer) و اعشاری (Float).
- «متغیرهای دستهای» (Categorical Variables): شامل مقادیر رشتهای (String)، بولی (Boolean) و برچسب (Label).
بر اساس نوع مقادیر ورودی و خروجی، عددی یا دستهای بودن آنها، میتوانیم مدل انتخاب ویژگی مناسب را مطابق با جدول زیر انتخاب کنیم:
متغیر ورودی | متغیر خروجی | مدل انتخاب ویژگی |
عددی | عددی | ضریب همبستگی پیرسون
ضریب همبستگی رتبهای اسپیرمن |
عددی | دستهای | ضریب همستگی ANOVA
ضریب همستگی رتبهای کندال |
دستهای | عددی | ضریب همبستگی رتبهای کندال
ضریب همستگی ANOVA |
دستهای | دستهای | آزمون Chi-square
«اطلاعات متقابل» (Mutual Information) |
قابل ذکر است که از ضریب همستگی کندال و ANOVA، هم برای دادههای خطی و هم غیر خطی استفاده میشود.
سوالات متداول پیرامون انتخاب ویژگی چیست؟
تا به اینجا یاد گرفتیم انتخاب ویژگی چیست و چگونه میتوانیم انواع مختلف آن را پیادهسازی کنیم. در این بخش به چند پرسش متداول در زمینه انتخاب ویژگی پاسخ میدهیم.
روش انتخاب ویژگی چیست؟
روش انتخاب ویژگی، تکنیکی در یادگیری ماشین است که انتخاب زیرمجموعهای از ویژگیهای مرتبط با مجموعه اصلی را برای بهبود عملکرد مدل شامل میشود.
انتخاب ویژگی چه قاعدهای دارد؟
در انتخاب ویژگی، باید همزمان تمرکز بر حذف ویژگیهای بیهوده، شناسایی و حفظ ویژگیهای کارآمد باشد؛ بهینهسازی که موجب ارتقاء دقت مدل یادگیری ماشین میشود.
فرایند انتخاب ویژگی از چه مراحلی تشکیل شده است؟
ابتدا باید درک خوبی از مجموعهداده مورد استفاده و مسئله پیدا کنیم. در ادامه و پس از برگزیدن روش انتخاب ویژگی مناسب، اهمیت ویژگیها بررسی و زیرمجموعهای از ویژگیها برای ارزیابی عملکرد مدل یادگیری ماشین انتخاب میشوند.
چگونه روش انتخاب ویژگی مناسب را انتخاب کنیم؟
برای آنکه بتوانیم روش انتخاب ویژگی مناسب مسئله خود را پیدا کنیم، تنها کافیست با مسئله آشنا بوده و همچنین نوع داده متغیرهای ورودی و خروجی را بشناسیم.
جمعبندی
انتخاب ویژگی، فرایندی بسیار ضروری و لازم در یادگیری ماشین است که در آن تاثیرگذارترین دادهها در بهبود عملکرد مدل، شناسایی و انتخاب میشوند. در این مطلب از مجله فرادرس یاد گرفتیم که چگونه میتوانیم از فرایند انتخاب ویژگی، برای ارتقاء عملکرد و دقت مدلهای یادگیری ماشین استفاده کنیم. جلوگیری از مشکلاتی همچون بیشبرازش و کمبرازش، از جمله مزایای تمامی روشهای انتخاب ویژگی است که در این مطلب به توضیح آنها پرداختیم.