پیش پردازش داده - data preprocessing
پیش پردازش داده ها در داده کاوی
سه شنبه, ۲۱ آبان , ۱۳۹۸

پیش پردازش داده (Data Preprocessing) به مراحلی گفته میشود که در آن داده ها برای داده کاوی آماده میشود. لازم به ذکر است که این مراحل جز مهم ترین گام ها در داده کاوی هستند. پس باید با دقت با مفهوم آن آشنا شد. در این مطلب قصد داریم شما را با روش‌های مختلفی که پیش پردازش داده ها با آن انجام می‌شود، آشنا کنیم.

مراحل پیش پردازش داده عموما به دو دسته تقسیم میشوند که عبارتند از:

  • انتخاب اشیا داده و ویژگی ها (attribute) برای تحلیل
  • ایجاد کردن یا تغییر دادن ویژگی ها

در ادامه ما درباره ی روش های زیر در Data Preprocessing صحبت خواهیم کرد. هر کدام از این روش ها عملکرد متفاوتی دارند  و تغییرات مخصوص به خود را روی داده ها ایجاد می‌کنند.

  1. یکپارچه سازی داده ها (Integration)
  2. تجمیع (Aggregation)
  3. نمونه گیری(Sampling)
  4. کاهش ابعاد(Dimensionality Reduction)
  5. انتخاب زیر مجموعه ای از ویژگی ها(Feature Subset Selection)
  6. خلق ویژگی(Feature Creation)
  7. گسسته سازی و دوگانه سازی (Discretization and Binarization)
  8. تغییر شکل متغییرها (Variable Transformation)

۱-یکپارچه سازی داده ها - Data Integration

یکپارچه سازی داده ها روشی است که شامل ترکیب داده ها از چند منبع غیر همگون، انتقال آن ها به یک انبار منسجم و ایجاد یک دید یکتا به داده ها. این منابع می تواند شامل مکعب داده، پایگاه داده، یا فایل های یک سطحی (flat file) باشند. دو روش اصلی برای یکپارچه سازی داده وجود دارد.

اتصال محکم (Tight Coupling)

  • در این روش از انبار داده به عنوان یک مولفه ی بازیابی اطلاعات استفاده می شود.
  • همچنین داده ها از چند منبع مختلف ترکیب شده و با استفاده از روند استخراج، پالایش، بارگذاری (ETL) به یک مکان فیزیکی انتقال داده می‌شوند.

اتصال سست (Loose Coupling)

  • در این روش رابطی تهیه می‌گردد که در آن کویری را از کاربر گرفته و به شیوه‌ای که پایگاه داده مبدا متوجه آن شود، تبدیل می‌کند. سپس کوئری را برای بدست آوردن نتیجه به طور مستقیم به پایگاه داده مبدا می‌فرستد.
  • و همچنین داده ها فقط در پایگاه های داده مبدا اصلی باقی خواهند ماند.

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

در زبان ساده به ترکیب و تبدیل دو یا چند ویژگی (یا اشیا) به یک ویژگی (یا اشیا) تجمیع گفته می‌شود هدف از تجمیع شامل چند بخش می‌شود :

  • کاهش داده : کاهش تعداد اشیا یا ویژگی‌ها که باعث کوچک‌تر شدن مجموعه داده‌ها و در نتیجه نیاز کمتر به حافظه رم و کوتاه تر شدن زمان پردازش خواهد شد. هم چنین تجمیع ممکن است امکان استفاده از الگوریتم‌های ارزشمندتر داده کاوی را به ما بدهد.
  • تغییر مقیاس : تجمیع میتواند موجب تغییر زاویه دید شود. یعنی به جای نگاه جزئی به صورت کلی نگاه می‌کنیم. این امر باعث عوض شدن مقیاس و محدوده می‌شود. به عنوان مثال: شهرها می‌توانند به مناطق و استان‌ها و یا کشورها تبدیل شوند و یا روزها به هفته‌ها و ماه‌ها و سال‌ها تبدیل شوند.
  • ثبات بیشتر داده : داده‌های تجمیع شده از تنوع کمتری برخوردار خواهند بود.

۳-نمونه گیری - Sampling

نمونه گیری یک روش معمول برای انتخاب یک زیر مجموعه از داده ها برای تحلیل داده است.

  • نکته کلیدی نمونه گیری این است که باید از نمونه ای استفاده کنیم که نماینده کل داده باشد چنین نمونه ای باید تقریبا به اندازه داده اصلی ویژگی داشته باشد و اگر میانگین ویژگی داده اصلی برابر مقدار خاصی باشد میانگین داده نماینده نیز باید نزدیک به همان عدد باشد.

انواع نمونه گیری:

  • نمونه گیری تصادفی عادی (Simple Random Sampling):شانس برابری برای انتخاب هر مورد از داده ها وجود دارد.
  • نمونه گیری بدون جایگزینی (Sampling without replacement): هر نمونه که انتخاب می شود از جامعه حذف می‌شود.
  • نمونه گیری با جایگزینی (Sampling with replacement): نمونه‌ها از جامعه پس از انتخاب از جامعه حذف نمی‌شوند.
  • نمونه گیری طبقه بندی شده (Stratified sampling): داده ها به چند دسته تقسیم میکنیم سپس از هر دسته به صورت تصادفی انتخاب می‌کنیم.
  • نمونه گیری تصاعدی (Progressive Sampling): پیدا کردن اندازه نمونه مناسب می‌تواند سخت باشد در نتیجه طرح‌های انطباقی و تصاعدی در بعضی موارد استفاده می‌شود. این روش‌ها از یک نمونه کوچک شروع کرده و سپس اندازه نمونه‌ها را افزایش داده تا به یک اندازه مناسب دست پیدا کنند.

۴- کاهش ابعاد (Dimension Reduction)

راهکار کاهش ابعاد معمولا به روش‌هایی تلقی می‌شود که با ساختن ویژگی‌های جدیدی که ترکیبی از ویژگی‌های قدیمی است باعث کاهش ابعاد داده می‌شوند.

هدف از کاهش ابعاد چیست؟

  • پیشگیری از مزاحمت ابعاد (زمانی که  تعداد ویژگی ها زیاد میشود  خطای classify کردن دیتا افزایش پیدا میکند به این حالت اصطلاحا curse of dimensionality می‌گویند)
  • کاهش میزان زمان و حافطه استفاده شده توسط الگوریتم های داده کاوی
  • راحت تر کردن بصری سازی داده ها
  • همچنین ممکن است در حذف داده های بی ربط به ما کمک کند.

روش های کاهش ابعاد چیست؟

  • آنالیز مولفه اصلی – PCA
  • تجزیه مقدارهای منفرد – SVD

روش های ذکر شده در بالا برای بحث در این مقاله بسیار گسترده می باشند ولی حتما در مقاله‌ها بعدی به طور مفصل در مورد آن‌ها صحبت خواهیم کرد.

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

این یک روش دیگر برای کاهش ابعاد داده که در آن به جای همه ی ویژگی ها از زیرمجموعه از ویژگی های مهم استفاده کنیم. در حالی که شاید به نظر برسد این روش باعث از دست رفتن اطلاعات شود. اما باید توجه داشت که اگر فقط ویژگی‌های غیرمرتبط (Irrelevant) و زائد(redundant) را حذف کنیم قطعا اینگونه نخواهد بود.

  • ویژگی های غیر مرتبط (Irrelevant): ویژگی‌هایی که شامل هیجگونه اطلاعات مفیدی برای انجام عملیات داده کاوی نیستند. به عنوان مثال : شماره دانشجویی برای پیش بینی معدل غیرمرتبط خواهد بود.
  • ویژگی های زائد (Redundant): حاوی اطلاعاتی هستند که همه یا بخش زیادی از آن در یک یا چند ویژگی دیگر تکرار شده باشد.

در حالی که با استفاده از دانش محیطی یا حس عمومی میتوان به سرعت برخی از ویژگی‌های غیرمرتبط و زائد را حذف کرد، انتخاب بهترین زیر مجموعه از ویژگی‌ها عموما نیاز به رویکرد سیتماتیک دارد.

روش ایده آل برای انتخاب زیر مجموعه‌ها، امتحان کردن تمام زیرمجموعه‌های ممکن به عنوان ورودی الگوریتم‌های داده کاوی و اتنخاب بهترین آن‌ها می‌باشد.

سه راه استاندارد برای انتخاب زیرمجموعه ها وجود دارد:

  • روش‌های تعبیه شده (Embedded): انتخاب زیرمجموعه ویژگی‌ها به طور طبیعی به عنوان بخشی از الگوریتم داده کاوی اتفاق می‌افتد ، به طور دقیق خود الگوربتم تصمیم میگرد که از چه ویژگی هایی استفاده کند و چه ویژگی‌هایی استفاده نکند.
  • روش‌های مبتنی بر فیلتر (Filter): انتخاب ویژگی با استفاده از روش‌هایی مستقل از عملیات داده کاوی قبل از اجرای الگوریتم‌های داده کاوی. به عنوان مثال ممکن است ویژگی‌هایی را انتخاب کنیم که کمترین همبستگی را با هم دارند .
  • روش‌های بسته‌بندی (Wrapper): این دسته از روش‌ها از الگوریتم هدف به عنوان یک جعبه سیاه برای پیدا کردن بهترین مجموعه از ویژگی‌ها استفاده می‌کنند.

فلو چارت از روند انتخاب مجموعه از ویژگی ها

انتخاب زیرمجموعه ای از مشخصه ها

۶-خلق ویژگی (Feature Creation)

به راهکار هایی که می توانند ویژگی‌های جدیدی خلق کنند که اطلاعات مهم را به طرز مفیدتری از ویژگی‌های اصلی ذخیره کنند.

سه راهکار کلی برای خلق ویژگی وجود دارد:

استخراج ویژگی

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

ساخت ویژگی

بعضی اوقات ویژگی‌های داده اصلی اگرچه دارای اطلاعات لازم هستند ولی در شکل مناسبی برای الگوریتم‌های داده‌کاوی نیستند. در چنین شرایطی ساختن یک یا دو ویژگی جدا از ویژگی‌های اصلی میتواند مفیدتر از ویژگی‌های اصلی باشد.

به عنوان مثال : تقسیم جرم بر حجم برای به دست آوردن چگالی

نگاشت داده ها به فضای جدید

یک نگاه کاملا متفاوت از داده‌ها میتواند ویژگی‌های مهمی را آشکار سازد. به عنوان مثال داده‌های سری زمانی که اغلب دارای طرح‌های دوره‌ای می‌باشند، را در نظر بگیرید. اگر فقط یک طرح، دوره داشته باشد و خیلی دارای نویز نباشد طرح به سادگی قابل تشخیص است. اما اگر چند طرح دوره موجود باشد و همچنین مقدار قابل توجهی نویز وجود داشته باشد آنگاه تشخیص این طرح‌ها بسیار سخت خواهد بود. با این وجود در این دست طرح‌ها غالبا با استفاده از تبدیل فوریه (Fourier Transform)به سری زمانی قابل انجام خواهد بود.

۷- گسسته سازی و دوگانه سازی (Discretization and Binarization)

گسسته سازی(Discretization)

  • گسسته سازی روند تبدیل یک متغیر پیوسته به یک متغیر ترتیبی است.
  • تعداد تقریبا بی نهایتی از مقادیر به تعداد کمی از دسته ها تبدیل می‌شوند.
  • گسسته سازی به طور عمومی در طبقه‌بندی استفاده می‌شود.
  • بسیاری از الگوریتم‌های طبقه‌بندی، اگر ویژگی‌های مستقل و غیر مستقل آن‌ها دارای تعداد مقادیر کمی باشند، به بهینه‌ترین حالت خود می‌رسند.

دوگانه سازی(Binarization)

  • دوگانه سازی یک ویژگی پیوسته یا طبقه ای (categorical) را به یک یا چند متغیر دودویی تبدیل می‌کند.
  • عموما برای تحلیل‌های انجمنی استفاده می شود.
  • سعی کنید اکثرا یک ویژگی پیوسته را به یک ویژگی طبقه‌ای تبدیل کنید. سپس ویژگی طبقه‌ای را به مجموعه‌ای از ویژگی‌های دودویی تبدیل کنید.
  • تحلیل‌های انجمنی به ویژگی‌های دودویی نامتقارن نیاز دارند.
  • به عنوان مثال قد می‌تواند به سه صورت کوتاه، بلند و متوسط اندازه‌گیری شود.

تبدیل یک ویژگی طبقه ای به سه ویژگی دودویی

تبدیل یک ویژگی طبقه ای به سه ویژگی دودویی

تبدیل یک ویژگی طبقه ای به پنج ویژگی دودویی نامتقارن

تبدیل یک ویژگی طبقه ای به پنج ویژگی دودویی نامتقارن

۷-تغییر شکل متغیر ها (Variable Transformation)

تابعی ایست که تمامی مقادیر ویژگی مورد نظر را به مقادیر جایگزینی تبدیل می‌کند. به نحوی که هر کدام از مقادیر قبلی با یکی از مقادیر جدید مشخص می‌شود.

  • توابع ساده مثل توان، لگاریتم، قدر مطلق
  • نرمال‌سازی: به تکنیک‌های متنوعی که برای تنظیم اختلاف میان ویژگی ها به لحاظ تناوب رخداد، میانگین، واریانس و بازه به کار می‌روند، نرمال‌سازی می‌گویند.
  • استانداردسازی: در آمار به اختلاف میانگین‌ها تقسیم بر میانگین واریانس‌ها اشاره دارد.

در اغلب موارد مرحله پیش پردازش داده (Data Preprocessing) از جمله مهم‌ترین و زمان‌برترین گام‌های پروژه‌های داده کاوی است که انجام درست این مراحل موجب موفقیت آمیز شدن نتایج و بالارفتن دقت مدل خواهد شد.

اگر در مورد این مطلب سوالی دارید، در زیر همین پست از ما بپرسید.

پیشنهاد برای مطالعه

نام نویسنده:
به اشتراک بگذارید:
نمودار
مرجع رسمی هوش تجاری و علم داده | نمودار اولین مرجع تخصصی Power BI
مقالات مرتبط
نظرات
بهرنگ فرهمند

خیلی ممنون بابت مقاله خوبتون