Data PreprocessingMachine learning

پیش پردازش داده ها در سیستم های یادگیری ماشین

پیش پردازش داده ها در یادگیری ماشین

مراحل آماده سازی داده ها در سیستم های یادگیری ماشین

مقدمه

همانطور که در مقاله ” متدولوژی استقرار  CRISP-DMدر سیستم های یادگیری ماشین” گفته شد یکی از مهمترین گام ها در این متدولوژی آماده سازی داده(Data Preparation) است. منظور  از آماده سازی داده مجموعه عملیاتی است که منجر به تولید داده های پالایش شده  و قابل استفاده در الگوریتم های یادگیری ماشن باشد ، در این مقاله قصد داریم مهمترین مرحله از آماده سازی داده ها ، که پیش پردازش داده ها نام دارد را معرفی و بررسی کنیم،همانطور که قبلا اشاره شد آماده سازی داده خود از چند مرحله تشکیل شده است که عبارتند از:

  1. تجمیع داده ها      Raw Data 
  2. طراحی یک ساختار برای نگهداری داده ها Structure Data 
  3. پیش پردازش داده ها   Data Preprocessing  
  4. تجزیه و تحلیل داده Exploration Data  Analysis 
  5. تهیه گزارش هایی تحلیلی از وضعیت داده ها Insight Report , Visual Graph
مراحل آماده سازی داده ها در سیستم های یادگیری ماشین

مرحله 1و2 یعنی تجمیع داده ها و طراحی یک ساختار برای نگهداری داده ها موضوعی است به نام ETL و Data Warehousing که از موضوعات اصلی در هوش تجاری محسوب می شود و  قطعا در آینده به صورت مفصل به آن خواهیم پرداخت .

اما موضوعی که امروز قصد داریم مطرح کنیم مراحله 3 یعنی پیش پردازش داده ها در فرایند آماده سازی داده است ، در این مقاله سعی داریم که تا حد امکان به بیان تئوری موضوع پرداخته و در مقالات بعدی نحوه انجام این کار ها به صورت عملی در زبان برنامه نویسی پایتون بیان خواهد شد.

نحوه پیش پردازش داده Data Preprocessing

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

مراحل پیش پرازش داده ها

مرحله اول پاکسازی  داده ها Data Cleansing

پاک سازی داده در فرآیند پیش پردازش داده ها ، با توجه به نوع داده هایی که در اختیار داریم می تواند یک یا همه موارد ذیل را شامل شود.

گام های پاکسازی داده ها

  • مقادیر نویز  Noise Value 
  • مقادیر از دست رفته Missing Value 
  • مقادیر تکراری Duplicate Value 
  • مقادیر از محدوده Outlier Value 

انتخاب زیر مجموعه ای از ویژگی ها Feature Subset Selection

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

  • رویکرد ناآگاهانه Brute-force Approach
    • در این روش تمامی حالت های مختلف از ویژگی ها امتحان و بهترین حالت انتخاب می شود!
  • رویکرد توکار Embedded Approach
    • در این روش کار انتخاب ویژگی و انجام کار یادگیری توسط یک الگوریتم انجام می شود
  • رویکرد فیلتر Filter Approach
    • در این روش انتخاب ویژگی ها توسط یک الگوریتم غیر از الگوریتم اصلی انجام و خروجی آن به الگوریتم اصلی داده می شود
  • رویکرد انحصاری Wrapper Approach
    • در این روش الگوریتم فقط کار انتخاب ویژگی را بر عهده دارد
  • انتخاب نمونه هاSample Filtering

منظور از انتخاب نمونه ها انتخاب تعدادی از رکورد های یک جدول از داده هاست مثلا فرض کنید از بین پرسنل یک شرکت فقط کسانی را انتخاب می کنیم که سابقه کار آنها کمتر از 5 سال است.

انتخاب نمونه ها ی مانند مثال فوق با استفاد ا ز یک قاعده صورت می گیرد و یا اینکه از روش های نمونه گیری  آماری استفاده می کند

تبدیل داده ها Data Transformation

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

نمونه های از تبدیل داده ها

گسسته سازی  داده ها  Data Discretization

در برخی از مواقع با ویژگی هایی همچون سن ، سابقه کار و … غیره مواجه می شویم که شاید صرفا داشتن خود مقدار عدد آن کمکی در تجزیه و تحلیل ما نکند و بیشتر در نظر گرفتن یک یا چند محدوده کارایی بیشتری داشته باشد در این حالت مثلا مقادیر سن را که ممکن است بین 18 تا 80 سال باشد به صورت زیر به چند طبقه گسسته تبدیل می کنیم

  • کمتر از 18
  • بین 18 تا 25
  • بین 26تا 35
  • بین 36 تا 50
  • بالاتر از 50

کاهش ابعاد  Dimensionality Reduction

به طور کلی هرقدر تعداد ویژگی های بکار رفته در الگوریتم های یادگیری ماشین کمتر باشند ، سرعت اجرای آنها بیشتر و در نتیجه کم هزینه تر خواهد شد.به همین منظور درپیش پردازش داده ها موضوع کاهش ابعاد مطرح می گردد ، در واقع در کاهش ابعاد به دنبال روش هایی هستیم که ویژگی های مهمتر را مشخص کنیم .روش هایی مانند PCA,LDA از جمله این روش ها هستند.

عملکرد الگوریتم PCA در کاهش ابعاد

تجمیع داده ها  Data Aggregation

منظور از تجمیع در پیش پردازش دادها می تواند تجمیع داده در سطح ستون یا رکورد ها باشد.

در مورد تجمیع در سطح ستون می توان ادغام دو ستون مانند کد شهرستان و شماره تلفن را باهم ادغام و به یک ستون رسید .

در مورد تجمیع سطر ها هم ادغام اطلاعات فروش روزانه و رسیدن به فروش ماهانه مثالی دیگری در این زمینه است.

تولید ویژگی Feature Creation

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

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا
بستن
بستن