توضیحات
An effective parallel approach for genetic-fuzzy data mining
مقاله در مورد داده کاوی به کمک پردازش موازی الگوریتم ژنتیک و فازی است
این مقاله با الگوریتم ژنتیک و صحیح شبیه سازی شده. در مورد موازی بودن آن برداشت برنامه نویس کار استفاده از دستور matlabpool برای پردازش موازی هسته های سی پی یو برای این برنامه استفاده کرده است.
در توضیحات زیر بخشی از تصاویر و معادلات حذف شده است.
با خرید این محصول نسخه کامل را دریافت نمایید.
داده کاوی برای القای قوانین متناظر با داده های تراکنشی مورد توجه قرار گرفته است.
در این بررسی از الگوریتم داده کاوی فازی برای به دست اوردن قوانین متناسب و توابع اعضا استفاده شده است.
یک بستر بر اساس GA برای یافتن نمونه بهینه مساله ایجاد شد.
تطابق و انتخاب بهترین دسته کرومزوم بر اساس تعداد ایتم های بزرگ ایجاد شده از قسمت داده کاوی فازی و با تعیین اثر تناسب صورت می گیرد.
بستر مطرح شده یک جمعیت از مجموعه توابع اعضا دراد، و به طور خودکار از الگوریتم ژنتیک برای به دست اوردن نتایج استفاده می کند.
ابتدا هر مجموعه از توابع اعضا را در یک رشته به طول ثابت می برد.
سپس رشته مناسب را برای جهش انتخاب می کند تا نتاج های خوب را برای تابع اعضا به دست بیاورد.
تابع اعضای نتاج تحت تکامل قرار گرفته و این روند تا زمانی که بهترین تابع اعضا حاصل شود ادامه می یابد.
شکل 1. تابع اعضای مربوط به ایتم I.
تابع اعضای اعمالی به قوانین فازی به صورت توابع مثلثی در نظر گرفته می شود (شکل 1.).
برای به دست اوردن انطباق و انتخاب مناسب از پارامتر های نرخ همپوشانی و نرخ پوشش استفاده می شود.
2. اپراتور ژنتیک
اپراتور های ژنتیک در موفقیت الگوریتم ژنتیک نقش به سزایی دارد.
اپراتور های مختلف برای کاربرد های مختلف بیان شده است.
2.1 یک مثال
فرض کنید بعد از چند نسل یک کروموزوم دید ایجاد شده باشد (شکل 2.).
شکل 2. کارکرد جهش.
الگوریتم داده کاوی
با توجه به داده کاوی بر اساس الگوریتم فازی و ژنتیک ورودی و خروجی های سیستم به صورت زیر مشخص می شود.
ورودی: داده های تراکنش n، مجموعه ایتم های m، استانه حمایتی و استانه اطمینان .
خروجی: مجموعه قوانین فازی و توابع اعضای متناظر با ان.
گام 1. به طور تصادفی افراد جمعیت P تولید می شود.
گام 2. هر مجموعه توسط یک تابع اعضا بازیابی می شود.
گام 3. مقدار انطباق برای هر کروموزوم مطابق زیر گام های زیر محاسبه می شود:
گام 3.1. مقدار انتقال با توجه به فرمول زیر به دست می اید:
گام 3.2. برای هر رژیم مقدار عدد اصلی تراکنش را به دست می اوریم:
گام 3.3. با توجه به مقدار استانه حمایتی بزرگی count را بررسی می کنیم.
گام 3.4 مقدار انطباق را برای کروموزوم تعیین می کنیم.
گام 4. Crossover را در جمعیت پیاده می کنیم.
گام 5. جهش را در جمعیت پیاده می کنیم.
گام 6. برای نسل بعد با ملاک انتخاب افراد را انتخاب می کنیم.
گام 7. در صورتی که معیار تراکنش ارضا نشود به گام 3 برو، در غیر این صورت به گام بعد برو.
گام 8. تابع اعضا را با بیشترین مقدار انطباق به عنوان خروجی به دست می اید.
به عنوان یک مثال چهار ایتم milk, bread, cookies و beverage را در نظر بگیرید. جدول 1. مقادیر count را برای رژیم های مختلف فازی نشان می دهد.
جدول 1. Count برای مناطق مختلف فازی.
Count | Item | Count | Item |
1.054 | cookies.Low | 0.8139 | milk.Low |
0.72 | cookies.Middle | 0.4126 | milk.Middle |
1.02 | cookies.High | 0.5821 | milk.High |
0.8492 | beverage.Low | 0.6767 | bread.Low |
0.7492 | beverage.Middle | 1.1904 | bread.Middle |
0.8844 | beverage.High | 1.8344 | bread.High |
در گام بعدی با توجه به روابط مذکور میزان انطباق را محاسبه می کنیم.
نتایج در جدول 2. برای انطباق کروموزوم در جمعیت ورودی نشان داده شده است.
جدول 2. بخشی از مقادیر انطباق را برای کروموزوم در جمعیت ورودی
f | Chromosome | F | Chromosome |
1.2528 | C40 | 0.75 | C1 |
0.4756 | C41 | 0.48 | C2 |
0.0873 | C42 | 0.004 | C3 |
0.246 | C43 | 0.0044 | C4 |
2 | C44 | 0.5789 | C5 |
0.05 | C45 | 0.3398 | C6 |
0.445 | C46 | 2 | C7 |
پس از اجرای الگوریتم نتایج به دست امده برای توابع اعضای فازی به شرح زیر است:
شکل 3. نمودار عضویت به دست امده برای Bread.
شکل 4. نمودار عضویت به دست امده برای milk.
شکل 5. نمودار عضویت به دست امده برای cookies.
شکل 6. نمودار عضویت به دست امده برای beverage.
میزان نتایج حاصل از الگوریتم ژنتیک نیز در نمودار شکل 7. نشان داده شده است.
شکل 7. میزان میانگین مقادیر انطباقی به دست امده از الگوریتم ژنتیک.
توضیحات تکمیلی
نحوه اجرای برنامه
برای اینکه برنامه اجرا شود ابتدا فایل ها را در پوشه مناسبی از حالت فشرده خارج کرده و سپس فایل FGA.m را اجرا نمایید. فایل های کمکی که برای اجرای این فایل لازم است عبارت است از فایل MyCrossOver_Fcn که تابع crossover را مشخص می نماید.
فایل SelectParents_Fcn که برای ایجاد نسل جدید استفاده شده و قسمت Mution در قسمت مربوطه نوشته شده است.
در قسمت ابتداییی کد نوشته شده در فایل FGA.m الگوریتم فازی فراخوانی می شود.
الگوریتم برای مثال موجود در مقاله می باشد و هر گونه تغییر در ورودی های فازی باید تغییرات متناسب را در قسمت های مختلف از جمله فایل اصلی و فایل مربوط به crossover داشته باشد.
نحوه محاسبه و اعمال crossover و انطباق (fitting) در قسمت قبل توضیح داده شد.
پس از اجرای فایل یک نمودار شروع به رسم شدن می کند. این نمودار میانگین مقادیر fit شده را نشان می دهد که به ازای هر نسل تغییر می کند.
…
هر رشته کروموزوم دارای مقادیر اعداد است که نشان دهنده مقادیر مرتبط با تابع عضویت است.
مثلا یک رشته کروموزوم که 24 عضو دارد به شرح زیر می تواند باشد
که هر دو عدد به ترتیب نشان دهنده مرکز تابع مثلثی و فاصله از مرکز می باشد.
مثلا شکل زیر را در نظر بگیرید. مقادیر برای رشته bread می باشد که به صورت 6 عدد به ترتیب
6,6 12,6 18,6
نشان داده می شود که بیان کننده این است که تابع مثلثی low دارای مقدار مرکزی 6 بوده و فاصله نیم کران ان نیز 6 می باشد.
یعنی سه نقطه ان به ترتیب 0، 6 و 12 می باشد. و قسمت midlle نیز دارای مقدار مرکزی 12 با نیم کران 6 می باشد که نقاط تعیین کننده ان به ترتیب 6، 12 و 18 می باشد.
در شکل زیر نحوه اعمال این تغییرات در قسمت فازی نشان داده شده است.
…
پس از اینکه رشته ها ایجاد شد با توجه به الگوریتم زنتیک مقادیر بهینه به دست امده و نهایتا یک دسته کروموزوم بهینه برای تابع عضویت به دست می اید.
حال با اجرای فایل FGAinputres.m مقادیر برای تولید در توابع فازی ایجاد می شود.
برای ایجاد تغییرات به دست امده و مشاهده ان تابع فازی را فراخوانی می کنیم.
برای این کار در قسمت command window عبارت fuzzy را تایپ و اینتر را می زنیم. پنجره مطابق شکل زیر باز می شود.
…
از قسمت file مطابق شکل زیر فایل ایجاد شده را فراخوانی می کنیم.
…
در قسمت مربوطه fismat را تایپ کرده و تایید را می زنیم.
…
بعد از زدن تایید صفحه مربوطه باز می شود. بر روی قسمت input کلیک کرده تا صفحه ورودی و خروجی ها باز شود.
در اینجا توابع عضویت به دست امده را می توان مشاهده کرد.
…
مطابق شکل زیر می توان توابع را مشاهده کرد.
…
از قسمت view می توان از طریق گزینه rule اثر قوانین (Rule) را مشاهده کرد.
…
همچنین می توان قوانین را از قبل تعیین کرد و در فایل ذخیره کرد تا با قوانین جدید الگوریتم اجرا شود.
کلید واژه : Data mining, Fuzzy set, Genetic algorithm, Parallel processing, Association rule
شبیه سازی
An effective parallel approach for genetic-fuzzy data mining
طبق توضیحات فوق به تعداد محدودی قابل فروش می باشد.
سفارش انجام پروژه مشابه
درصورتیکه این محصول دقیقا مطابق خواسته شما نمی باشد،. با کلیک بر روی کلید زیر پروژه دلخواه خود را سفارش دهید.