بهینهسازی تعداد خوشهها در الگوریتم K-Means با استفاده از الگوریتمهای فراابتکاری (خوشه بندی خودکار)
الگوریتم K-Means یکی از محبوبترین روشهای خوشهبندی (Clustering) در یادگیری ماشین (Machine Learning) است که برای تقسیم دادهها به چند گروه یا خوشه استفاده میشود. یک چالش اساسی در استفاده از این الگوریتم، تعیین تعداد بهینه خوشهها (K) است. تعداد خوشهها تأثیر مستقیمی بر کیفیت و کارایی خوشهبندی دارد و انتخاب نادرست آن میتواند به خوشهبندی ضعیف منجر شود. برای حل این چالش، از الگوریتمهای فراابتکاری (Metaheuristic Algorithms) استفاده میشود که قادر به جستجوی فضای مسئله برای یافتن مقدار بهینه K هستند.
مراحل کلی ترکیب K-Means با الگوریتمهای فراابتکاری
- تعریف فضای جستجو
فضای جستجو برای تعداد خوشهها به عنوان یک متغیر عدد صحیح (Integer) تعریف میشود، به عنوان مثال K∈[2,20]. - تعریف تابع هزینه (Objective Function)
تابع هزینه میتواند بر اساس معیارهایی مانند:- شاخص دیویس بولدین (Davies-Bouldin Index): مقادیر کمتر بهتر است.
- میانگین سیلوئت (Mean Silhouette Coefficient): مقادیر بیشتر نشاندهنده کیفیت بهتر خوشهبندی است.
- شاخص دالی (Dunn Index): برای ارزیابی جدایی خوشهها.
- میانگین مربعات خطا (Sum of Squared Errors – SSE): کاهش مجموع مربعات فاصلهها.
- اعمال الگوریتم فراابتکاری
الگوریتم فراابتکاری مقادیر مختلف K را بررسی میکند و بهینهترین مقدار را بر اساس تابع هزینه انتخاب میکند. - ارزیابی خوشهبندی
برای هر مقدار K که توسط الگوریتم فراابتکاری پیشنهاد میشود، الگوریتم K-Means اجرا شده و کیفیت خوشهبندی ارزیابی میشود. - انتخاب بهترین مقدار K
مقدار K با بهترین عملکرد بر اساس معیار تعریفشده انتخاب میشود.
الگوریتمهای فراابتکاری پیشنهادی
در ادامه، 90 الگوریتم فراابتکاری برای تعیین تعداد خوشههای بهینه در K-Means معرفی میشود:
- الگوریتم ژنتیک – Genetic Algorithm (GA) – 1975
- الگوریتم تبرید شبیهسازی – Simulated Annealing (SA) – 1983
- جستجوی تابو – Tabu Search (TS) – 1986
- الگوریتم فرهنگی – Cultural Algorithm (CA) – 1991
- بهینهسازی کلونی مورچهها – Ant Colony Optimization (ACO) – 1992
- بهینهسازی ازدحام ذرات – Particle Swarm Optimization (PSO) – 1995
- تکامل تفاضلی – Differential Evolution (DE) – 1997
- جستجوی هارمونی – Harmony Search (HS) – 2001
- الگوریتم ازدحام ماهی – Fish Swarm (FS) – 2002
- الگوریتم زنبورها – Bees Algorithms (BA) – 2005
- کلونی زنبور عسل مصنوعی – Artificial Bee Colony (ABC) – 2005
- الگوریتم قورباغه – Shuffled Frog Leaping Algorithm (SFLA) – 2006
- الگوریتم رقابت استعماری – Imperialist competitive algorithm ICA – 2007
- الگوریتم کرم شبتاب – Firefly Algorithm (FA) – 2008
- الگوریتم جغرافیای زیستی – Biogeography-based optimization (BBO) – 2009
- الگوریتم جست و جوی گرانشی – Gravitational search algorithm (GSA) – 2009
- جستجوی فاخته – Cuckoo Search (CS) – 2009
- الگوریتم خفاش – Bat Algorithm (BA) – 2010
- الگوریتم علف هرز – Invasive weed optimization (IWO) – 2011
- الگوریتم بهینهسازی ایده پردازی – Brain storm optimization algorithm (BSO) – 2011
- الگوریتم بهینه سازی فاخته – Cuckoo Optimization Algorithm COA – 2011
- الگوریتم آموزش و یادگیری – Teaching–learning-based optimization (TLBO) – 2011
- الگوریتم سیاه چاله –Black Hole (BA) – 2013
- بهینهسازی گرگ خاکستری – Grey Wolf Optimizer (GWO) – 2014
- الگوریتم گردهافشانی گل – Flower Pollination Algorithm (FPA) – 2014
- الگوریتم جستجوی فراکتال تصادفی (Stochastic Fractal Search – SFS) – 2015
- الگوریتم شیر مورچه – Ant Lion Optimizer (ALO) – 2015
- الگوریتم اژدها – Dragonfly Algorithm (DA) – 2015
- الگوریتم پروانه شبنم – Moth-Flame Optimization (MFO) – 2015
-
الگوریتم بهینهسازی پروانه سلطنتی (Monarch Butterfly Optimization – MBO) – 2015
- الگوریتم کلاغ – Crow Search Algorithm (SCA) – 2016
- الگوریتم سینوس کسینوس – Sine cosine algorithm (SCA) – 2026
- الگوریتم حستوجوی پروانه – Moth search algorithm – 2016
- الگوریتم شعله پروانه – Moth Flame Optimization (MFO) – 2016
- الگوریتم جایا – Jaya Algorithm (JA) – 2016
- الگوریتم سنجاقک – Dragonfly algorithm (DA) – 2016
- الگوریتم بهینهسازی پروانهها – Glowworm Swarm Optimization (GSO) – 2016
- الگوریتم شیر خاورمیانه – Lion Optimization Algorithm (LOA) – 2016
- الگوریتم پشه – Mosquito Flying Optimization (MFO) – 2016
- الگوریتم بهینهساز چند-نظمی – Multi-verse Optimizer (MVO) – 2016
- الگوریتم نهنگ – Whale Optimization Algorithm (WOA) – 2016
- الگوریتم سالپ – Slap Swarm Algorithm (SSA) – 2017
- الگوریتم بهینهساز کفتار خالدار – Spotted hyena optimizer (SHO) – 2017
- الگوریتم بهینهسازی پروانه و زنبور – Butterfly Optimization Algorithm with Bee (BOAB) – 2017
- الگوریتم ملخ – Grasshopper Optimization Algorithm (GOA) – 2017
- الگوریتم رشد درخت (Tree Growth Algorithm – TGA) – 2018
- الگوریتم شاهین هریس – Harris Hawks Optimization (HHO) – 2019
- الگوریتم گوزن قرمز – Red Deer Algorithm (RDA) – 2019
- الگوریتم بهینهسازی فقیر و غنی (Poor and Rich Optimization – PRO) – 2019
- الگوریتم مسیریاب (Pathfinder Algorithm – PFA) – 2019
- الگوریتم بهینهسازی اتم – Atom search optimization (BOA) – 2019
- الگوریتم بهینهسازی ارشمیدس (Archimedes Optimization Algorithm – AOA) – 2020
- الگوریتم کپک لجن – Slime Mould algorithm (MOA) – 2020
- الگوریتم اسب وحشی – Wild Horse Optimizer Algorithm (WHOA) – 2020
- الگوریتم سفره ماهی – Manta ray foraging optimization (MRFO) – 2020
- الگوریتم عقاب طلایی – Golden Eagle Optimizer (GEO) – 2020
- الگوریتم کانگورو – Kangaroo Optimization (KO) – 2020
- الگوریتم بهینهسازی اکوسیستم مصنوعی Artificial Ecosystem-based Optimization (AEO) – 2020
- الگوریتم عنکبوت اجتماعی – Social Spider Optimization (SSO) – 2020
- الگوریتم شکارچیان دریایی (Marine Predators Algorithm – MPA) – 2020
- الگوریتم فیل – Elephant Herding Optimization (EHO) – 2021
- الگوریتم عقاب – Bald Eagle Search Optimization (BES) – 2021
- الگوریتم بهینهسازی خروسها –Roosters Algorithm (RA) – 2021
- الگوریتم بهینهسازی کرکسهای آفریقایی (African Vultures Optimization Algorithm – AVOA) – 2021
- بهینهسازی بازی آشوب – Chaos Game Optimization (CGO) – 2021
- الگوریتم حسابی The Arithmetic Optimization Algorithm – AOA – 2021
- الگوریتم بهینهسازی گرادیان – Gradient Based Optimization (GBO) – 2021
- الگوریتم مار – Snake Optimizer (SO) – 2022
- الگوریتم بهینهسازی خرگوشها – Artificial rabbits optimization (ARO) – 2022
- الگوریتم بهینهسازی ازدحام گربه شنی (Sand Cat Swarm Optimization – SCSO) – 2022
- الگوریتم بهینهسازی سوسک – Cockroach Swarm Optimization (CSO) – 2022
- الگوریتم بهینهسازی زنبور عسل مصنوعی بهبود یافته – Improved Artificial Bee Colony Algorithm (IABC) – 2022
- الگوریتم علی بابا و چهل دزد – Alibaba and the Forty Thieves (AFT) – 2022
- الگوریتم بهینهسازی همهمه سارها (Starling Murmuration Optimizer – SMO) – 2022
- الگوریتم بهینهسازی غزال کوهستان (Mountain Gazelle Optimizer – MGO) – 2022
- الگوریتم جستجوی بهینهسازی ابولا (Ebola Optimization Search – EOS) – 2022
- الگوریتم بهینهسازی درخت – Tree Optimization Algorithm (TOA) – 2022
- الگوریتم گورکن عسل – Honey Badger Algorithm (HBA) – 2022
- الگوریتم جست و جوی خزنده Reptile Search Algorithm – RSA – 2022
- الگوریتم بهینهسازی دلفینها – Dolphin Optimization Algorithm (DOA) – 2023
- الگوریتم نهنگ بهبود شده – Improved Whale Optimization Algorithm (IWOA) – 2023
- الگوریتم بهینهسازی حافظه انسان – Human Memory Optimization Algorithm (HMOA) – 2023
- الگوریتم بهینهسازی تیرانوسور (Tyrannosaurus Optimization Algorithm – TOA) – 2023
- الگوریتم بهینهسازی شکار گوزنها – Deer Hunting Optimization Algorithm (DHOA) – 2024
- الگوریتم بهینهسازی اسب آبی (Hippopotamus Optimization Algorithm – HOA) – 2024
- بهینهسازی گروه جوجهها – Chickens Swarm Optimization (CSO) – 2024
- الگوریتم بهینهسازی هجوم پرندگان – Bird Swarm Optimization Algorithm (BSOA) – 2024
- الگوریتم کروکدیل Crocodile optimization algorithm COA – 2024
- الگوریتم نهنگ قاتل – Killer Whale Algorithm (KWA) – 2024
- الگوریتم روباه قطبی – Arctic Fox Optimization (AFO) – 2025
- الگوریتم حسابی AOA و حسابی بهبودیافته IAOA برای خوشه بندی خودکار
مزایای ترکیب K-Means با الگوریتمهای فراابتکاری
- کشف خودکار تعداد خوشهها: نیازی به تعیین دستی مقدار K نیست.
- افزایش دقت: بهبود کیفیت خوشهبندی با یافتن تعداد خوشههای بهینه.
- انعطافپذیری بالا: الگوریتمهای فراابتکاری میتوانند با دادههای مختلف سازگار شوند.
- تسهیل در تحلیل دادهها: کمک به تحلیل دقیقتر دادهها با انتخاب خوشههای بهینه.
این روش ترکیبی میتواند به طور قابلتوجهی کیفیت خوشهبندی در مسائل دادهکاوی را بهبود بخشد و به کاربران در کشف ساختارهای پنهان داده کمک کند.
نویسنده: حسن سعادتمند
- بیش از 250 دوره آموزشی در MATLAB و پایتون.
- بیش از 15 سال تجربه در زمینه مهندسی کنترل و بهینهسازی.
اطلاعات تماس:
- تلگرام: t.me/matlabanyone
- ایمیل: h.saadatmand22@yahoo.com
- یوتیوب: matlablearning.com
- تلفن: 09155137038





نقد و بررسیها
هنوز بررسیای ثبت نشده است.