مراحل پیشپردازش دادهها
پیش پردازش داده ها شامل تمامی مراحل از تبدیل داده ها و کدگذاری داده ها است باید یک متخصص علم داده قبل از مدلسازی داده انجام دهد تا دقت مدل یادگیری ماشین در پیش بینی افزایش یابد.
چرا پیش پردازش داده ها اهمیت دارد؟
اکثر دیتاستهای واقعی دارای نویز یا عدم سازگاری در دادهها یا دادههای گم شده هستند. زمانی که دادههای ما از کیفیت لازم برخوردار نباشند مدل یادگیری ماشین ما نیز دارای کیفیت بالایی نخواهد بود چرا که در شناسایی الگوها چندان موفق عمل نکرده و شکست میخورد. برای مثال مقادیر گم شده در دادهها یا مقادیر تکراری ممکن است دید نادرستی در مورد آمار کلی دادهها به ما بدهد. یا نقاط پرت و ناسازگار یادگیری مدل را مختل میکنند و منجر به پیش بینیهای غلط میشوند. بنابراین پیش پردازش دادهها برای افزایش کیفیت کلی دادهها و درنهایت خروجی مدل بسیارحایز اهمیت است.
در ادامه 4 مرحله در پیش پردازش دادهها را با هم مرور میکنیم:
مرحله اول: پاکسازی داده ها(Data Cleaning)
پاکسازی داده ها به عنوان یک مرحله از پیش پردازش دادهها برای پر کردن دادههای گم شده، مدیریت دادههای نویزدار و حذف نقاط پرت و دورافتاده در دادهها در نظر گرفته میشود.
1- نقاط گم شده(Missing values)
برای حل این چالش چند راه حل وجود دارد:
– حذف رکوردهای دارای مقادیر گم شده: این روش را زمانی استفاده کنید که دیتاست شما حجیم(بزرگ) است و مقادیر گم شده زیادی در یک رکورد یا tuple دارید.
– پرکردن مقادیر گم شده با مقادیر مناسب: روش های زیادی برای حل این چالش وجود دارد مثل پر کردن دستی مقادیر از دست رفته یا پیش بینی مقادیر از دست رفته با استفاده از رگرسیون یا روش های عددی مانند مقدار میانگین ستون(ویژگی)
2- هموار کردن داده های نویزدار(Noisy Data)
این روش شامل حذف خطای تصادفی یا واریانس در یک متغیر اندازه گیری شده است. این کار را میتوان به کمک تکینکهای زیر انجام داد:
باینینگ(Binning): در این روش ابتدا دادهها را به صورت نزولی یا صعودی مرتب کرده و سپس دادهها را به چند بخش تقسیم کرده و هر یک را در یک (ظرف)bin با سایزهای مساوی قرار میدهیم. همه دادهها در هر بخش میتوانند با میانگین، میانه یا مقادیر مرزی خود جایگزین شوند.
رگرسیون: این روش داده کاوی عموما برای پیش بینی استفاده می شود. این روش با برازش تمام نقاط داده در یک تابع رگرسیون به هموار سازی داده های نویز دار کمک می کند. معادله رگرسیون خطی در صورتی استفاده می شود که تنها یک ویژگی مستقل داشته باشیم. در غیر این صورت از معادلات چند جملهای استفاده میشود.
خوشه بندی(Clustering): این تکنیک به کلاستربندی یا خوشه بندی دادههایی که دارای مقادیر مشابهی هستند گفته میشود. مقادیری که در خوشه ها قرار نمیگیرند را میتوان دادههای نویز دار تلقی کرد و آنها را حذف کرد.
3- حذف نقاط پرت یا دورافتاده(Removing outliers)
تکینیک خوشه بندی داده ها، داده های مشابه را در خوشه ها قرار می دهد. نقاط داده ای که خارج از داده ها قرار میگیرند داده های دورافتاده یا ناسازگار نامیده می شود.
مرحله دوم: یکپارچه سازی داده ها(Data Integration)
یکپارچه سازی و تلفیق و تجمیع دادهها یکی از مراحل پیش پردازش دادههاست که برای ادغام و تجمیع دادههای موجود در چندین منبع به یک منبع بزرگ ترِ ذخیره داده ها مانند انبار داده اطلاق می شود. یکپارچه سازی داده اغلب زمانی استفاده می شود که ما به دنبال حل یک چالش در دنیای واقعی باشیم. برای مثال تشخیص مصارف ناهنجار در خطوط لوله های گاز. در اینجا تنها گزینه ی ما ادغام دادههای مناطق گوناگون در یک پایگاه داده بزرگتر است.
توجه داشته باشید که ما ممکن است حین یکپارچه سازی دادهها به عنوان یکی از مراحل پیش پردازش داده ها با چالش های زیر مواجه شویم:
ممکن است داده ها در قالبها و فرمتهای گوناگونی باشند یا ویژگی های متفاوتی داشته باشند که این مساله کار یکپارچه سازی داده ها را سخت تر می کند. یا ممکن است که لازم باشد ویژگی های اضافی را از تمام منابع داده ای حذف کنیم.
مرحله سوم: تبدیل داده ها(Data Transformation)
زمانی که پاکسازی داده ها انجام شد باید با تغییر ارزش، ساختار یا قالب دادهها با استفاده از استراتژیهای ذکر شده در زیر کیفیت دادهها را افزایش دهیم:
نرمال سازی داده ها(Normalization):
نرمال سازی داده ها از جمله مهم ترین تکنیکهای تبدیل داده است که به طور گسترده مورد استفاده قرار می گیرد. در این روش خصوصیات عددی به صورت بالا یا پایین مقیاسبندی میشوند تا در محدوده مشخصی قرار گیرند. نرمال سازی داده ها با تکنیک های زیر انجام می گیرد:
- Min-max normalization
- Z-Score normalization
- Decimal scaling normalization
تجمیع و یکپارچه سازی(Aggregation):
این روش برای ذخیره و ارائه داده ها در قالب خلاصه اطلاق می شود. برای مثال در بخش فروش، دادهها میتوانند تجمیع و ادغام و تبدیل شوند تا برای مثال در قالب ماه و سال و روز نمایش داده شوند.
مرحله چهارم: کاهش داده(Data Reduction)
اندازه دیتاستها در یک انبار داده گاهی انقدر زیاد است که با تجزیه و تحلیل دادهها و الگوریتمهای داده کاوی قابل مدیریت نباشد. یک راه حل برای حل این چالش استفاده از یک دیتاست بسیار کوچکتر است که از نظر حجم داده خیلی کمتر از دیتاست واقعی باشد اما کیفیت مشابه دیتاست واقعی را داشته و بتواند نتایج تحلیلی مورد نظر ما را تولید کند.
در ادامه استراتژیهای کاهش دادهها را با هم مرور میکنیم:
تجمیع مکعب داده: روشی برای کاهش حجم داده است که در آن دادههای جمع آوری شده به صورت خلاصه بیان می شود.
کاهش ابعاد: تکنیک های کاهش ابعاد برای بحث استخراج ویژگی استفاده می شوند. در واقع ابعاد به ویژگی های دادهها در یک دیتاست اشاره دارد. هدف از تکنیکهای کاهش ابعاد، کاهش تعداد ویژگی های اضافی است که در الگوریتم های یادگیری ماشین در نظر میگیریم. کاهش ابعاد را می توان با استفاده از تکنیک هایی نظیر PCA انجام دهیم.
فشرده سازی داده ها: با استفاده از فناوریهای کدگذاری، حجم دادهها به صورت قابل توجهی کاهش مییابد.
کاهش عددی(Numerosity reduction): داده ها می توانند به شکل یک مدل یا یک معادله مانند یک مدل رگرسیون نشان داده شوند. درواقع این کار، بارِ ذخیره سازی یک دیتاست حجیم را کاهش می دهد.
انتخاب درست ویژگی ها: انتخاب ویژگی های درست و مناسب بسیار حائز اهمیت است. در انتخاب ویژگی ها خاص عمل کنید. در غیر این صورت این مساله منجر به داده ها با ابعاد زیاد شده و همین امر آموزش مدل را با مشکل مواجه می کند و سبب مشکلاتی همچون Underfitting و Overfitting خواهد شد. درواقع تنها ویژگی هایی که به آموزش مدل ارزش بیشتری میدهند باید حفظ شده و بقیه را میتوان نادیده گرفت.
نویسنده: فاطمه چلونگر