شکل ۳-۵ استفاده از echolocation برای پیدا کردن شکار توسط یک خفاش ………………………………………. ۵۲
شکل۳-۶ شبه کد الگوریتم خفاش ………………………………………………………………………………………………………………….. ۵۳
شکل۳-۷ تابع موج ضربهای مورلت ………………………………………………………………………………………………………………… ۵۶
شکل ۳-۸ الف) نماش سه بعدی تابع Rosenbrock ب) نمایش contour تابع Rosenbrock …………. 61
شکل ۳-۹ الف) نماش سه بعدی تابع Schewefel ب) نمایش contour تابعel Schewef ………………… 62
شکل ۳-۱۰ الف) نماش سه بعدی تابع Rastragin ب) نمایش contour تابع Rastragin …………………….63
شکل۳-۱۱ الف) نماش سه بعدی تابع Ackley ب) نمایش contour تابع Ackley …………………………….. ۶۴
شکل۳-۱۲ الف) نماش سه بعدی تابع Greiwank ب) نمایش contour تابع Greiwank …………………. 65
شکل ۴‑۱نمونه های گلهای زنبق از مجموعه دادهIris ………………………………………………………………………………… ۷۲
فصل اول : مقدمه
مقدمه
داده و الگو یکی از شاخص های بسیار مهم در دنیای اطلاعات هستند و خوشهبندی یکی از بهترین روشهایی است که برای کار با داده ها ارائه شده است. قابلیت آن در ورود به فضای داده و تشخیص ساختار آنها باعث گردیده که خوشه بندی یکی از ایدهآلترین مکانیزم ها برای کار با دنیای عظیم داده ها باشد.
در خوشهبندی، نمونهها به دستههایی تقسیم میشوند که از قبل معلوم نیستند. بنابراین، خوشهبندی یک روش یادگیری است که بدون دانش پیشین و مشاهده نمونههای از قبل تعریف شده، داده ها را به صورت خود مختار و مستقل دسته بندی می کند.
خوشه بندی در واقع یافتن ساختار در مجموعه دادههایی است که طبقه بندی نشدهاند. به بیان دیگر خوشهبندی قراردادن داده ها در گروههایی است که اعضای هر گروه از زاویهی خاصی به هم شباهت دارند. در نتیجه شباهت بین داده های درون هر خوشه حداکثر و شباهت بین داده های درون خوشههای متفاوت حداقل میباشد. معیار شباهت در اینجا، فاصله بوده یعنی نمونههایی که به یکدیگر نزدیکترهستند، در یک خوشه قرار میگیرند. لذا محاسبهی فاصلهی بین دو داده در خوشهبندی بسیار مهم میباشد؛ زیرا کیفیت نتایج نهایی را دستخوش تغییر قرار خواهد داد.
فاصله که همان معرف عدم تجانس است حرکت در فضای داده ها را میسر میسازد و سبب ایجاد خوشه ها میگردد. با محاسبهی فاصلهی بین دو داده، میتوان فهمید که چقدر این دو داده به هم نزدیک هستند و در یک خوشه قرار می گیرند یا نه؟ توابع ریاضی مختلفی برای محاسبهی فاصله وجود دارند؛ فاصله اقلیدسی، فاصله همینگ و ….
۱-۱-بیان مسأله
خوشهبندی یافتن ساختار، درون مجموعه ای از داده های بدون برچسب است و میتوان آن را به عنوان مهمترین مسأله در یادگیری بدون نظارت در نظر گرفت. ایده خوشهبندی اولین بار در دهه ۱۹۳۵ مطرح شد و امروزه با پیشرفتها و جهشهای عظیمی که در آن به وجود آمده در کاربردها و جنبه های مختلفی حضور یافته است. یک جستجوی ساده در وب یا حتی در پایگاه داده یک کتابخانه، کاربرد شگفت انگیز آن را برای ما آشکار میسازد. الگوریتمهای خوشهبندی در زمینه های مختلفی کاربرد دارد که به عنوان نمونه میتوان موارد زیر را برشمرد:
-
- داده کاوی[۱]: کشف اطلاعات و ساختار جدید از دادههای موجود
-
- تشخیص گفتار[۲]: در ساخت کتاب کد از بردارهای ویژگی، در تقسیم کردن گفتار بر حسب گویندگان آن یا فشردهسازی گفتار
-
- تقسیمبندی تصاویر[۳]: تقسیمبندی تصاویر پزشکی یا ماهوارهای
-
- وب (WWW): دستهبندی اسناد و یا دستهبندی سایتها و …
-
- زیستشناسی[۴]: دستهبندی حیوانات و گیاهان از روی ویژگیهای آنها
-
- برنامه ریزی شهری[۵]: دستهبندی خانهها بر اساس نوع و موقعیت جغرافیایی آنها
-
- مطالعات زلزلهنگاری[۶]: تشخیص مناطق حادثهخیز بر اساس مشاهدات قبلی
-
- کتابداری: دستهبندی کتابها
-
- بیمه: تشخیص افراد متقلب
-
- بازاریابی[۷]: دستهبندی مشتریان به دستههایی بر حسب نیاز آنها از طریق مجموعه آخرین خریدهای آنان.
با توجه به کاربرد روزافزون خوشهبندی، امروزه شاهد ارائه روشهای جدید و کارآمدتری هستیم که هر یک برای کاربردی خاص ارائه می شود. ولی با همه این تلاشها هنوز خوشهبندی در بسیاری از علوم آنچنان که باید مورد استفاده قرار نگرفته است و قابلیت گسترش بسیار زیادی برای آن وجود دارد.
۱-۲-پیشینه تحقیق
ما در جهانی پر از داده زندگی میکنیم و هر روز با حجم وسیعی از ذخیره یا نمایش اطلاعات روبهرو هستیم. یکی از روشهای حیاتی کنترل و مدیریت این داده ها، خوشهبندی میباشـد. در این روش دادههایی که دارای خواص مشابه میباشند، درون یک دسته یا یک خوشه قرار میگیرند. اولین بار ایده خوشهبندی در دهه ۱۹۳۵ ارائه شد و امروزه با پیشرفتها و جهشهای عظیمی که در آن پدید آمده مورد توجه بسیاری از محققــان قرار گرفته است. لذا در کاربردها و جنبه های مختلفی حضور یافته و روشهای مختلفی برای بهره برداری از آن مطرح گردیده است [۱]. از یک نظر، الگوریــتمهای خوشه بندی می تواند در دو دسته کلی تقسیم بندی شوند: خوشه بندی سخت و خوشه بندی فازی. در خوشهبندی سخت یک داده به یک و فقط یک خوشه تعلق میگیرد، درحالیکه در خوشهبندی فازی یک داده ممکن است بطور همزمان به دو خوشه یا بیشتر تعلق داشته باشد [۲]، [۳]، [۴]. الگوریتم Fuzzy c-means یکی از روشهای معروف خوشهبندی فازی محسوب میگردد که به سادگی قابل پیادهسازی میباشد. متأسفانه نسخه اصل آن دارای محدودیتهایی از جمله وابستگی به مقادیر اولیه و همگرایی به پاسخ بهینه محلی میباشد [۵]، [۶]. در الگوریتم ژنتیک این محدودیتها از بین رفته است. در عین حال با ترکیب این دو الگوریتم نتایج قابل توجهی حاصل شده است که سرعت همگرایی آن نیز به مراتب از نمونههای قبل بیشتر گردیده است [۷]. Kao و همکارانش با ترکیب دو الگوریتم ژنتیک و PSO روشی را ابداع نمود که در آن از عملگر جهش و تقاطع برای ژنتیک بهره گرفته است. این روش توانست مشکلات مختلف توابع پیوسته را رفع نماید. همچنین در یافتن جواب بهینه سراسری و نسبت همگرایی تغییرات چشمگیری حاصل شده است [۸]. با بهره گرفتن از ترکیب الگوریتم ژنتیک و روش فازی، روشی توسط عسگریان در سال ۱۳۸۶ مطرح شد. در این روش مشکل وابستگی به تعداد اولیه خوشه ها و مکان اولیه مراکز آنها مرتفع و با عدم توانایی خوشهبندی دادههایی که فاصلهی آنها از مراکز چند خوشه به یک اندازه میباشد؛ مقابله گردید. از مزایای دیگر این ترکیب کاهش پیچیدگی محاسبات میباشد [۹]. یکی دیگر از روشهای ترکیبی که در مسائل داده کاوی کاربرد دارد استفاده از ترکیب Fuzzy c-means و PSO میباشد که توانست مشکل همگرایی به بهینه محلی و سرعت همگرایی را بهبود بخشد [۱۰] ،[۱۱]. از دیگر روشهای ترکیبی جدید ترکیب الگوریتمFCM و الگوریتم مِمتیک فازی است. در راستای بهبود عملکرد خوشهبندی، نتایج حاصل از این تکنیک نشان میدهد که جوابهای بهتری داشته و پایداری آن نیز بالاتر میباشد [۱۲]. ترکیب FCM و SA نمونه ای دیگر از روشهای ترکیبی است که در تشخیص سرطان استفاده می شود [۱۳]،[۱۴]،[۱۵]،[۱۶]. در راستای تلاش های ذکر شده، در این پایان نامه سعی بر آن است تا با بهره گرفتن از ترکیب الگوریتمFCM و الگوریتم خفاش از مزایای دو الگوریتم در حل مسائل خوشهبندی بهره گرفته شود.
۱-۳-هدف تحقیق
هدف در این تحقیق این است که با بررسی الگوریتمهای موجود در زمینه خوشهبندی، الگوریتمی ارائه گردد که تا حد قابل قبولی بتواند محدودیتهای موجود را پوشش دهد. برخی از محدودیتهای موجود را میتوان به شرح ذیل برشمرد:
کارایی برای پایگاه داده ها با حجم بالا
کشف خوشه ها با اشکال مختلف
عدم حساسیت به ترتیب داده های ورودی
قابلیت تفسیر و استفاده
۱-۴-اهمیت تحقیق
همزمان با افزایش سیستمهای پایگاه داده و ابزارهای متعدد برای ذخیرهی حجم بالای داده ها نیاز به روشهای خودکار برای کشف دانش از درون داده ها کاملاً احساس میشد. علاوه بر آن به دلیل هزینه بالای نیروی انسانی و مادی جهت انجام عملیات روی حجم انبوه داده ها ارائه روشهایی با کمترین دخالت کاربر ضروری بود. استخراج اطلاعات مناسب از میان انبوه دادهها و تبدیل آنها به دانش مورد نیاز سازمانها - به ویژه در تصمیمگیریهای سازمانی - نیازمند استفاده از روشهای نوین در این حوزه بود. داده کاوی[۸] یکی از این ابزارهاست که به کشف دانش از پایگاه داده ها کمک میکند. میتوان گفت داده کاوی استخراج اطلاعـات معتبر، قابل فهم و قابل اعتماد از پایگاه داده های بسیار بزرگ است که به کشـف الگوهای پنهان و روابط مطمئن بین داده ها و استفاده از آن در تصمیم گیری کمک مینماید. در حقیقت شناخت و دستوپنجه نرم کردن با داده ها یکی از اهداف مهم در داده کاوی است.
این فرایند از اواخر دهه ۹۰ مطرح شد و از سال ۱۹۹۵ به صورت جدی وارد مباحث آماری گشت و در حال حاضر جزء مهمترین ابزار بهره برداری مؤثر از انبوه داده ها میباشد و اهمیت وجود آن هر روز افزایش مییابد. به عبارت دیگر داده کاوی، علمی نسـبتاً جدید است که از انجام تحقیـقات در رشته های آمار، یادگیری ماشین و علوم کامپیوتر مخصوصاً مدیـریت پایگاه داده ها شکل گرفته است.
داده کاوی در سه حوزه مستقل از علوم مورد استفاده قرار میگیرد:
آمار کلاسیک و الگوهای آماری
هوش مصنوعی
یادگیری خودکار و شبکه های عصبی