پنج روش برتر برای تشخیص داده های پرت
آشنایی با تکنیکهای تشخیص داده های پرت برای همهی متخصصین علوم داده ضروری است. به کمک این تکنیکها، میتوان نمونههای ناهنجار یا دادههایی که از الگوی درست پیروی نمیکنند را تشخیص داد.
تعریف داده های پرت
طبق تعریف ویکیپدیا، داده پرت outlier نمونهای است که از سایر مشاهدات تفاوتی معنادار دارد. منشأ داده های پرت میتواند واریانس در ابزار اندازهگیری یا نوعی خطای آزمایشی باشد؛ مقادیر پرت ناشی از خطای آزمایشی معمولاً از دیتاست حذف میشوند. مقادیر پرت میتوانند مشکلاتی جدی در تجزیه و تحلیل آماری ایجاد کنند.
داده های پرت، مشاهداتی هستند که شباهتی به مشاهدات دیگر ندارند. این نمونهها به گروه مشخصی تعلق ندارند؛ بلکه مشاهداتی عمدتاً ناهنجار هستند که از سایر مقادیر دور افتادهاند. دادهی پرت دادهای است که ذاتاً با سایر دادهها تفاوت دارد؛ به این دادهها ناهنجاری Anomaly نیز گفته میشود.
برای نمونه، در بازهی پایین:
[24, 27, 19, 28, 1300, 20, 18]
به آسانی میتوان مقدار پرت را تشخیص داد. اما هنگامی که هزاران فضای چندبُعدی داریم، تشخیص مقادیر پرت کار آسانی نخواهد بود. در این صورت باید از تکنیکهای کارآمد تشخیص ناهنجاری استفاده کرد.
مقادیر پرت بر کارآیی و عملکرد مدلها تأثیر میگذارند. به همین دلیل است که تشخیص و حذف ناهنجاریها یا مقادیر پرت از دیتاستها، اهمیت بالایی دارد.
اهمیت ناهنجاریها/ داده های پرت
افزایش سریع داده ها، متخصصان را به این فکر واداشته است که رویکرد خود نسبت به ناهنجاریها را تغییر دهند. با گسترش دستگاههای اینترنت اشیاء(IOT)، این امر با چالشهای بیشتری هم روبرو خواهد شد.
برای مثال، بسیاری از افراد برای کنترل ضربان قلبشان از ساعتهای هوشمند استفاده میکنند. اگر راهی برای تشخیص ناهنجاریهای موجود در دادههای تولیدشده وجود داشته باشد، به راحتی برای پیشبینی بیماریهای قلبی از آنها استفاده کرد.
به عنوان نمونهای دیگر از کاربرد داده های پرت میتوان به جلوگیری از حوادث و تصادفات اشاره کرد.
آیا در پایتون، راهی برای مدیریت داده های پرت وجود دارد؟
ابتدا باید دادهها را وارد کتابخانه کنید؛ Numpy و Pandas از ابزارهای حیاتی این گام هستند. سپس یک دیتافریم ایجاد کنید و آن را نامگذاری کنید. این دیتافریم باید خالی باشد، در گام بعدی میتوانید ویژگیها و مقادیر را به آن اضافه کنید.
برای تشخیص مقادیر پرت در پایتون باید با این روشها آشنایی داشته باشید:
- بازمقیاسبندی دادهها
- نشانهگذاری دادهها
- حذف دادهها
این موارد، در اصل روشهای تشخیص مقادیر پرت در پایتون هستند.
اکنون سایر روشهای ساده و متداولی که برای تشخیص مقادیر پرت موجود در یک دیتاست به کار میروند را با هم مرور میکنیم.
نمودارهای جعبهای
نمودار جعبهای Box plot ویژگی جغرافیایی دادههای عددی را بر اساس چارکهای آنها نمایش میدهد. این روش ساده در تشخیص ناهنجاریها یا مقادیر پرت بسیار کارآمد است.
برای تفسیر نمودار جعبهای، خط پایینی و بالایی را محدودهی توزیع دادهها در نظر بگیرید. هر دادهای که بالاتر از این دو خط باشد، به عنوان ناهنجاری در نظر گرفته میشود.
ساختار نمودارهای جعبهای مبتنی بر مفهوم دامنه میانچارکی Interquartile Range(IQR) است. IQR در تشخیص مقادیر پرت نقش بسیار مهمی ایفا میکند.
RRCF
آمازون که از غولهای فناوری دنیاست، برای تشخیص هرگونه ناهنجاری یا مقادیر پرت، از الگوریتم RRCF استفاده میکند.
این الگوریتم یک نمرهی ناهنجاری به دست میدهد. هرچه نمره پایینتر باشد، آن نمونه نرمالتر است؛ بالا بودن نمرهی ناهنجاری به معنی حضور یک ناهنجاری است.
تعیین بالا یا پایین بودن نمرهی ناهنجاری به مورد کاربرد این الگوریتم بستگی دارد؛ در حالت عادی، نمرهای که سه انحراف معیار از میانگین فاصله داشته باشد را معمولاً به عنوان مقدار پرت در نظر میگیرند. نکتهی جالب در مورد این الگوریتم این است که روی دادههای ابعادبالا، دادههای آفلاین و دادههای زنده و لحظهای هم عملکرد خوبی دارد.
[irp posts=”7712″]
جنگل ایزوله
جنگل ایزوله Isolation Forest از یک الگوریتم یادگیری ماشین غیرنظارتشده استفاده میکند که مربوط به خانوادهی درختهای تصمیم است.
روشهای به کاررفته در این رویکرد از سایر رویکردهای موجود متفاوت هستند. بیشتر روشها سعی میکنند در ابتدا ناحیهی نرمال دادهها را تشخیص دهند و سپس به تشخیص مواردی که از این ناحیه خارج هستند میپردازند.
اما نحوهی کارکرد جنگل ایزوله فرق دارد؛ زیرا به جای ترسیم نواحی نرمال، ابتدا ناهنجاریها را جدا میکند.
نقطهقوت این رویکرد، موفقیت آن در دادههای ابعادبالاست.
انحراف استاندارد
حتماً با مفهوم و کارکرد انحراف معیار آشنایی دارید. وقتی توزیع دادهها نرمال باشد، حدود 68% دادهها در فاصلهی یک انحراف معیار، 95% آنها در فاصلهی دو انحراف معیار و 7/99% آنها در فاصلهی سه انحراف معیار از میانگین قرار میگیرند.
بنابراین هر نقطهدادهای که بیش از سه انحراف معیار از میانگین فاصله داشته باشد، به عنوان مقدار پرت در نظر گرفته میشود.
خوشهبندی DBScan
این روش، همانطور که از اسمش مشخص است، مبتنی بر رویکرد خوشهبندی است. خوشهبندی DBScan برای تشخیص مقادیر پرت از یک روش تشخیص ناهنجاری چگالی-محور Density-based استفاده میکند. DBScan هم برای دادههای تکبُعدی و هم چندبُعدی، روشی ایدهآل به شمار میرود.
[irp posts=”11517″]
از جمله الگوریتمهای خوشهبندی که در تشخیص ناهنجاریها به کار میروند میتوان به خوشهبندی سلسلهمراتبی Hierarchical clustering یا k-mean اشاره کرد.
DBScan مبتنی بر سه مفهوم اساسی است:
- نقاط مرکزی: برای درک این مفهوم، ابتدا باید هایپرپارامترهای تعریف شده در DBScan را بشناسید:
- [HP] min_samples: حداقل تعداد نقاط مرکزی لازم برای ایجاد خوشه
- [HP] eps. Eps: حداکثر فاصلهی بین دو نمونهی حاضر در یک خوشه (شعاع خوشه)
- نقاط مرزی: نقاطی که تقریباً در خوشه قرار دارند اما از مرکز خوشه خیلی دور هستند.
- نقاط نویزی: به نقاطی که به هیچ خوشهای متعلق نیستند، نویز گفته میشود. این نقاط، فارغ از اینکه ناهنجار باشند یا نه، باید مورد بررسی قرار بگیرند.
جمعبندی
مقادیر پرت نشاندهندهی بیکیفیتی دادهها هستند. به همین دلیل، برای استخراج اطلاعات از دادهها و دستیابی به پیشبینیهای درست، باید با تشخیص ناهنجاریها و مقادیر پرت آشنا باشید. دادههای بیکیفیت اعتبار پیشبینی شما را زیر سؤال میبرند.