پاک سازی داده (حذف ستون هایی که دارای واریانس کم هستند)
رویکرد دیگر برای مشکل حذف ستونهایی با مقادیر منحصر به فرد کم، در نظر گرفتن واریانس ستون است. به یاد داشته باشید که واریانس آماری است که بر روی یک متغیر به عنوان میانگین مجذور اختلاف مقادیر در نمونه از میانگین محاسبه می شود. واریانس را می توان به عنوان فیلتری برای شناسایی ستون هایی که باید از مجموعه داده حذف شوند استفاده کرد. ستونی که دارای یک مقدار واحد است دارای واریانس 0.0 است و ستونی که مقادیر منحصر به فرد بسیار کمی دارد ممکن است واریانس کمی داشته باشد.
کلاس VarianceThreshold از کتابخانه scikit-learn از این به عنوان یک نوع انتخاب ویژگی پشتیبانی می کند. میتوان نمونه ای از کلاس ایجاد کرد و میتوانیم آرگومان آستانه را مشخص کنیم که برای حذف ستونهایی با یک مقدار واحد، 0.0 پیشفرض است. سپس با فراخوانی تابع fit transform() میتوان آن را برازش کرد و به یک مجموعه داده اعمال کرد تا یک نسخه تبدیل شده از مجموعه داده ایجاد شود که در آن ستونهایی که دارای واریانس کمتر از آستانه هستند به طور خودکار حذف شوند.
اجرای مثال ابتدا مجموعه داده را بارگیری می کند، سپس تبدیل را برای حذف همه ستون های با واریانس 0.0 اعمال می کند. شکل مجموعه داده قبل و بعد از تبدیل گزارش می شود و می بینیم که ستون تکی که همه مقادیر یکسان هستند حذف شده است.
ما می توانیم این مثال را گسترش دهیم و ببینیم وقتی از آستانه های مختلف استفاده می کنیم چه اتفاقی می افتد. ما می توانیم دنباله ای از آستانه ها را از 0.0 تا 0.5 با اندازه گام 0.05 تعریف کنیم، به عنوان مثال: 0.0، 0.05، 0.1 و غیره…
در نهایت می توانیم نتایج را رسم کنیم. با کنار هم قرار دادن این موارد، مثال کاملی از مقایسه آستانه واریانس با تعداد ویژگیهای انتخاب شده در زیر آمده است.
اجرای مثال ابتدا داده ها را بارگیری می کند و تأیید می کند که مجموعه داده خام دارای 49 ستون است. در مرحله بعد، VarianceThreshold به مجموعه داده خام با مقادیر 0.0 تا 0.5 اعمال می شود و تعداد ویژگی های باقیمانده پس از اعمال تبدیل گزارش می شود. می بینیم که تعداد ویژگی های مجموعه داده به سرعت از 49 در داده های بدون تغییر به 35 با آستانه 0.15 کاهش می یابد. بعداً با آستانه 0.5 به 31 کاهش می یابد (18 ستون حذف شده است).
سپس یک نمودار خطی ایجاد می شود که رابطه بین آستانه و تعداد ویژگی های مجموعه داده تبدیل شده را نشان می دهد. می بینیم که حتی با یک آستانه کوچک بین 0.15 و 0.4، تعداد زیادی از ویژگی ها (14) بلافاصله حذف می شوند.
قوانین ارسال دیدگاه در سایت