AIcode مرجع تخصصی هوش مصنوعی

<aicode>

 

 

 

 

 

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

در این پروژه آموزشی از روشهای ساده ولی پر کاربرد یادگیری ماشین و شناسایی الگو برای دسته بندی استفاده شده است. در بسیاری از مواقع نیاز است تا بعد ورودی کاهش پیدا کند. در این گزارش از روش تحلیل مولفه اصلی برای کاهش بعد ورودی استفاده شده است. دسته بندی یکی از متداولترین مسائل در دنیای یادگیری ماشین و شناسایی الگو است که برای این کار از روش نزدیکترین همسایگی استفاده شده است. 

توضیحات تئوری

روش‌هاي کاهش بعد (Dimensionality Reduction) روش­هايي هستند که سعي در کوچک کردن طول بردار ويژگي با هدفي خاص دارند. اين روش‌ها مي­توانند جزء روش‌هاي استخراج ويژگي محسوب شوند. البته برخي از روش‌هاي کاهش بعد جزء روش‌هاي انتخاب ويژگي Feature selection) محسوب مي­شوند، چرا که در روش‌هاي انتخاب ويژگي از ميان ويژگي‌هاي موجود تعدادي از آن‌ها بر اساس يک معيار مشخص انتخاب مي‌شوند، که در اين فرآيند طول بردار ويژگي جديد از طول بردار اوليه کوچک‌تر است و به نوعي يک کاهش بعد صورت گرفته است. البته بسياري از روش‌هاي کاهش بعد موجود و روش‌هاي پيشنهادي کاهش بعد در اين پايان نامه جزء روش‌هاي استخراج ويژگي و نه انتخاب ويژگي محسوب مي‌شوند. دليل اين امر نحوه کاهش بعد است. در اين روش‌ها به جاي انتخاب از ميان ويژگي‌هاي موجود ترکيب­هايي از آن‌ها به عنوان ويژگي‌هاي جديد محاسبه مي‌شوند.

از ديدگاه دسته­بندي مي‌توان روش‌هاي کاهش بعد را به دو دسته با نظارت(Supervised) و بي­نظارت(Unsupervised) تقسيم کرد. در روش‌هاي بي­نظارت از اطلاعات برچسب نمونه داده‌ها براي تعيين جهت افکنش استفاده نمي‌شود. اين در حالي است که در روش‌هاي بانظارت از اين اطلاعات (برچسب  نمونه داده‌ها) براي تعيين جهت افکنش استفاده مي‌شود. اطلاعات برچسب داده در برخي از نمونه داده­ها موجود نيست، اما در بسياري از نمونه داده‌ها اين اطلاعات موجود است. در مواقعي که برچسب نمونه داده‌ها مشخص است بهترين روش‌هاي کاهش بعد، روش‌هاي بانظارت خواهند بود.

در روش‌هاي مختلف کاهش بعد مي‌توان سه هدف اصلي را دنبال کرد:

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

  • حفظ فواصل: در برخي از کاربردها مانند تجسم بخشي نياز است تا کاهش بعد انجام شود اما در اين کاربرد حفظ فواصل اوليه ضروري است.

معروف‌ترين روش کاهش بعد بي­نظارت روش تحليل مؤلفه اصلي (Principle Components Analysis) يا PCA است. اين روش سعي در پيدا کردن جهت افکنشي دارد که ميانگين مربعات خطا یا Mean Squared Error (MSE) پس از افکنش کمينه شود. زير فضايي که روش تحليل مؤلفه اصلي پيدا مي‌کند زير فضايي است که در آن واريانس نمونه داده‌ها بيشترين باشد. تحليل مؤلفه اصلي به تنهايي قادر به دسته بندي نيست پس براي دسته بندي اطلاعات مي­بايست از يک روش دسته بندي استفاده کرد. در اين گزارش آموزشي از روش نزديکترين همسايگي يا NN(Nearest Neighbor) استفاده شده است. در اين روش فاصله اقليدسي نمونه هاي آزمايشي (Testing Data) با تمامي نمونه هاي آموزشي (Training Data) به دست مي آيد و نمونه آزمايشي به دسته ايي تعلق مي گيرد که کمترين فاصله اقديدسي را داشته باشد.

توضیحات عملی

در این قسمت روش تحلیل مولفه اصلی به کمک روش دسته بندی نزدیکترین همسایگی بر روی یک مجموعه داده (Data set) استاندارد مورد استفاده قرار گرفته است. فایل PCA_NN.m حاوی کدهای متلبی است که این کار را انجام می دهد. جهت اجرا، فایل را باز کرده و دکمه اف 5 را بزنید. توضیحات محتوای این فایل در ادامه آمده است.

 در بخش اول (یا همان SECTION ONE) داده ها خوانده میشود. در این بخش داده­های از فایل های متنی خوانده می شوند در متغییرهای مرتبط ریخته می­شوند. در بخش دوم (یا همان SECTION TWO) روش تحلیل مولفه اصلی بر روی داده ها اعمال می شود. توجه داشته باشید که بُعد جدید برای داده ها با کمک متغییری با نام newDim تعیین می گردد، که در این مثال 5 در نظر گرفت شده است. پس از کاهش بعد توسط روش تحلیل مولفه اصلی به کمک روش دسته بندی نزدیکترین همسایگی در خط پایانی با تابعی با نام NearestNeighborانجام می­گیرد. در پایان در خروجی دقت دسته بندی پس از اعمال روش تحیلی مولفه اصلی چاپ می شود.

در نهایت برای آزمون، روش پیاده‌سازی شده بر روی مجموعه داده monks از مجموعه داده‌های UCI Repository اعمال شده است.

https://archive.ics.uci.edu/ml/datasets/MONK's+Problems

محتویات فایل:فایل­های سورس کد متلب،فایل ورد گزارش (سه صفحه)، فایل­های داده­های آموزشی و آزمایشی

زبان برنامه نویسی: متلب

دسته بندی به کمک تحلیل مولفه اصلی (PCA) و نزدیکترین همسایگی
250,000ریال

تبلیغات AIcodeMahak

AIcode مرجع تخصصی آموزش مهندسی کامپیوتر و هوش مصنوعی

تماس با ما

ايميل: info@aicode.ir

عضویت در خبرنامه AIcode