پشتیبان

now browsing by tag

 
 

پایان نامه - ارشد

1-4-1- هدف اصلیارائه مدلی مبتنی بر سیستم‌های چند عامله برای داده‌کاوی در محیط‌های توزیع شده
سیستم داده کاوی توزیع شده چند عامله، حوزه تحقیقاتی جدیدی است که با تکنولوژی نوظهور هوش مصنوعی سازگار بوده، انعطاف پذیری و هوشمندی خاصی داشته، استفاده از منابع را بهبود بخشیده و پایداری سیستم را افزایش داده است. و لذا ارائه مدلی مبتنی بر سیستم‌های چند عامله برای داده‌کاوی در محیط‌های توزیع شده در دستور کار قرار گرفت. نتایج این تحقیق می‌تواند در عمل مورد استفاده قرار گرفته و به عنوان یک موضوع پژوهشی مورد توجه قرار گیرد.
1-4-2- اهداف فرعیبررسی قوانین انجمنی در چند مدل از داده کاوی
ارائه یک مدل مبتنی بر سیستم‌های چند عامله
ارزیابی مدل
1-5- پرسش‌های تحقیقپرسش‌های تحقیق به دنبال چگونگی دست‌یابی به اهداف تحقیق می‌باشند. لذا مانند اهداف تحقیق، پرسش‌های تحقیق را نیز به دو دسته تقسیم می‌کنیم: پرسش اصلی و پرسش‌های فرعی. که "پرسش اصلی" به دنبال جوابی در راستای دست‌یابی به هدف اصلی تحقیق می‌باشد و "پرسش‌های فرعی" نیز به دنبال چگونگی دست یافتن به اهداف فرعی تحقیق هستند.
پرسش‌های تحقیق حاضر عبارتند از:
1-5-1- پرسش اصلیاستفاده از عامل‌ها و سیستم‌های چندعامله در داده کاوی توزیع شده چه اثراتی ایجاد می‌کند؟
1-5-2- پرسش‌های فرعیچه روش‌هایی برای بهینه سازی الگوریتم‌های موجود، وجود دارد؟
عامل‌ها و سیستم‌های چندعامله در حوزه داده کاوی توزیع شده در چه کاربردهایی حائز اهمیت است؟
چه راه حل‌هایی را می‌توان برای رفع مشکلات موجود در این حوزه یافت؟
1-6- فرضیه‌هابا توجه به قابلیت‌های به اثبات رسیده‌ی عامل‌ها و سیستم‌های چندعامله در زمینه‌های مختلف، فرض ما این است که عامل‌ها و سیستم‌های چندعامله می‌توانند به عنوان ابزار مناسبی در تأثیر بهبود کارایی الگوریتم‌های داده کاوی در محیط توزیع شده به کار گرفته شوند.
1-7- روش تحقیقروش انجام تحقیق از طریق مطالعه الگوریتم‌ها و روش‌های مختلف موجود در راستای موضوع تحقیق می‌باشد. و نیز از طریق مقایسه با روش‌های مرتبط موجود انجام خواهد شد.
1-8- جنبه‌های نوآوریبا انجام این تحقیق می‌توان از تکنیک‌های داده کاوی در محیط‌های توزیع شده با سرعت و دقت بیشتری بهره برد.
1-9- مراحل انجام تحقیقمطالعه‌ی اولیه و ادبیات مسأله
شناسایی و بیان کامل مسأله
بررسی فعالیت‌های پیشین در راستای حل مسأله
بهره‌گیری از نقاط قوت روش‌های مختلف و دست‌یابی به مدلی کارآمدتر
حل مسأله و تحلیل آن
1-10- ساختار پایان‌نامهساختار این تحقیق شامل پنج فصل است.
فصل یک: مقدمه و کلیات تحقیق ارائه خواهد شد و به تعریف مسئله و ضرورت انجام تحقیق خواهیم پرداخت.
فصل دوم: به بیان ادبیات و تاریخچه‌ای از داده کاوی، داده کاوی توزیع شده، عامل‌ها و سیستم‌های چندعامله پرداخته، چندین تکنیک رایج در این حوزه را ذکر می‌کنیم و کاربردها و خصوصیات آن‌ها را شرح خواهیم داد.
فصل سوم: به بیان روش تحقیق، نحوه‌ی گردآوری داده‌ها و شیوه‌ی تجزیه و تحلیل اطلاعات خواهیم پرداخت.
فصل چهارم: در این فصل، به بیان یافتههای تحقیق در هر یک از مراحل اجرایی تحقیق خواهیم پرداخت و در نهایت مدلی بر پایه سیستم‌های چند عامله به منظور بهبود سرعت و دقت عملیات داده‌کاوی در محیط‌های توزیع شده ارائه خواهیم داد.
فصل پنجم: در این فصل، به پرسشهای تحقیق پاسخ داده خواهد شد و پیشنهادهایی برای کارهای آینده ارائه میشود.
فصل دوم ادبیات و پیشینه تحقیق2-1- مقدمهدر این فصل، به سه بخش اصلی با عناوین داده‌کاوی، عامل‌ها و سیستم‌های چند عامله، و کاربرد عامل‌ها در داده‌کاوی میپردازیم و در نهایت به بررسی کارهای انجام شده در این حوزه خواهیم پرداخت.
2-2- دادهکاویداده کاوی، یک تکنولوژی نوظهور است، که از ابزارها و تکنیک‌های مدل‌سازی و تجزیه و تحلیل آماری، الگوریتم‌های ریاضی، و متدهای یادگیری ماشین برای کشف الگوهای معتبر و ناشناخته در مجموعه داده‌های حجیم استفاده می‌کند. هرچند این تکنولوژی دوران نوباوگی خود را طی می‌کند، اما شرکت‌ها و سازمان‌های بسیاری از جمله خرده‌فروشی‌ها، بانک‌ها، مراکز درمانی، کارخانجات تولیدی، ارتباطات راه دور، و مؤسسات دولتی از ابزارها و تکنیک‌های داده‌کاوی برای تحلیل داده‌هایشان و کشف اطلاعات و دانش مفید از آن‌ها استفاده می‌کنند. ADDIN EN.CITE <EndNote><Cite><Author>Wang</Author><Year>2003</Year><RecNum>125</RecNum><DisplayText>[1, 2]</DisplayText><record><rec-number>125</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">125</key></foreign-keys><ref-type name="Book">6</ref-type><contributors><authors><author>Wang, J.</author></authors></contributors><titles><title>Data mining: opportunities and challenges</title></titles><dates><year>2003</year></dates><publisher>Irm Press</publisher><isbn>1931777837</isbn><urls></urls></record></Cite><Cite><Author>Rao</Author><Year>2010</Year><RecNum>105</RecNum><record><rec-number>105</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">105</key></foreign-keys><ref-type name="Journal Article">17</ref-type><contributors><authors><author>Rao, V.S.</author><author>Vidyavathi, S.</author></authors></contributors><titles><title>Distributed Data Mining and Mining Multi-Agent Data</title><secondary-title>IJCSE) International Journal on Computer Science and Engineering</secondary-title></titles><periodical><full-title>IJCSE) International Journal on Computer Science and Engineering</full-title></periodical><pages>1237-1244</pages><volume>2</volume><number>04</number><dates><year>2010</year></dates><urls></urls></record></Cite></EndNote>[1, 2] داده‌کاوی اطلاعاتی را از پایگاه داده‌ها استخراج می‌کند که از طریق کوئری‌ها و گزارش‌گیری‌ها قابل دست‌یابی نیستند.
رشد انفجاری داده‌های ذخیره شده در پایگاه داده‌ها، نیاز به تکنولوژی‌های جدید که بتوانند حجم عظیم داده‌ها را هوشمندانه به دانش مفید تبدیل کنند، را پدید آورده است. ADDIN EN.CITE <EndNote><Cite><Author>Chen</Author><Year>1996</Year><RecNum>106</RecNum><DisplayText>[3]</DisplayText><record><rec-number>106</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">106</key></foreign-keys><ref-type name="Journal Article">17</ref-type><contributors><authors><author>Chen, M.S.</author><author>Han, J.</author><author>Yu, P.S.</author></authors></contributors><titles><title>Data mining: an overview from a database perspective</title><secondary-title>Knowledge and Data Engineering, IEEE Transactions on</secondary-title></titles><periodical><full-title>Knowledge and Data Engineering, IEEE Transactions on</full-title></periodical><pages>866-883</pages><volume>8</volume><number>6</number><dates><year>1996</year></dates><isbn>1041-4347</isbn><urls></urls></record></Cite></EndNote>[3] دادهکاوی به معنای یافتن نیمه خودکار الگوهای پنهان در مجموعه دادههای موجود می‌باشد. ADDIN EN.CITE <EndNote><Cite><Author>Han</Author><Year>2005</Year><RecNum>1</RecNum><DisplayText>[4]</DisplayText><record><rec-number>1</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">1</key></foreign-keys><ref-type name="Journal Article">17</ref-type><contributors><authors><author>Han, J.</author><author>Kamber, M.</author></authors></contributors><titles><title>Data mining: Concepts and Techniques, 2nd Edition</title><secondary-title>San Francisco, CA, itd: Morgan Kaufmann</secondary-title></titles><periodical><full-title>San Francisco, CA, itd: Morgan Kaufmann</full-title></periodical><dates><year>2005</year></dates><urls></urls></record></Cite></EndNote>[4] این تکنولوژی با دیگر تکنیک‌های تحلیل داده، که سیستم، مقادیر اولیه را می‌گیرد و خود، الگوهایی را تولید می‌کند، متفاوت است. داده‌کاوی توسط ابزارهای الگوریتمیک، الگوها، تغییرات، آنومالی‌ها، قوانین، و ساختارهای مهم آماری، و رویدادها را از مجموعه داده‌های عظیم استخراج می‌کند. ADDIN EN.CITE <EndNote><Cite><Author>R. Grossman</Author><Year>1999</Year><RecNum>107</RecNum><DisplayText>[5]</DisplayText><record><rec-number>107</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">107</key></foreign-keys><ref-type name="Conference Paper">47</ref-type><contributors><authors><author>R. Grossman,</author><author>S. Kasif,</author><author>R. Moore,</author><author>D. Rocke,</author><author>J. Ullman</author></authors></contributors><titles><title>Data mining research: Opportunities and challenges</title><secondary-title>A Report of Three Workshops on Mining Large, Massive and Distributed Data</secondary-title></titles><dates><year>1999</year></dates><urls></urls></record></Cite></EndNote>[5] می‌توان گفت که داده کاوی در جهت کشف اطلاعات پنهان و روابط موجود در بین دادههای فعلی و پیشبینی موارد نامعلوم و یا مشاهده نشده عمل میکند. برای انجام عملیات کاوش لازم است قبلاً روی دادههای موجود پیش پردازش‌هایی انجام گیرد. عمل پیش پردازش اطلاعات خود از دو بخش کاهش اطلاعات، و خلاصهسازی و کلیسازی دادهها تشکیل شده است. کاهش اطلاعات عبارت است از تولید یک مجموعه کوچک‌تر، از دادههای اولیه، که تحت عملیات دادهکاوی نتایج تقریباً یکسانی با نتایج دادهکاوی روی اطلاعات اولیه به دست دهد. ADDIN EN.CITE <EndNote><Cite><Author>Han</Author><Year>2005</Year><RecNum>1</RecNum><DisplayText>[4]</DisplayText><record><rec-number>1</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">1</key></foreign-keys><ref-type name="Journal Article">17</ref-type><contributors><authors><author>Han, J.</author><author>Kamber, M.</author></authors></contributors><titles><title>Data mining: Concepts and Techniques, 2nd Edition</title><secondary-title>San Francisco, CA, itd: Morgan Kaufmann</secondary-title></titles><periodical><full-title>San Francisco, CA, itd: Morgan Kaufmann</full-title></periodical><dates><year>2005</year></dates><urls></urls></record></Cite></EndNote>[4] پس از انجام عمل کاهش اطلاعات و حذف خصایص غیر مرتبط نوبت به خلاصهسازی و کلیسازی دادهها می‌رسد. دادههای موجود در بانک‌های اطلاعاتی معمولاً حاوی اطلاعات در سطوح پایینی هستند، بنابراین خلاصهسازی مجموعه بزرگی از دادهها و ارائه آن به صورت یک مفهوم کلی اهمیت بسیار زیادی دارد. کلیسازی اطلاعات، فرآیندی است که تعداد زیادی از رکوردهای یک بانک اطلاعاتی را به صورت مفهومی در سطح بالاتر ارائه می‌نماید. تکنیک‌‌های دادهکاوی به چند دسته تقسیم میشوند که سه دسته اصلی عبارتند از خوشهبندی، طبقهبندی و کشف قواعد انجمنی. در ادامه هر یک از این روش‌ها را به طور کلی معرفی مینماییم.
2-2-1- خوشهبندی
فرآیند خوشهبندی سعی دارد که یک مجموعه داده را به چندین خوشه تقسیم نماید بطوریکه داده‌های قرار گرفته در یک خوشه با یکدیگر شبیه بوده و با دادههای خوشههای دیگر متفاوت باشند. در حال حاضر روش‌های متعددی برای خوشهبندی دادهها وجود دارد که بر اساس نوع دادهها، شکل خوشهها، فاصله دادهها و غیره عمل خوشهبندی را انجام میدهند. مهم‌ترین روش‌های خوشهبندی در زیر معرفی شدهاند:
2-2-1-1- روش‌های خوشه‌بندی مبتنی بر تقسیم‌بندیاین روش‌ها، دادههای موجود در یک مجموعه داده را به k خوشه تقسیم میکنند، بطوریکه هر خوشه دو خصوصیت زیر را داراست:
هر خوشه یا گروه حداقل شامل یک داده میباشد.
هر داده موجود در مجموعه داده دقیقاً به یک گروه یا خوشه تعلق دارد.
معیار اصلی در چنین مجموعه دادههایی میزان شباهت دادههای قرار گرفته در هر خوشه میباشد. در حالیکه داده‌های قرار گرفته در دو خوشه مختلف از نظر شباهت با یکدیگر فاصله زیادی دارند. مقدار k که به عنوان پارامتر استفاده میگردد، هم میتواند به صورت پویا تعیین گردد و هم اینکه قبل از شروع الگوریتم خوشهبندی مقدار آن مشخص گردد.
2-2-1-2- روش‌های سلسله مراتبی
روش‌های سلسله مراتبی به دو دسته کلی روش‌های پایین به بالا و روش‌های بالا به پایین تقسیم می‌گردند. روش‌های سلسله مراتبی پایین به بالا به این صورت عمل میکنند که در شروع هر کدام از دادهها را در یک خوشه جداگانه قرار میدهد و در طول اجرا سعی میکند تا خوشههایی نزدیک به یکدیگر را با هم ادغام نماید. این عمل ادغام تا زمانی که یا تنها یک خوشه داشته باشیم و یا اینکه شرط خاتمه برقرار گردد، ادامه مییابد. روش‌های بالا به پایین دقیقاً به طریق عکس عمل میکنند، به این طریق که ابتدا تمام دادهها را در یک خوشه قرار میدهد و در هر تکرار از الگوریتم، هر خوشه به خوشههای کوچک‌تر شکسته میشود و این کار تا زمانی ادامه مییابد که یا هر کدام از خوشهها تنها شامل یک داده باشند و یا شرط خاتمه الگوریتم برقرار گردد. شرط خاتمه معمولاً تعداد کلاستر یا خوشه میباشد.
2-2-1-3- روش‌های مبتنی بر چگالی
اکثر روش‌های خوشهبندی که به این روش عمل میکنند معمولاً از تابع فاصله به عنوان تابع معیار خود بهره میبرند. استفاده از چنین معیاری باعث میگردد که الگوریتم خوشهبندی تنها قادر به ایجاد خوشههایی با اشکال منظم باشد. در صورتیکه خوشههای واقعی در دادهها دارای اشکال غیر منظمی باشند، این الگوریتمها در خوشهبندی آن‌ها با مشکل مواجه میگردند. برای حل این‌گونه مشکلات یکسری از روش‌ها برای خوشهبندی پیشنهاد گردیدهاند که عمل خوشهبندی را بر مبنای چگالی دادهها انجام می‌دهند. ایده‌ی اصلی در این روش‌ها بر این اساس است که تا زمانی که دادههای قرار گرفته در همسایگی خوشه‌ها از حد معینی بیشتر باشند، آن‌ها رشد میکنند و بزرگ میشوند. چنین روش‌هایی قادرند خوشههایی با شکل‌های نامنظم نیز ایجاد نمایند.
البته دسته‌های دیگری از روش‌های خوشهبندی مانند روش‌های مبتنی بر گرید، روش‌های مبتنی بر مدل و غیره وجود دارند که میتوانید آن‌ها را در ADDIN EN.CITE <EndNote><Cite><Author>Han</Author><Year>2005</Year><RecNum>1</RecNum><DisplayText>[4]</DisplayText><record><rec-number>1</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">1</key></foreign-keys><ref-type name="Journal Article">17</ref-type><contributors><authors><author>Han, J.</author><author>Kamber, M.</author></authors></contributors><titles><title>Data mining: Concepts and Techniques, 2nd Edition</title><secondary-title>San Francisco, CA, itd: Morgan Kaufmann</secondary-title></titles><periodical><full-title>San Francisco, CA, itd: Morgan Kaufmann</full-title></periodical><dates><year>2005</year></dates><urls></urls></record></Cite></EndNote>[4] مطالعه نمایید.
2-2-2- طبقهبندیفرایند طبقهبندی در واقع نوعی یادگیری با ناظر میباشد که در طی دو مرحله انجام میگردد. در مرحله اول مجموعهای از دادهها که در آن هر داده شامل تعدادی خصوصیت دارای مقدار و یک خصوصیت بنام خصوصیت کلاس میباشد، برای ایجاد یک مدل داده بکار میروند که این مدل داده در واقع توصیف کننده مفهوم و خصوصیات آن مجموعه دادهها است. مرحله دوم فرآیند طبقهبندی، اعمال یا بکارگیری مدل ایجاد شده، بر روی داده‌هایی است که شامل تمام خصوصیات دادههایی که برای ایجاد مدل بکار گرفته شدهاند، میباشند، بجز خصوصیت کلاس، و هدف از عمل طبقهبندی نیز تخمین مقدار این خصوصیت میباشد.
الگوریتمها و روش‌های مختلفی برای طبقهبندی تاکنون پیشنهاد شدهاند که برای مثال میتوان از روش‌های طبقهبندی با استفاده از درخت تصمیم، طبقهبندی بیزین، SVM، طبقهبندی با استفاده از شبکه‌های عصبی، طبقهبندی مبتنی بر قواعد و غیره نام برد. ADDIN EN.CITE <EndNote><Cite><Author>Mitchell</Author><Year>1997</Year><RecNum>2</RecNum><DisplayText>[6]</DisplayText><record><rec-number>2</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">2</key></foreign-keys><ref-type name="Journal Article">17</ref-type><contributors><authors><author>Mitchell, T.M.</author></authors></contributors><titles><title>Machine learning. 1997</title><secondary-title>Burr Ridge, IL: McGraw Hill</secondary-title></titles><periodical><full-title>Burr Ridge, IL: McGraw Hill</full-title></periodical><dates><year>1997</year></dates><urls></urls></record></Cite></EndNote>[6] در اینجا ما قصد نداریم وارد مباحث مربوط به الگوریتمها و روش‌های طبقهبندی شویم و تنها روش طبقهبندی مبتنی بر قواعد را معرفی خواهیم نمود. در صورت نیاز به مطالعه بیشتر میتوانید به مرجع ADDIN EN.CITE <EndNote><Cite><Author>Han</Author><Year>2005</Year><RecNum>1</RecNum><DisplayText>[4]</DisplayText><record><rec-number>1</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">1</key></foreign-keys><ref-type name="Journal Article">17</ref-type><contributors><authors><author>Han, J.</author><author>Kamber, M.</author></authors></contributors><titles><title>Data mining: Concepts and Techniques, 2nd Edition</title><secondary-title>San Francisco, CA, itd: Morgan Kaufmann</secondary-title></titles><periodical><full-title>San Francisco, CA, itd: Morgan Kaufmann</full-title></periodical><dates><year>2005</year></dates><urls></urls></record></Cite></EndNote>[4] مراجعه نمایید.
2-2-2-1- طبقهبندی مبتنی بر قواعددر این قسمت قصد داریم نگاهی به بحث طبقهبندی مبتنی بر قواعد داشته باشیم. در این روش، مدل ایجاد شده از روی دادهها به صورت مجموعهای از قواعد میباشد. میتوان گفت که هر قاعده به صورت یک قاعده IF P THEN C میباشد که در آن P مجموعهای از شرایط بوده و C نیز مشخص کننده برچسب یک کلاس یا طبقه خاص میباشد. یک قاعده بدست آمده از مجموعه دادههای آموزشی با استفاده از دو معیار coverage و accuracy میتواند ارزیابی گردد. این دو معیار به صورت زیر تعریف میگردند:
(2-1)
(2-2)
که در تعاریف مذکور تعداد دادههایی در مجموعه داده D است که توسط قاعده پوشش داده میشوند. تعداد دادههایی است که توسط قاعده به درستی طبقهبندی شدهاند. |D| تعداد داده‌های موجود در D میباشد.
نکته مهمی که باید اینجا به آن اشاره کرد این بحث است که چگونه دادهها توسط این قواعد طبقه‌بندی میگردند. همان‌طور که اشاره گردید این قواعد دارای یک قسمت شرط (P) و یک قسمت C هستند. P یک الگو به صورت میباشد که هر کدام از piها بیان کننده‌ی یک محدودیت برای یکی از خصوصیات هستند. اگر خصوصیات دادهای محدودیتهای مذکور قاعدهای را برآورده سازد آنگاه کلاس یا طبقهبند آن داده، کلاس یا طبقهای است که آن قاعده بیان میکند(C). اما مسأله مهمی که اینجا پیش میآید، این است که اگر یک داده در قسمت شرط (P) بیش از یک قاعده صدق کند، آنگاه کدام قاعده را باید انتخاب کرد. بسته به استراتژیهای مختلف، این مشکل جواب‌های مختلفی می‌تواند داشته باشد. دو نمونه از مهم‌ترین استراتژیهایی که معمولاً برای حل این مشکل بکار میروند، استراتژی‌های مرتب‌سازی بر اساس اندازه و مرتب‌سازی بر اساس قاعده میباشند.
در استراتژی مرتب‌سازی بر اساس اندازه، چنانچه یک داده در بیش از یک قاعده صدق کند، قاعده‌ای برای طبقهبندی داده انتخاب میشود که خصوصیات بیشتری را برای مشخص نمودن کلاس داده تست کرده باشد. در استراتژی مرتب‌سازی بر اساس قاعده، پیش قواعد اولویت دهی میشوند و هنگام طبقهبندی، قاعده با اولویت بالاتر، مشخص کننده کلاس داده خواهد بود. اولویت‌دهی به قواعد هم به طرق مختلفی ممکن است انجام گردد. برای مثال ممکن است که ابتدا کلاس‌ها اولویتدهی شوند و قواعد مربوط به هر کلاس نیز با تأثیر پذیری از این اولویت‌دهی، اولویت بگیرند. اولویت کلاس‌ها نیز ممکن است بر اساس اهمیت کلاس یا تعداد دادههای متعلق به آن کلاس و یا غیره مشخص گردند. استراتژیهای دیگری نیز در این زمینه وجود دارند که ما در اینجا درباره آن‌ها صحبت نمیکنیم. مسأله دیگری که ممکن است پیش بیاید این است که یک داده با هیچ‌کدام از قواعد هم‌خوانی نداشته باشد. برای این مسأله هم میتوان راهحل‌هایی ارائه نمود. معمولترین راهحل این است که چنانچه دادهای با هیچ‌یک از قواعد هم‌خوانی نداشت، کلاسی به عنوان کلاس آن داده انتخاب گردد که بیشترین تعداد داده در بین دادهها به آن کلاس تعلق دارد.
مورد دیگری هم که اینجا قابل ذکر است این مطلب است که قواعدی که برای طبقهبندی استفاده میشوند، چگونه ایجاد میگردند. البته ما نمیخواهیم در اینجا وارد جزئیات مربوط به استخراج قواعد از دادههای آموزشی شویم. برای استخراج قواعد از مجموعه دادههای آموزشی معمولاً از دستهای از الگوریتم‌ها بنام الگوریتم‌های SCA استفاده میگردد که این الگوریتم‌ها در هر مرحله یک قاعده را از دادههای آموزشی یاد گرفته و دادههایی را که از آن قاعده پیروی میکنند را از مجموعه دادههای آموزشی خود حذف میکنند و با دادههای باقی‌مانده، کار خود را ادامه می‌دهند. از نمونه الگوریتم‌های معروف SCA میتوان به AQ، CN2 و RIPPER اشاره نمود. البته قابل ذکر است که برای کشف قواعد میتوان از روش‌های ایجاد درخت تصمیم و یا کشف قواعد انجمنی نیز استفاده نمود. در درخت تصمیم هر مسیر از ریشه تا یک برگ را میتوان به عنوان قسمت P قاعده در نظر گرفت و کلاسی که برگ مشخص میکند، قسمت C خواهد بود. در مورد نحوه استفاده از روش‌های کشف قواعد انجمنی و استفاده از آن‌ها برای طبقه‌‌بندی نیز میتوانید به ADDIN EN.CITE <EndNote><Cite><Author>Bing</Author><Year>1998</Year><RecNum>3</RecNum><DisplayText>[7, 8]</DisplayText><record><rec-number>3</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">3</key></foreign-keys><ref-type name="Conference Proceedings">10</ref-type><contributors><authors><author>Bing, Liu.</author><author>Wynne, Hsu.</author><author>Yiming, Ma.</author></authors></contributors><titles><title>Integrating classification and association rule mining</title><secondary-title>KDD</secondary-title></titles><pages>80-86</pages><dates><year>1998</year></dates><pub-location>New York City, New York, USA.</pub-location><urls></urls></record></Cite><Cite><Author>Bing</Author><Year>2000</Year><RecNum>4</RecNum><record><rec-number>4</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">4</key></foreign-keys><ref-type name="Journal Article">17</ref-type><contributors><authors><author>Bing, Liu.</author><author>Yiming, Ma.</author><author>Ching Kian, Wong.</author></authors></contributors><titles><title>Improving an association rule based classifier</title><secondary-title>Principles of Data Mining and Knowledge Discovery</secondary-title></titles><periodical><full-title>Principles of Data Mining and Knowledge Discovery</full-title></periodical><pages>293-317</pages><dates><year>2000</year></dates><urls></urls></record></Cite></EndNote>[7, 8] مراجعه کنید.
2-2-3- کشف قواعد انجمنیسازمان‌های کسب و کار، اغلب حجم عظیمی از داده‌ها را از عملیات روزانه جمع آوری می‌کنند. به عنوان مثال، حجم عظیمی از داده‌ها از خریدهای روزانه مشتریان در فروشگاه‌های خرده فروشی بدست می‌آید. استخراج قواعد انجمنی، نوعی از عملیات داده کاوی است که به تجزیه و تحلیل داده و جستجو برای یافتن ارتباط بین ویژگی‌ها از قبیل اینکه مشتریان کدام اقلام را هم‌زمان خریداری می‌کنند، می‌پردازد. نام دیگر روش کشف قواعد انجمنی، تحلیل سبد بازار می‌باشد. به عبارت دیگر، قواعد انجمنی، مطالعه ویژگی‌ها یا خصوصیاتی می‌باشد که با یکدیگر همراه بوده و به دنبال استخراج قواعد از میان این خصوصیات می‌باشد. این روش به دنبال استخراج قواعد به منظور کمی کردن ارتباط میان دو یا چند خصوصیت است. قواعد انجمنی به شکل اگر و آنگاه به همراه دو معیار پشتیبان و اطمینان تعریف می‌شوند.
در اینجا به مثال‌هایی از کاربرد قوانین انجمنی اشاره می‌شود:
بررسی ارتباط بین توانایی خواندن کودکان با خواندن داستان توسط والدین برای آن‌ها.
بررسی اینکه چه اقلامی در یک فروشگاه با یکدیگر خریداری می‌شوند و اینکه چه اقلامی هیچ‌گاه با یکدیگر خریداری نمی‌شوند.
تعیین سهم نمونه‌ها در بررسی تأثیرات خطرناک یک داروی جدید.
قواعد انجمنی، ماهیتا قواعد احتمالی هستند. به عبارت دیگر قاعده لزوماً قاعده را نتیجه نمی‌دهد، زیرا این قاعده ممکن است از شرط حداقل پشتیبان برخوردار نباشد. به طور مشابه قواعد و لزوماً قاعده را نتیجه نمی‌دهند زیرا قاعده اخیر ممکن است از شرط حداقل اطمینان برخوردار نباشد. ADDIN EN.CITE <EndNote><Cite><Author>Han</Author><Year>2005</Year><RecNum>1</RecNum><DisplayText>[4]</DisplayText><record><rec-number>1</rec-number><foreign-keys><key app="EN" db-id="sdppz00r3f0vfgep52hpezvosz5zr00zsfdv">1</key></foreign-keys><ref-type name="Journal Article">17</ref-type><contributors><authors><author>Han, J.</author><author>Kamber, M.</author></authors></contributors><titles><title>Data mining: Concepts and Techniques, 2nd Edition</title><secondary-title>San Francisco, CA, itd: Morgan Kaufmann</secondary-title></titles><periodical><full-title>San Francisco, CA, itd: Morgan Kaufmann</full-title></periodical><dates><year>2005</year></dates><urls></urls></record></Cite></EndNote>[4]
2-2-3-1- تعاریف و مفاهیم اصلی در قواعد انجمنیI = {I1, I2, …, Im} : مجموعه اقلام خریداری شده است.
T: هر زیرمجموعه‌ای از I می‌باشد که از آن به عنوان تراکنش یاد می‌شود.
D: مجموعه تراکنش‌های موجود در T است.
TID: شناسه منحصر به فرد و یکتایی است که به هر یک از تراکنش‌ها اختصاص می‌یابد.
نمای کلی یک قاعده انجمنی به شکل زیر می‌باشد:
[پشتیبان , اطمینان]

به طوری که داریم:
پشتیبان (X, Y): نشان دهنده‌ی درصد یا تعداد مجموعه تراکنش‌های D است که شامل هر دوی X و Y باشند.
اطمینان: میزان وابستگی یک کالای خاص را به دیگری بیان می‌کند و مطابق فرمول زیر محاسبه می‌شود:
(2-3) (X) پشتیبان / ()پشتیبان = (Y X,) اطمینان
این شاخص درجه‌ی وابستگی بین دو مجموعه X و Y را محاسبه می‌کند و به عنوان شاخصی برای اندازه‌گیری توان یک قاعده در نظر گرفته می‌شود. غالباً قاعده‌هایی انتخاب می‌شوند که عدد اطمینان بزرگی داشته باشند.
فرض کنید اطلاعات مشتریانی که محصول X را خریده‌اند، همچنین علاقه دارند در همان زمان از محصول Y نیز بخرند، در قاعده انجمنی زیر نشان داده شده است:
(پشتیبان = 20% و اطمینان = 60%)
شاخص‌های اطمینان و پشتیبان قواعد بیانگر جذابیت آن‌ها هستند. این دو شاخص به ترتیب مفید بودن و اطمینان از قواعد مکشوفه را نشان می‌دهند. پشتیبان 20% برای قاعده انجمنی فوق به این معنی است که 20% همه‌ی تراکنش‌های موجود نشان می‌دهند که کالای X و Y با هم خریداری شده‌اند. اطمینان 60% به این معنی است که60% مشتریانی که کالای X را خریده‌اند، کالای Y را نیز خریداری کرده‌اند.
اگر مجموعه‌ای از عناصر حداقل پشتیبانی لازم را داشته باشند مکرر خوانده می‌شوند. قواعد قوی، قواعدی هستند که به طور توأمان دارای مقدار پشتیبان و اطمینان بیش از مقدار آستانه باشند. با استفاده از این مفاهیم، پیدا کردن قواعد انجمنی در دو گام خلاصه می‌شود، یعنی پیدا کردن مجموعه‌های مکرر و استخراج قواعد قوی.
2-2-3-1-1- تقسیم بندی قواعد انجمنیبر اساس ارزش عناصر درون قواعد، می‌توان قواعد را به انواع دودویی و کمی تقسیم کرد، در مثال زیر، قاعده اولی دودویی و دومی، کمی است.
]60% = confidence ,2% Computer Financial management software [sup =
Buys (X, high resolution TV)
بر اساس ابعاد یک قاعده می‌توان آن را تک بعدی یا چند بعدی نامید. قاعده زیر، فقط بعد خرید را شامل می‌شود.
Buys (X, Computer) Buys (X, “Financial management software”)
اما قاعده‌ی زیر سه بعدی است، و ابعاد سن، درآمد و خرید را شامل می‌شود.
(X, high resolution TV) Buys ("k48.. k42" X,) and income ("39..30" X,) Age
از آنجایی که داده‌ها می‌توانند در سطوح و یا مقیاس‌های مختلف تعریف شوند، قواعد را می‌توان بر اساس این سطوح خلاصه نمود. مراتب خلاصه‌سازی و اینکه آیا قواعد در یک سطح هستند یا در چند سطح، می‌تواند مبنای تقسیم‌بندی باشد.
2-2-3-1-2- استخراج قواعد تک‌سطحی تک بعدی دودوییقبل از ارائه الگوریتم‌های استخراج قواعد، نمادها و قراردادهایی را به منظور درک بهتر این الگوریتم‌ها مطرح می‌کنیم.
اقلام مطابق با قاعده ترتیب حروف الفبا چیده می‌شوند، به عنوان مثال، اگر باشد، مطابق این قاعده، باید رابطه‌ی برقرار باشد.
در تمامی این الگوریتم‌ها مراحلی که طی می‌شوند به قرار زیر می‌باشند:
گام اول: در اولین گذر، پشتیبان هر یک از اجزا محاسبه شده، و اقلام مکرر (با بیشترین میزان فراوانی) با در نظر گرفتن آستانه حداقل پشتیبان انتخاب می‌شوند. (LK)
گام دوم: در هر گذر، اقلام مکرر که از فاز قبلی، محاسبه شده‌اند برای ایجاد اقلام کاندیدا به کار می‌روند. (CK)
گام سوم: پشتیبان هر یک از CK ها محاسبه شده، و بزرگ‌ترین آن‌ها انتخاب می‌شود. این کار تا زمانی که هیچ قلم بزرگ‌تری یافت نشود، ادامه می‌یابد.
در هر فاز پس از یافتن اقلام بزرگ (LK)، می‌توان قواعد مطلوب را به صورت زیر استخراج کرد:
برای تمامی اقلام مکرر L همه‌ی زیرمجموعه‌های غیرتهی آن را (s) در نظر می‌گیریم. برای تمامی این زیرمجموعه‌ها، یک قاعده به صورت زیر استخراج می‌کنیم:
"s (L – s)" این قاعده در صورتی برقرار می‌شود که اطمینان حاصل از آن بزرگ‌تر یا مساوی حداقل اطمینان در نظر گرفته شده توسط کاربر باشد، به بیان دیگر اگر رابطه‌ی زیر برقرار باشد، قاعده‌ی فوق پذیرفته می‌شود و در غیر این صورت این قاعده لغو می‌شود.
(2-4) حداقل اطمینان ( (s) پشتیبان / (L) پشتیبان)
پروسه استخراج قواعد انجمنی عبارت است از:
ابتدا همه‌ی اقلام مکرر را که بیشتر یا مساوی با آستانه‌ی پشتیبان هستند بیابید.
برای تمامی اقلام مکرر، همه‌ی زیر مجموعه‌های آن‌ها را استخراج کنید.
همه‌ی قواعد ممکن را استخراج کنید.
قواعدی را بپذیرید که از بیشتر و یا آستانه‌ی اطمینان برخوردار باشند.
در اینجا برای پیدا کردن این قواعد از الگوریتم ساده Apriori یا الگوریتم پیش‌نیاز استفاده می‌کنیم. فرض کنید که ابتدا باید تمام مجموعه‌های تک عضوی مکرر را پیدا کنید، سپس بر اساس آن مجموعه‌های دو عضوی مکرر را پیدا کنید و الی آخر. در هر مرحله باید کل فضا جستجو شود اما این الگوریتم از خصوصیت Apriori استفاده می‌کند به این صورت که "اگر مجموعه‌ای از عناصر مکرر باشد، تمام زیرمجموعه‌های غیر تهی آن نیز مکرر خواهند بود".
هر زیر مجموعه‌ی یک مجموعه مکرر، خود نیز مکرر است. این خصوصیت را این‌گونه نیز می‌توان توصیف کرد: اگر مجموعه I به تعداد مشخصی تکرار شده باشد و اگر ما A را به آن اضافه کنیم تعداد تکرار این مجموعه از مجموعه قبلی بیشتر نخواهد بود. پس اگر اولی مکرر نباشد دومی نیز مکرر نخواهد بود. این الگوریتم از این خصوصیت استفاده می‌کند و در اینجا عملکرد آن را شرح می‌دهیم: می‌دانیم که از یک زیرمجموعه 1-k عضوی یا همان Lk-1 برای به دست آوردن Lk یعنی مجموعه‌های k عضوی استفاده می‌شود. این کار در دو مرحله صورت می‌گیرد، ابتدا باید مجموعه‌ای از اعضا پیدا شود که با ترکیب LK-1 با آن‌ها Lk به دست آید. این مجموعه از عناصر را Ck نامیده و مرحله به دست آوردن آن‌ها را پیوست می‌نامیم. مرحله بعد اضافه کردن این عناصر به مجموعه‌های قبلی است که آن را مرحله هرس می‌نامیم. در زیر این دو مرحله شرح داده می‌شوند.
2-2-3-1-2-1- مرحله پیوستابتدا باید مطمئن شویم که عناصر بر مبنای ترتیب حروف الفبا مرتب شده‌اند. دو مجموعه از Lk-1 با یکدیگر قابل پیوست هستند اگر 2-k عنصر اول آن‌ها با یکدیگر برابر باشند. یعنی: توجه کنید که دو عنصر آخر مرتب شده‌اند و از وجود عناصر تکراری جلوگیری می‌کنند. با اجتماع دو مجموعه قابل پیوست، آن دو مجموعه ترکیب می‌شوند.
با این روش، مجموعه ترکیب شده حاصل k عضو خواهد داشت که البته عنصر آخر (از نظر ترتیبی) از مجموعه دوم خواهد بود. در مثال زیر دو مجموعه (4، 2، 1) و (3، 2، 1) را در نظر بگیرید: مجموعه اول و دوم مرتب هستند و داریم: 4>3>2>1 پس می‌توان مجموعه ترکیب شده زیر را به دست آورد.
364680519304000(3 2 1) = مجموعه‌ی اول = LK-1
|| ||
364680518859500(4 3 2 1) = مجموعه‌ی ترکیب شده = Ck
|| ||
(4 2 1) = مجموعه‌ی دوم = LK-1
2-2-3-1-2-2- مرحله هرسCk مجموعه‌ای از Lkها است که هر عنصر آن یا مکرر است یا خیر، اما تمام عناصر مکرر در آن قرار دارند. حال تمام عناصر این مجموعه باید بررسی شوند تا مکرر بودن آن‌ها مشخص شود اما چون ممکن است تعداد آن‌ها زیاد باشد لذا برای کاهش حجم محاسبات از اصل Apriori استفاده می‌شود. به این صورت اگر یکی از زیرمجموعه‌های این مجموعه مکرر نباشد آن مجموعه نیز مکرر نخواهد بود. بنابراین برای پیدا کردن مجموعه‌های مکرر کافی است مجموعه‌های غیر مکرر را از آن‌ها جدا کنیم به این صورت که اگر عضوی از Ck در Lk-1 نباشد مکرر نیز نخواهد بود.

متن کامل در سایت امید فایل 

2-2-3-1-3- محاسبه اطمینان و استخراج قواعد نهاییپس از آنکه مجموعه‌های قوی استخراج شدند حال نویت استخراج قواعد است:

دانلود پایان نامه ایرانداک - پژوهش ایرانداک

شکل 1-1 : یک سیکل از سیگنال ECG
پتانسیل عمل عضله قلبفرآیند انقباض هماهنگ بخش‌های مختلف قلب توسط پتانسیل عمل در سلول‌های موجود در بافت قلب انجام می‌گیرد. در ادامه مراحل مختلف پتانسیل عمل در یک سلول قلبی جهت ایجاد انقباض ماهیچه قلب بررسی می‌گردد[8].
مرحله استراحت : پیش از وقوع پتانسیل عمل، مرحله استراحت بر غشا حاکم است. در این مرحله گفته می‌شود که غشا پلاریزه یا قطبی است. زیرا پتانسیل آن 90- میلی‌ولت است.
مرحله دپلاریزاسیون :در این مرحله غشا ناگهان نسبت به یون سدیم نفوذپذیر می‌شود و اجازه می‌دهد تا تعداد بی‌شماری یون مثبت سدیم به درون آکسون جاری شود. حالت طبیعی پلاریزه با پتانسیل 90- میلی‌ولت از بین می‌رود و پتانسیل به سرعت در جهت مثبت بالا می‌رود. به‌این حالت دپلاریزاسیون می‌گویند.
مرحله رپلاریزاسیون : در چند ده‌هزارم ثانیه بعد از اینکه غشا به شدت نسبت به سدیم نفوذپذیر گردید،‌کانال‌های سدیم شروع به بسته شدن می‌کنند و کانال‌های پتاسیمی به میزان بیشتری نسبت به حالت طبیعی بازمی‌گردند. سپس انتشار سریع یون‌های پتاسیم به خارج، مجددا پتانسیل غشا را به حالت منفی زمان استراحت می‌رساند؛ به‌این حالت رپلاریزاسیون غشا می‌گویند.
موج P :انتشار پتانسیل تحریک از طریق دهلیز، باعث انقباض دهلیز میشود )دپلاریزاسیون( و موج P را تولید می‌کند. دامنه موج P به طور نرمال کم است.
منحنی QRS :منحنی QRS مربوط به دوره زمانی انقباض یا دپلاریزاسیون بطنی است. سیگنال رپلاریزاسیون دهلیزی مغلوب سیگنال بسیار بزرگتر بطنی می شود. این سیگنال حاصل دپلاریزاسیون بطنی است. منحنی QRS به دلیل حجم بافت بطنی که درگیر است سیگنال بسیار بزرگتری نسبت به موج P است.
موج T :موج T نتیجه انبساط یا رپلاریزاسیون بطن‌ها است و دارای طول زمانی بیشتری نسبت به منحنی QRS است، زیرا رپلاریزاسیون بطنی بسیار آهسته تر از دپلاریزاسیون اتفاق می‌افتد.
قطعه ST :بخش ST زمان بین دپلاریزاسیون و رپلاریزاسیون بطنی را نشان میدهد. بخش ST از پایان کمپلکس QRS شروع می‌شود و در آغاز موج T پایان مییابد. در حالت نرمال، بخش ST به‌اندازه 0.12 ثانیه یا کمتر است.
بازه QT:بازه QT از آغاز موج (Qi) Q شروع می‌شود و در نقطه پایان موج (Ti) Tتمام می‌شود، که نشان دهنده طول زمان سیکل دپلاریزاسیون یا رپلاریزاسیون است. اندازه نرمال زمانی بازه QTحدود 0.38 ثانیه است، و اندازه ‌آن در مردان و زنان و در سنین مختلف، متفاوت است. به عنوان یک قانون کلی، فاصله زمانی QT باید حدود 0.40 درصد فاصله زمانی R-R اندازه‌گیری شده باشد.
بیماریهای ضربان قلب :از تحلیل تغییرات ایجاد شده درشکل سیگنال نرمال الکتروکاردیوگرام می‌توان برای تشخیص بسیاری از انواع آریتمی و بیماری‌های قلبی استفاده شود. سیگنال الکتروکاردیوگرام می‌تواند به بخش‌ها و فواصل زمانی گوناگون تقسیم شود که با تعیین محدوده برای این بخش‌ها، ضربان‌های غیر نرمال تشخیص داده شوند. سیگنالهای ECG با توجه به شکل آنها و نوع آریتمی‌ها به گروه‌های مختلف تقسیم می شوند. انواع ضربان‌های قلبی با توجه به پایگاه داده MIT-BIH در جدول 1-1 نشان داده شده‌اند]6[.
Beat type Label
Normal beat N
Left bundle branch block L
Right bundle branch block R
Atrial premature beat A
Abberated atrial premature beat A
Nodal(junctional) premature beat J
Supraventricular premature beat S
Ventricular premature beat V
Fusion of ventricular and normal beat F
Ventricular flutter beat b or I
Nodal(junctional) escape beat J
Ventricular escape beat E
Fusion of paced and normal beat F
جدول 1-1 : ضربان های قلبی
در این تحقیق به طبقه‌بندی شش شکل مختلف سیگنال ECG که دارای بیشترین اهمیت هستند، پرداخته شده است. این ضربان‌ها عبارتند از:
نرمال (N)، بلوک شاخه دسته ای چپ (L یا LBBB)، بلوک شاخه دسته‌ای راست (R یا RBBB) و انقباض زودرس بطنی (V یا PVC) و ضربان زودرس دهلیزی (A) و تپش قلب (Pace beat).
بلوک شاخه دسته‌ای چپ (LBBB) و بلوک شاخه دسته‌ای راست (RBBB):
دسته‌ای از آریتمی‌ها مربوط به نارسایی‌های دسته‌ای هادی مختلف می باشند (بلوک شاخه دسته‌ای راست و بلوک شاخه دسته‌ای چپ). بلوکهای شاخه دسته‌ای (BBB) در اثر تأخیر در هدایت یکی از بخش‌های چپ (LBBB) یا راست (RBBB) سیستم هدایت بطنی رخ می‌دهد. به دلیل اینکه سیگنال در یکی از نیمه‌های بطن تأخیر یافته است، شکل QRS پهنتر می‌شود و گاهی نیز فرورفته می‌شود. این انسدادها معمولاً تاثیر بسیار کمی در عملکرد و کارآیی پمپاژ دارند و اما می‌توانند تغییر قابل ملاحظه‌ای در مسیر بردار قلبی و در نتیجه در شکل ظاهری ECG به وجود آورند. به همین دلیل این ضربان‌های قلبی غیر نرمال می‌توانند تغییرات دیگر ECG را که مشخص کننده بیماری‌ها (مثلا ایسکمی) می‌باشند را بپوشانند. در برخی موارد، این ناهنجاری‌های رسانش(LBBB و RBBB) نشانگر برخی از دیگر آسیب‌های بسیار مهم پنهان می باشند. برای نمونه، انسداد رگ های ریوی می‌تواند موجب یک بلوک شاخه دسته‌ای راست جدید و ایسکمی حاد پیشین می‌تواند موجب یک بلوک شاخه دسته‌ای چپ جدید شود. معمولاً هیچ درمانی برای بلوک شاخه دسته‌ای انجام نمی‌شود.
انقباض زودرس دهلیزی یا اکستراسیستول (APC):
گاهی اوقات ممکن است یک ریتم به وسیله ایمپالس‌هایی‌که از خارج گره سینوسی– دهلیزی‌SA سرچشمه گرفته باشند، متوقف شود. این ایمپالس‌ها قبل از اینکه یک دشارژ SA نرمال رخ دهد، اتفاق می‌افتند و در سراسر قلب انتشار پیدا می‌کنند، اگر میوکاردیوم (ماهیچه قلب) مقاوم نباشد، سبب می‌شوند تا به صورت زودرس منقبض شود. اکستراسیستول‌ها ممکن است از بالا (بالابطنی) یا از پایین (بطنی) گره دهلیزی بطنی سرچشمه بگیرند. اکستراسیستول‌ها ممکن است به صورت تکی یا در ردیف‌های کوتاه یا بلند اتفاق بیافتند.
انقباض زودرس بطنی(PVC):
ضربان‌های PVC یک شکل بسیار رایج از آریتمی‌ها می‌باشند. آنها یک شکل ضربان‌های قلبی غیر معمولی هستند که در آنها بطن به طور زودرس انقباض پیدا می‌کند. در طول یکPVC ، بطن قبل از اینکه دشارژ الکتریکی نرمال از گره SA فرا برسد، از نظر الکتریکی زودتر دشارژ شده و منقبض می‌گردد. این دشارژهای زودرس به دلیل تحریک‌پذیری الکتریکی عضله های قلبی بطن‌ها هستند. بعد از PVC سیستم الکتریکی قلب فوراً به حالت اولیه باز می‌گردد. این بازگردانی سبب یک توقف مختصر در ضربان قلبی می شود. ضربان PVC به وسیله منحنی‌های QRS پهن و گسترده شناخته می‌شود]5[.
ساختار کلی تحقیقدر این تحقیق ابتدا به بیان کلیات و روش انجام تحقیق به صورت خلاصه پرداخته شده است. در فصل دوم به مرور پژوهش‌های انجام شده در زمینه طبقه بندی سیکنال‌های قلبی و بیان روش کار آنها و مقایسه نتایج بدست آمده، پرداخته خواهد شد. در فصل سوم روش پیشنهادی به همراه توضیحات دقیق و فرمول آنها تشریح خواهد شد. در فصل چهارم مراحل شبیه‌سازی به صورت بخش به بخش بیان می‌شود. در فصل پنجم نتایج شبیه‌سازی و همچنین مقایسه با نتایج تحقیقات قبلی که در فصل دوم تشریج شده اند بیان می‌شود.

فصل دومپیشینه ‌پژوهش
2-1- مقدمههوشمند‌سازی فرآیند تشخیص بیماری‌های قلبی سالها است مورد بحث پژوهشگران تمامی کشور‌ها قرار گرفته است. این فرآیند شامل مراحلی است که طی آن سیگنال ECG به عنوان ورودی نرم افزار انتخاب می‌شود و انتظار این است که نرم افزار با دقت قابل قبولی سلامت یا بیماری و حتی نوع بیماری قلبی را تشخیص دهد. تمامی این نرم افزار‌ها پس از دریافت سیگنال، ویژگی‌های مناسب آن را استخراج و انتخاب کرده، سپس به تشخیص نوع بیماری می‌پردازد. در هر یک از مراحل بیان شده روش های گوناگونی وجود دارد که در این فصل به تحقیقات پیشین و روشی که مورد استفاده قرار گرفته است پرداخته خواهد شد.
معرفی پایگاه داده:سیگنال‌های نارسائی قلبی که از پایگاه داده MIT-BIH گرفته شده است، شامل 48 سیگنال قلب دوکاناله متشکل از 25 مرد از سنین 32-89 سال و 22 زن در سنین 23-89 سال با فرکانس نمونه‌برداری 360 هرتز و رزولوشن 12 بیت، که حدودا حاوی 650000 نمونه و تقریبا 2750 ضربان قلب در مدت زمان 30 دقیقه برای هر سیگنال می‌باشد. بیش از 109000 ضربان قلب در پایگاه فوق در قالب 15 نارسائی برچسب‌گذاری شده‌اند. از این سیگنال‌ها 45 سیگنال دارای lead II می‌باشند [11،24].
2-2- طبقه‌بندی سیگنال ECG با استفاده از موجک و شبکه عصبیپس از چند مرحله پیش پردازش از تبدیل موجک پیوسته برای استخراج ویژگی های سیگنال می‌شود. به دلیل زیاد بودن تعداد بردارهای استخراج شده توسط موجک از آنالیز PCA جهت کاهش ابعاد و به عبارتی انتخاب بهترین نمونه‌ها استفاده شده است.
شبکه عصبی چند لایه، طبقه‌بندی را بر روی شش کلاس که شامل سیگنال نرمال و 5 اریتمی قلبی که از گروهی خاص از سیگنال ECG بیماران پایگاه داده MIT-BIH انجام داده است. نمودار گرافیکی روش به کار رفته در این تحقیق در شکل 2-1 نشان داده شده است]7[.

شکل 2-1 :مراحل طبقه بندی 6 آریتمی
2-3- طبقه‌بندی سیگنال ECG با استفاده ازموجک و خواص مورفولوژیک و شبکه عصبیدر این پژوهش پس از پیش‌پردازش، 15 ویژگی زمانی و 15 ویژگی از تبدیل موجک انتخاب شده است و برای کاهش ابعاد این ویژگی ها از روش PCA استفاده شد که نتیجه آن انتخاب 8 ویژگی از بهترین ویژگی‌های هر کلاس بوده است. شبکه عصبی پرسپترون چند لایه و شبکه عصبی پایه شعاعی به صورت ترکیبی طبقه‌بندی را انجام می دهد. در این تحقیق نشان داده شده است که ساختار ترکیبی شبکه عصبی دارای نتایجی به مراتب بهتر از شبکه عصبی MLP می‌باشد]4[.
2-4- طبقه‌بندی سیگنال ECG با استفاده از تبدیل موجک و شبکه عصبی فازیدر این پژوهش از استخراج ویژگی موجک به همراه شبکه عصبی فازی برای شناسایی انقباضات زودرس بطنی PVC استفاده کرده‌اند. ایده اصلی و مزیت مهم این تحقیق استفاده مجدد از اطلاعات تولید شده در مرحله تشخیصQRS ، که یک مرحله اساسی برای بیشتر الگوریتم های طبقه بندی ECG است، می باشد. طول مدت زمان کمپلکس QRS در مقیاس سه و سطح زیر کمپلکس QRS در مقیاس چهار به عنوان ویژگی های مشخصه انتخاب شده اند. پس از نرمالیزاسیون، طبقه بندی PVC با استفاده از شبکه عصبی فازی روی سیگنال ECG تعدادی خاص از بیماران انجام شده است. دو مزیت اولیه استفاده از موجک یکسان برای دو مرحله تشخیص QRS و طبقه‌بندی PVC، محاسبات کمتر و پیچیدگی کمتر در هنگام پیاده سازی واقعی است]9[.
2-5- طبقه‌بندی سیگنال ECG با استفاده از تبدیل ویولت و شبکه عصبی مصنوعی و الگوریتم پرندگانویژگی‌های شکلی تبدیل موجک، با استفاده از آنالیز PCA به یک فضای ویژگی با ابعاد کمتر نگاشت داده شده اند، و همچنین ویژگی‌های زمانی از داده های ECG استخراج شده اند. برای قسمت تشخیص الگو از شبکه‌های عصبی مصنوعی رو به جلو که هر کدام با استفاده از تکنیک الگوریتم پرندگان چند هدفه استفاده شده است. در این تحقیق،‌سیستم طبقه‌بندی ارائه شده می تواند با آموزش ساختارهای شبکه بهینه به تغییرات اساسی در الگوهای ECG یک بیمار خاص سازگار شده و بنابراین می‌تواند به درصد دقت‌های بالاتری در دسته داده‌های بزرگ دست پیدا کند.
بر روی کل داده‌های پایگاه داده میزان میانگین معیار عملکردهای دقت حساسیت برای روش پیشنهادی برای شناسایی ضربان‌های اکتوپیک بطنی (VEB) و ضربان‌های اکتوپیک بالابطنی (SVEB) انجام شده است]10[.
2-6- طبقه‌بندی آریتمی‌های قلبی با استفاده از SVMدر این پژوهش با تحلیل سیگنال ECG، ویژگی‌های آن با ترکیبی از تبدیل ویولت و مدل AR استخراج شده اند. با چنین تلفیقی روش های رایج در تشخیص بیماری‌های قلبی بهینه شده‌اند. سپس از یک طبقه‌بندی‌کننده ماشین بردار پشتیبان با هسته گوسین به منظور طبقه‌بندی خودکار پنج نوع آریتمی قلبی استفاده شده است]2[.
2-7- طبقه‌بندی آریتمی دهلیزی بطنیدر این پژوهش یک الگوریتم کارآمد تشخیص و طبقه‌بندی ECG تک کاناله مبتنی بر تبدیل موجک را اجرا نموده و به منظور تشخیص و طبقه‌بندی برخی آریتمی‌های خطرناک بطنی به کار گرفته و بهبود داده شده است. در اولین مرحله، کمپلکس‌های QRS تشخیص داده می‌شوند. سپس مشخصات هر QRS با شناسایی و تعیین قله‌های مو ج های تشکیل دهنده آن و نیز نقاط شروع و پایان کمپلکس QRS تکمیل می‌گردد. در ادامه قله‌های موج هایT ، P و نیز نقاط شروع و پایان هر یک تعیین می‌شود . این الگوریتم را با استفاده از داده‌های حاشیه نویسی شده معروف MIT/BIH Arrhythmia Database و QT Database ارزیابی شده اند. در الگوریتم پیشنهادی با بکارگیر‌ی موجک اسپلاین درجه دوم (quadratic spline)، کمپلکس QRS و همچنین موجهای T و P از انواع نویزها و تداخل‌های ناخواسته تفکیک شده و تشخیص آریتمی‌های حاد در بانک اطلاعاتی سیگنال‌های الکتروکاردیوگرام استاندارد حتی در حضور نویز و تداخل‌های ناخواسته نیز امکان پذیر می‌گردد. با استفاده از الگوریتم پیشنهادی تشخیص آریتمی‌های تاکیکاردی بطنی VT، تاکیکاردی فوق بطنی SVT، فیبریلاسیون بطنی VFIB، فلاتر بطنی VFL، فلاتر دهلیزی AFL، و آریتمی فیبریلاسیون دهلیزی AFIB، انجام شده است]12[.
2-8- طبقه‌بندی سیگنال الکترو‌کاردیو‌گرام با طبقه‌بند ماشین بردار پشتیبان و الگوریتم PSOدر این پژوهش از ویژگی‌های زمانی و مورفولوژیک استفاده شده است. آزمایش از روش‌های طبقه بند RBF و kNN و SVM به عمل آمده که نتایج برتری طبقه‌بند SVM با هسته گوسی را نشان می‌دهد. همچنین برای تنظیم پارامترهای SVM از الگوریتم بهینه‌ساز PSO استفاده شده است که باعث بهبود عملکرد طبقه‌بندی SVM می شود. در این مقاله از 250 و500و750 ضربان اموزش استفاده شده که با توجه به نتایج آزمایش عملکرد طبقه‌بند با 750 داده اموزش دقت 93.27% است]3[.
2-9- طبقه‌بندی آریتمی‌های قلبی با استفاده از PSOدر این پژوهش یک سیستم جدید برای طبقه‌بندی سه نوع ضربان قلب شامل ضربان نرمال و دو آریتمی قلبی ارائه شده است. این سیستم شامل سه ماژول اصلی - یک ماژول استخراج ویژگی، یک ماژول طبقه بندی و یک ماژول بهینه‌سازی‌ است. در ماژول استخراج ویژگی ترکیبی مناسب از ویژگی‌های شکلی و زمانی ایجاد می‌شود. در ماژول طبقه بندی یک کلاس بند چند طبقه بر پایه ماشین بردار پشتیبان ارائه شده است. در ماژول بهینه‌سازی از الگوریتم اجتماع ذرات برای یافتن بهترین ویژگی‌ها استفاده شده است. نتایج شبیه سازی دقت مناسبی داشت و این در حالی است که در بدست آمدن این سطح دقت،فقط مقدار کمی از ویژگی‌ها استفاده شده است]14[.

متن کامل در سایت امید فایل 

2-10- رویکرد ترکیبی در طبقه‌بندی سرطانمدلی مبتنی بر فیلتر و رپر را جهت دسته‌بندی نشان گر سرطان برای انتخاب ژن در داده‌های ریز آرایه ارائه شده است. نتایج مدل ترکیبی ان‌ها که از نرخ فیشر به عنوان فیلتر استفاده می‌کند،روی چندین مجموعه داده واقعی دقت کلاس‌بندی بسیار بهتری نسبت به مدل تنها رپر، نشان می‌دهد. مدل ترکیبی دو مرحله‌ای ارائه شده در این پژوهش ویژگی‌های مناسب را بر اساس معیار اماری حداکثر وابستگی و حداقل افزونگی انتخاب می‌کند. در مرحله اول مدل از معیار حداکثر ارتباط و حداقل افزونگی برای انتخاب زیر مجموعه بهینه ویژگی‌ها بهره می‌برد. در مرحله دوم از الگوریتم‌های کلاسیک رو به جلو وعقب گرد برای جستجو در زیر مجموعه‌های مرحله اول استفاده می‌کند. نتایج تجربی مدل آنها حاکی از عملکرد بهتر این روش نسبت به روش فیلتر حداکثر وابستگی می‌باشد]15[.
2-11- دسته‌بندی آریتمی‌های قلبی بر مینای تبدیل موجک و SVMدر این پژوهش یک روش برای دسته‌بندی آریتمی‌های قلبی ارائه شده است که تعداد 5 آریتمی از بانک اطلاعاتی Physionet انتخاب شده و آریتمی‌ها به زمان های 6 ثانیه تقسیم شده و برای هر قطعه زمانی ضرایب تبدیل موجک به عنوان بردار ویژگی آن قطعه محاسبه شده و از ماشین بردار پشتیبان SVM برای دسته‌بندی آریتمی‌ها استفاده شده است. دسته‌بندی‌کننده‌های SVM را با بردارهای ویژگی قطعات آموزش داده و برای دسته‌بندی یک آریتمی مجهول، بردارهای ویژگی زمانی آن به SVM ها اعمال می‌شود]16[.
2-12- طبقه‌بندی سیگنال ECG با استفاده از خواص مورفولوژیدر این پژوهش یک روش جهت کلاس‌بندی ضربان از یک مجموعه داده بزرگ با آموزش شبکه عصبی و استفاده از موجک و ویژگی‌های زمان‌بندی ارائه داده اند. آنها دریافتند که مقیاس چهارم از تبدیل ویولت دوتایی با ویولت مرتبه دوم همراه با نرخ فاصله قبل و بعد از R-R در تمایز نرمال و PVC دیگر ضربان‌ها بسیار مؤثر است]17[.
2-13- انتخاب ویژگی با استفاده از الگوریتم فاخته باینریدر این پژوهش،انتخاب ویژگی جدید به نام جستجو فاخته دودویی، که در رفتار پرندگان فاخته است پیشنهاد شده است. آزمایش‌های انجام شده در زمینه تشخیص سرعت در سیستم‌های توزیع قدرت در دو مجموعه داده به دست آمده از یک شرکت برق برزیل انجام شدو توانایی این روش در برابر با چندین تکنیک بهینه‌سازی دیگر را نشان می‌دهد]18[.
2-14- انتخاب ویژگی با استفاده از الگوریتم فاختهمعمولا برای پیدا کردن مجموعه داده‌ها با مقدار زیادی از ویژگی‌ها روبرو هستیم که برخی از این ویژگی های مناسب نیستند. در این زمینه، یکی از استراتژی‌های مورد استفاده برای مقابله با این مشکل،انجام یک فرآیند انتخاب ویژگی به منظور ساخت یک زیر مجموعه از ویژگی‌های است که می تواند بهترین مجموعه داده را نشان دهد. مطالعات متعددی با استفاده از تکنیک‌های بهینه‌سازی الهام گرفته از طبیعت وجود دارد. در این پژوهش، ما از الگوریتم جستجو فاخته (CS) در زمینه انتخاب ویژگی استفاده می‌کنیم. برای این منظور، یک نسخه باینری از جستجو فاخته، یعنی BCS، بکار گرفته می‌شود. شبیه‌سازی و مقایسه BCS با نسخه‌های باینری از بت الگوریتم، الگوریتم کرم شب‌تاب و ذرات بهینه‌سازی انجام شده است که BCS نتایج منطقی و مناسب‌تری را نشان می‌دهد]19[.

فصل سوممعرفی الگوریتم‌ها و روش‌های پردازش سیگنال ECG
3-1- مقدمهدر این فصل به بررسی تئوری روش پیشنهادی، جزئیات و تشریح فرمول‌های مربوطه خواهیم پرداخت که شامل تکنیک‌ها و فیلترهای موجود در بخش پیش پردازش، روش‌های استخراج ویژگی از سیگنال پیش پردازش شده، روش انتخاب ویژگی‌ها و طبقه‌بند می‌باشد.
3-2- آنالیز موجکموجک یک شکل موج با طول موثر محدود و متوسط صفر است. شکل 3-1 موجک را با موج سینوسی که مبنای آنالیز فوریه است مقایسه می‌کند. موج سینوسی طول محدود ندارد و همواره قابل پیش بینی است، اما موجک‌ها تمایل دارند که نامنظم و نامتقارن باشند.
center0
00

شکل 3-1: سیگنال سینوسی و موجک
آنالیز فوریه تجزیه یک سیگنال به موجهای سینوسی از فرکانسهای مختلف است. به شکل مشابه، آنالیز موجک تجزیه یک سیگنال به نسخه‌های شیفت یافته و مقیاس شده از موجک اصلی یا مادر می‌باشد. با توجه به شکل‌های موجک و موج سینوسی، می توان دید که سیگنال‌های با تغییرات شدید بهتر می تواند با موجک نامنظم آنالیز شوند. همچنین مشخصه‌های محلی نیز توسط موجک بهتر توصیف می شوند، چون موجک‌ها محدوده محلی دارند. تبدیل موجک پیوسته (CWT) و تبدیل موجک گسسته (DWT) دو تبدیل مهم در آنالیز موجک می باشد]20[.
3-2-1- تبدیل موج پیوسته (CWT)تبدیل پیوسته موجک روی تابع پیوسته و انتگرال پذیر f(x) نسبت به موجک حقیقی Ψ(x) از رابطه زیر حاصل می‌شود:
527301126035(3-1)
020000(3-1)
WΨs, τ=-+fx Ψs,τx dx , Ψs,τ(x)=1sΨ(x-τs)
τ , s به ترتیب بیانگر مقیاس و زمان هستند]20[.
3-2-2- تبدیل موجک گسستهضرایب موجک در هر مقیاس ممکن، مقادیر بسیار زیادی عدد تولید می‌کند. راه حل کاهش تعداد آنها را می توان از تبدیل گسسته موجک (DWT) بدست آورد.
یک راه مناسب، استفاده از فیلترها در سال 1988 توسط مالات ارایه شد و توسعه یافت]21[.
3-3-2-2- تجزیه چند سطحیفرایند تجزیه می‌تواند با تقریب‌های متوالی که به نوبت تجزیه می‌شوند، تکرار شود.این عمل منجر به ایجاد درخت تجزیه موجک می‌باشد.شکل 3-2 یک درخت تجزیه موجک سه سطحی را نمایش می‌دهد]21[.

شکل 3-2: نمایی از تحلیل موجک چند وضوحی با ساختار سلسله مراتبی توسط ضرایب تقریبی و جزیی تا سطح تجزیه 3 که در آن، A مبین ضرایب تقریب و D نیز ضرایب جزئی را نشان میدهد.
شکل (3-3) ساختار فیلتری را نشان میدهد که به آن بانک فیلتری میگویند. در این ساختار بعد از اعمال هر فیلتر با کاهش نمونههای زمانی، رزولوشن فرکانسی را افزایش میدهند. بدین ترتیب که بعد از اعمال فیلتر پایینگذر در هر مرحله، با کاهش رزولوشن زمانی به میزان نصف مرحله قبل، رزولوشن فرکانسی را دو برابر میشود.

شکل 3-3: شمایی از ساختار فیلتر بانک را برای تولید ضرایب جزیی و تقریب تبدیل موجک توسط فیلترهای پایینگذر (g) و بالاگذر (h) تا سطح تجزیه سوم نشان میدهد.
3-2-4- انتخاب موجک مادرضرایب تبدیل موجک تحت تاثیر فیلترهای اعمال شده به سیگنال هستند، که این فیلترها توسط موجک مادر و تابع مقیاس بدست میآیند. از اینرو، ضرایب تبدیل موجک با توجه به تابع موجک مادر میتواند دارای شدت و اندازههای مختلف باشد. هریک از موجکهای مادر دارای خواصی هستند که آنها را از یکدیگر جدا میسازد. یکی از پرکاربردترین توابع موجک، تابع موجک مادر دابیچیز است .که برخی توابع مادر مانند سیملت و کافلت از روی آن ساخته میشود و دارای ویژگیهای متفاوت نسبت به دابیچیز هستند. از آنجاییکه توابع موجک مادر از لحاظ نوع و مرتبه متفاوت میباشند، لذا ضرایب موجک آنها از لحاظ زمانی و اندازه دامنه متفاوت است. این نکته قابل ذکر است که ضرایب خروجی فیلتر پائین گذر(g(n)) شکل اولیه سیگنال را دنبال میکنند، یعنی کلیات سیگنال معادل فرکانسهای پایین را دربردارند و ضرایب تقریب نام گرفتند. همچنین ضرایب خروجی فیلتر بالاگذر(h(n))، جزئیات سیگنال را دربردارند، به همین دلیل به این ضرایب، جزییات گفته میشود و نماینده فرکانسهای بالا میباشند[37].
انتخاب موجک مادر نقش مهمی در استخراج ویژگی سیگنال ها به خصوص سیگنال ECG دارد. از این رو ما از بین موجک‌های مختلف، موجکی را انتخاب می‌نماییم که بیشترین شباهت به سیگنال ECG داشته باشد.در شکل 3-6 انواع دابیچیزها نشان داده شده است در بین موجک‌های مادر، موجک دابیچیز 6 بیشترین شباهت به سیگنال ECG را دارد که در شکل 3-7 سیگنال ECG با 8 سطح تجزیه و 8 سیگنال جزییات نشان داده شده است[36].
-40420531215

020000

شکل 3-6: انواع دابیچیز

شکل 3-7: سیگنال ECG به همراه 8 سطح تجزیه با db6 ]36[
3-2-4- ویژگی‌های استخراج شده از ویولتاستفاده از پارامترهای جدول3-1 به جای استفاده از ضرایب ویولت توصیه شده است]35] [23[.
ویژگی های موجک استخراج شده
انرژی
درصد انرژی طول سیگنال
واریانس ضرایب ویولت
انحراف معیار ضرایب ویولت
مقدار حداکثرتوزیع داده ها
انحراف داده ها
انحراف استاندارد
میانگین داده ها
جدول 3-1 ویژگی ویولت برای تشخیص مولفه های شناختی از ECG
3-3- ویژگی زمانیتشخیص پزشک به طور عمده مبتنی بر اطلاعات زمانی‌ و ریخت‌شناسی استخراج شده از سیگنال الکتروکاردیوگرافی است. این در حالی است که در برخی از شرایط ویژگی‌های به دست آمده از تحلیل موجک بر روی سیگنال‌های قلبی، به تنهایی از تمایز کافی برای طبقه‌بندی برخوردار نیستند. از این رو، استفاده از دیگر مشخصه‌های موجود در سیگنال‌های قلبی به جهت طبقه‌بندی بیمار‌یهای قلبی ضروری به نظر می‌رسد.
برای توصیف کاملتر سیگنال الکتروکاردیوگرافی، علاوه بر ویژگی‌های موجک از ویژگی‌های زمانی نیز در این تحقیق استفاده شده است. ویژگی‌های زمانی مورد استفاده شامل نه ویژگی زمانی برای تشخیص مولفه‌های شناختی از سیگنال ECG هستند که نماد اختصاری آ نها در جدول 3-2 بیان شده است]4[.

جدول 3-2 : ویژگی زمانی برای تشخیص مولفه‌های شناختی از ECG
ویژگی نماد اختصاری
دامنه ماکزیمم سیگنال AMP
دامنه مینیمم سیگنال -AMP
ناحیه مثبت PAR
ناحیه منفی NAR
قدر مطلق ناحیه منفی NANR
مجموع ناحیه TAR
قدر مطلق مجموع ناحیه ATAR
قدر مطلق مجموع ناحیه TAAR
پیک تا پیک سیگنال PP
3-4- استخراج ویژگی با مدل خودبازگشتی(AR)55016401019175(3-2)
020000(3-2)
روش مدلسازی خود بازگشتی یکی از مدل‌های اتفاقی است که برای نمایش سیگنال‌های غیر ایستا بسیار مورد استفاده می‌باشد. در این مدل، مقادیر جاری سیگنال به صورت جمع خطی از تعداد محدودی از مقادیر قبلی بعلاوه خطای e(n) بیان می‌شود. بنابر این پردازش به صورت 3-2 مدل می‌شود:
xn=i=1pai.xn-1+e[n]
به طوری‌که می توان گفت x(n) سیگنال مورد نظر، e(n) نویز سفید با میانگین صفر و واریانس مجهول، ai ها ضرایب و p مرتبه مدل AR می‌باشد. در این معادله متغیر x(n) به مقادیر قبلی خودش وابسته است. روشهای متعددی بطور رایج برای تخمین ضرایب AR استفاده می‌شود]2[.
3-5- استراتژی انتخاب ویژگیانتخاب ویژگی فرآیندی است که ویژگی‌های با قدرت تشخیص بالاتر و موثرتر را از مجموعه‌های داده برای انجام اعمال داده کاوی انتخاب می‌کند. مرحله مقدماتی فرایند انتخاب ویژگی عبارتند از: شناسایی مجموعه ویژگی‌ها و جستجو برای بهترین زیر مجموعه. مجموعه پارامترها اغلب شامل الگوریتم‌های یادگیری الگوریتم های انتخاب و فرآیندهای تخمین خطا می‌باشند. البته این مسئله کاملا روشن است که هیچ مجموعه ویژگی به تنهایی برای کلیه‌ی مسائل داده کاوی کارا نمی‌باشد.
الگوریتم‌های انتخاب ویژگی به طور کلی به سه دسته تقسیم می‌شوند: مدل‌های فیلتر، مدل‌های رپر و مدل‌های ترکیبی]13[. مدل‌های فیلتر از مشخصات ذاتی یا آماری ویژگی‌های مجموعه‌های داده استفاده می کنند و از هر گونه الگوریتم یادگیری مستقل اند. چنین رویه‌هایی شامل ماشین یادگیری نمی‌باشند و برای مجموعه داده‌های با ابعاد بالا موثر بوده و پیشنهاد می‌شوند. در مقابل مدل‌های رپر از ماشین‌های یادگیری استفاده کرده و زیرمجموعه ویژگی‌ها را بر اساس تخمین کارایی انتخاب می‌کنند. در مقایسه با فیلتر‌ها رپرها دارای زمان و هزینه‌های محاسباتی بالاتری بوده و برای مجموعه داده‌های با ابعاد بالا مناسب نمی‌باشد. مزیت اصلی رپرها در دقت بالای پیش‌بینی آنها است. نتایج جستجوی رپرها برای یافتن بهترین زیر مجموعه ویژگی بسیار بالاتر از فیلتر‌ها گزارش شده است. برای انتخاب ویژگی خوب،تلاش اصلی فرایند جستجو باید شناخت ویژگی‌های موثر و غیر افزونه باشد]25[. اغلب روش‌های ترکیبی فیلتر و رپر از فیلترها جهت رتبه‌بندی ویژگی‌ها و کاهش تعداد ویژگی‌های کاندید استفاده می‌کنند. به طور کلی مدل‌های ترکیبی بر اساس رویه‌های ترتیبی دو مرحله‌ای کار می‌کنند.در مرحله اول معمولا براساس فیلترها تعداد ویژگی‌های مورد نظر برای مرحله دوم کاهش می‌یابند. سپس با استفاده از مجموعه کاهش یافته یک رویه رپر در مرحله دوم جهت انتخاب ویژگی‌های مطلوب اعمال می‌شود.
3-6- تحلیل مولفه اصلی (PCA)در روش تحلیل مؤلفه‌های اصلی، محور‌های مختصات جدیدی برای داده‌ها تعریف می‌شود به گونه ای که نخستین محور در جهتی قرار می‌گیرد که واریانس داده‌ها بیشینه است و دومین محور نیز عمود بر محور اول و در جهتی که واریانس داده ها بیشینه باشد،در نظر گرفته می‌شود و به همین ترتیب، محورهای بعدی عمود بر تمامی محورهای قبلی به گونه‌ای قرار می‌گیرند که واریانس داده‌ها در آن جهت بیشینه باشد]4[.تحلیل مولفه اصلی یکی از روش‌های مرسوم استخراج ویژگی است که در بسیاری از پژوهش‌ها به دلیل سادگی و سرعت بالا در پردازش از آن استفاده می‌شود]26[. تکنیک PCA بهترین روش برای کاهش ابعاد داده به صورت خطی می‌باشد یعنی با حذف ضرایب کم اهمیت بدست آمده از این تبدیل،اطلاعات از دست رفته نسبت به روشهای دیگر کمتر است.
فرض کنید ماتریس ورودی X دارای NT نمونه و n ویژگی است و NT نمونه باید در C گروه قرار گیرند، میانگین و کوواریانس داده با توجه به روابط (3-3) و (3-4) محاسبه میشوند [38]:
md=1NTi=1cj=1Nixi,j(3-3) COV=1NTi=1cj=1Ni(xi,j-md)(xi,j-md)T (3-4)
در مرحلهی بعد، مقادیر ویژه و بردارهای ویژه از روی ماتریس کواریانس محاسبه می‌شوند. سپس، تعداد k مقدار ویژه بزرگتر از n مقدار ویژه انتخاب می‌شوند. حال ماتریس ورودی X تحت ماتریس بردار ویژه P با تعداد k ویژگی، به فضای تحلیل مولفه‌اصلی تبدیل می‌شود:
(3-5) Yij=[P1,P2,…,Pk]TXij3-7- روش بیشترین وابستگی و کمترین افزونگی (mRMR)در بسیاری از کاربرد‌های شناسایی آماری الگو، انتخاب زیرمجموعه‌ای از مجموعه ویژگی‌ها می‌تواند سبب کاهش خطای دقت طبقه‌بندی گردد. هدف روش بیشترین وابستگی و کمترین افزونگی، انتخاب زیرمجموعه از فضای ویژگی مبتنی بر مفهوم همبستگی و کاهش افزونگی اطلاعات می‌باشد. فرض کنید فضای داده ورودی D، شامل N نمونه و M ویژگی است و c نیز برچسب مربوط به هر گروه باشد. در این حالت، هدف انتخاب بهینه m ویژگی از فضای M بعدی است بطوریکه هر نمونه متعلق به گروه c باشد. از آنجاییکه تعداد زیرمجموعه‌های ممکن 2M بوده و تعداد زیرمجمو ع‌هایی که ابعادشان کوچکتر از m باشد نیز i=1mMi می‌باشد جستجوی کامل زیرمجموعه‌های ویژگی بسیار دشوار است. از اینرو، روش‌های جستجوی ترتیبی مانند پیش رو ترتیبی و شناور پیش رو ترتیبی، برای جستجوی فضای کامل زیرمجموعه‌ها در فضای ویژگی پیشنهاد می‌شوند]29[. شرط توصیف بهینه معادل با کمترین خطای دقت طبقه‌بندی درنظر گرفته می‌شود، بطوریکه در طبقه‌بندی بی سرپرست،‌کمترین خطا زمانی رخ می‌دهد که بیشترین وابستگی آماری دادگان در زیر فضای Rm گروه هدف c پیدا شود. از این شیوه به عنوان شرط بیشترین وابستگی یاد می‌شود. یکی از روش‌های رایج برای بررسی مفهوم بیشترین وابستگی، روش بیشترین ارتباط است که مقصود آن بالاترین ارتباط هر ویژگی با گروه هدف c می‌باشد. بطور عام، ارتباط برحسب همبستگی و یا اطلاعات متقابل دو متغیر معرفی می‌شود. اطلاعات متقابل دو متغیر x و y، بر حسب توابع چگالی احتمال بصورت زیر تعریف می‌شود:
5196205-1905(3-6)
4000020000(3-6)
IX,Y=xyp(X,Y)log2p(X,Y)pYp(X)
در انتخاب ویژگی بر اساس بیشترین ارتباط، بیشترین اطلاعات متقابل I(xi,c) بین ویژگی‌های منتخب xi گروه هدف c صورت می‌گیرد که مبین بیشترین وابستگی ویژگی به هدف مربوط می‌باشد. در روش‌های جستجوی متوالی، m بهترین ویژگی انفرادی، یعنی آن‌هایی که بیشترین مقدار وابستگی را دارند به عنوان ویژگی‌های منتخب برگزیده می‌شوند. ولی همواره ترکیبی از بهترین ویژگی‌های منفرد به عنوان یک زیرمجموعه بهینه نیست، به عبارت دیگر m بهترین ویژگی همیشه بهترین m ویژگی نیستند. از اینرو، در کنار بیشترین همبستگی ویژگی‌ها با گروه هدف c، روش هایی جهت کاهش افزونگی وجود دارد که ویژگی هایی با کمترین افزونگی را برمی‌گزیند. لذا روش انتخاب ویژگی با معیار بیشترین وابستگی و کمترین افزونگی، یکی از روش‌هایی است که مبتنی بر سه اصل بیشترین وابستگی، بیشترین ارتباط و کمترین افزونگی بنا شده است. بر اساس اطلاعات متقابل بین دو نمونه، هدف از انتخاب ویژگی با بیشترین وابستگی به هدف گروه c، یافتن یک مجموعه ویژگی S با m عضو است که بطور مشترک بیشترین وابستگی را به هدف مربوطه داشته باشد. از دید ریاضی این مفهوم به شکل زیر بیان می‌شود]31[:
5029584-1609(3-7)
4000020000(3-7)
max DS,c, D=I(xi,i=1,…,m;c)
هنگامی که m برابر 1 باشد، مساله به یافتن ویژگی تبدیل می‌شود که Ixj,c,(I≤j≤M) را بیشینه کند و زمانی که m بزرگتر از 1 باشد، یک روش جستجوی ترتیبی ساده می‌تواند افزودن یک متغیر در هر لحظه باشد. در حالتی که مجموعه شامل m-1 ویژگی Sm-1 دردست باشد، m امین ویژگی بصورت ویژگی‌ای که بیشترین افزایش را در I(Sm,c) ایجاد می‌کند، تعریف می‌شود:
ISm,c=Smcp(Sm,c)log2p(Sm,c)pSmp(c)
=Smxmccp(Sm-1,xm,c)log2p(Sm-1,xm,c)pSm-1,xmp(c)
510640433301(3-8)
4000020000(3-8)
=…p(x1,…,xm,c)log2p(x1,…,xm,c)p(x1,…,xm)p(c)
51003641336040(3-9)
4000020000(3-9)
از آنجایی‌که تخمین دقیق از توابع چگالی چند متغیره p(x1,…,xm) و p(x1,…,xm,c) بدلیل کافی نبودن تعداد نمونه‌ها و دشواری محاسبه ابعاد بالای ماتریس کوواریانس، مشکل است، بنابراین بجای استفاده از بیشترین وابستگی از معیار بیشترین ارتباط استفاده می‌کنیم. این معیار، DS,c را با استفاده از میانگین مقادیر اطلاعات متقابل میان ویژگی‌های انفرادی xi و گروه c تخمین می زند:
max DS,c, D=1Sxi∈SI(xi,c)
51034061323975(3-10)
4000020000(3-10)
ویژگی‌هایی که براساس بیشترین ارتباط انتخاب می‌شوند دارای افزونگی بالایی هستند، یعنی وابستگی میان آن ها زیاد است. هنگامی که دو ویژگی به شدت به هم وابسته باشند، در صورت حذف یکی از آن‌ها قدرت مجزاسازی مربوط به آن ها تغییر زیادی نخواهد کرد]37[. بنابراین معیار کمترین افزونگی برای انتخاب ویژگی‌های مستقل بصورت زیر است:
minRS, R=1S2xi,xj∈SI(xi,xj)
5103702377190(3-11)
4000020000(3-11)
برای ترکیب D و R از عملگر ΦD,R استفاده کرده و در ساده ترین حالت داریم:
5110642241300(3-12)
4000020000(3-12)
max ΦD,R, Φ=D-R
max ΦD,R, Φ=D/R
در عمل از روش‌های جستجوی ترتیبی می توان به‌منظور انتخاب ویژگی‌های زیربهینه منتخب توسط عملگر Φ استفاده کرد. اگر فرض شود که مجموعه ویژگی Sm-1 از مجموعه X انتخاب شده و هدف انتخاب ویژگی m ام باشد، آنگاه این ویژگی باید تابع Φ0 را بیشینه کند:
510393813970(3-13)
4000020000(3-13)
maxxj∈X-Sm-1Ixj;c-1m-1xi∈Sm-1I(xj,xi)
3-8- الگوریتم فاخته COAالگوریتم فاخته یکی از جدیدترین و قوی ترین روش‌های بهینه سازی تکاملی می باشد که تا کنون معرفی شده است. الگوریتم فاخته با الهام از روش زندگی پرنده‌ای به نام فاخته است که در سال 2009 توسط شین اویانگ ودب ساش، توسعه یافته است. این الگوریتم توسط پرواز levy به جای پیاده روی ایزوتروپیک تصادفی ساده توسعه یافته است. الگوریتم فاخته بعدها در سال 2011 توسط رامین رجبیون به طور کامل با جزئیات بیشتر مورد بررسی قرار گرفت]30[.
اکثر پرندگان لانه‌های خود را به صورت جدا شده، نامعلوم و مستتر در پوشش گیاهی ایجاد می‌کنند تا از شناسایی توسط شکارچیان جلوگیری نمایند.در این میان برخی از پرندگان خود را از دردسر هر گونه لانه سازی و وظایف والدین رهانیده و به نوعی زیرکی جهت پرورش جوجه های خود متوسل شدند. این پرندگان هرگز برای خود لانه نمی‌سازند و به جای آن تخم‌های خود را در داخل لانه سایر انواع پرندگان قرار داده و صبر می‌کنند تا آنها در کنار تخم‌های خود به تخم‌های این پرندگان نیز رسیدگی نمایند.
فاخته مشهورترین پرنده‌ای می‌باشد که به نوعی یک متخصص در زمینه فریبکاری است. فاخته به جای ساختن لانه و تخم‌گذاری در لانه خود،لانه یک پرنده را انتخاب کرده و یکی از فاخته‌ها لانه های انواع پرنده ها را آلوده به تخم خود می‌کنند و این کار را با دقت و با تقلید از رنگ و الگوی تخم‌های موجود در هر لانه انجام می‌دهند تا تخم‌های جدید لانه شبیه تخم های تخم‌های پرنده میزبان را از بین می‌برد و تخم خود را لابه لای تخم‌های آن پرنده قرار می‌دهدو از آن محل دور می‌شود. با این عمل نگهداری تخم خود را به پرنده میزبان واگذار می‌کند.کل این فرآیند به زحمت 10ثانیه طول می‌کشد.‌ فاخته لانه های انواع پرندگان را برای این کار انتخاب می‌کند و این کار را با دقت و با توجه به رنگ و الگوی تخم‌های هر لانه انجام می‌دهد تا تخم‌های جدید شبیه تخم‌های قبلی لانه باشند. هر‌گروه‌ از فاخته‌ها،روی میزبان خاصی تخصص می‌یابند.ثابت شده که هر گروه متخصص از فاخته ها به صورت ژنتیکی با گروه دیگر اختلاف دارند.در این بین برخی پرندگان میزبان تخم‌های فاخته را در لانه خود تشخیص داده و تخم‌های فاخته را بیرون می‌اندازند و برخی لانه را ترک کرده و یک لانه جدید می‌سازند.فاخته‌ها تقلید خود را در لانه میزبان بهبود می‌بخشند و پرندگان میزبان هم روش شناسایی تخم‌های بیگانه را یاد می‌گیرند.این تلاش و مبارزه برای بقا بین پرندگان مختلف و فاخته ها مدام و پیوسته است.
جوجه‌های فاخته زودتر از تخمهای پرنده میزبان بیرون می‌آیند و زودتر هم رشد می‌کنند. در اکثر موارد جوجه‌ی فاخته تخم‌ها و یا جوجه‌های پرنده میزبان را از لانه بیرون می‌اندازند. این مساله کاملا غریزی می باشد.
3-8-2- جزییات الگوریتم بهینه‌سازی فاختههمانند سایر الگوریتم‌های تکاملی COA هم با جمعیت اولیه کار خود را شروع می‌کند و جمعیتی متشکل از فاخته‌ها. این جمعیت از فاخته‌ها تعدادی تخم دارند که آنها را در لانه تعدادی پرنده میزبان خواهند گذاشت. تعدادی از این تخم‌ها که شباهت بیشتری به تخم‌های پرنده میزبان دارند شانس بیشتری برای رشد و تبدیل شدن به فاخته بالغ را خواهند داشت. سایرتخم‌ها توسط پرنده میزبان شناسایی شده و از بین میروند. میزان تخم‌های رشد کرده، مفید بودن لانه را نشان میدهد. هر چه تخم‌های بیشتری در یک ناحیه قادر به زیست باشند و نجات یابند به همان اندازه سود (تمایل) بیشتری به آن منطقه اختصاص می‌یابد. بنابراین موقعیتی که در آن بیشترین تعداد تخم‌ها نجات یابند پارامتری خواهد بود که COA قصد بهینه سازی آن را دارد.

230505097790شروع
00شروع

4105275346075002733675346075002733675257175003457575476250تعیین شعاع تخمگذاری برای هر فاخته
00تعیین شعاع تخمگذاری برای هر فاخته
2085975476250تعیین پارامترها و ورودی ها
00تعیین پارامترها و ورودی ها
2085975933450تخم گذاری در لانه های مختلف
00تخم گذاری در لانه های مختلف
3457575933450حرکت تمامی فاخته ها به سمت بهترین محل
00حرکت تمامی فاخته ها به سمت بهترین محل
34575751390650مشخص نمودن جوامع فاخته ها
00مشخص نمودن جوامع فاخته ها
20859751390650بعضی از تخم ها کشته یا از بین می روند
00بعضی از تخم ها کشته یا از بین می روند

410527533464500273367533464500
410527526987500273367526987500
1609725461645خیر
00خیر
1962150290195جمعیت از ماکزیموم مقدار کوجکتر است؟
00جمعیت از ماکزیموم مقدار کوجکتر است؟
410527520447000273367520447000
171450027495500171450027495500
2790825237490بله
00بله
41052751122045001714500417195002733675283845002028825626745محاسبه سود (چک نمودن احتمال بقا هر تخم)
00محاسبه سود (چک نمودن احتمال بقا هر تخم)
1714500487045004105275417195003438525741045پرورش تخم ها
00پرورش تخم ها
343852536195یافتن لانه ها با بهترین نوع زیست
00یافتن لانه ها با بهترین نوع زیست
106680036195از بین بردن فاخته ها در نواحی مختلف
00از بین بردن فاخته ها در نواحی مختلف

273367548514000
198120029845شرط توقف برقرار است؟
00شرط توقف برقرار است؟

347662515240002038350328930بله
00بله
372427552705خیر
00خیر

27336754445002305050138430توقف
00توقف

شکل 3-8 : فلوچارت الگوریتم بهینه سازی فاخته]30[.
فاخخته‌ها برای نجات تعداد بیشتری از تخم‌های خود دنبال بهترین منطقه می‌گردند.پس از انکه جوجه ها از تخم درامدندو بالغ شدند جوامع و گروه‌هایی تشکیل می‌دهند.هر گروه محل سکونت خود را برای زندگی دارد.تمام گروه‌ها به سمت بهترین منطقه مهاجرت می‌کنند و هر گروه نزدیک بهترین منطقه ساکن می شوند.شعاع تخم‌گذاری فاخته در بهترین منطقه فعلی با توجه به در نظر گرفتن تعداد تخم‌هایی که هر فاخته می‌گذارد و فاصله فاخته‌ها از منطقه بهینه فعلی شکل می‌گیرد.سپس فاخته ها در لانه های مو جود در این شعاع تخم‌گذاری می‌کنند.این فرآیند تا رسیدن به بهترین محل تخم‌گذاری ادامه می‌یابد.محل بهینه جایی است که بیشترین تعداد فاخته در آن مکان گرد می‌آیند.]30[.
3-8-2-1- تولید محل‌های سکونت اولیه فاخته‌ها (جمعیت اولیه‌ی جواب‌های کاندید)برای حل یک مساله بهینه‌سازی لازم است تا مقادیر متغیر‌های مساله به فرم یک آرایه شکل گیرند. دراین آرایه‌ها با نام‌های کروموزوم و موقعیت ذرات مشخص می‌شوند. ولی در الگوریتم بهینه‌سازی فاخته این آرایه habitat یا محل سکونت نام دارند.
در یک مساله بهینه‌سازی Nvar بعدی یک habitat آرایه 1*Nvar خواهد بود که موقعیت فعلی زندگی فاخته‌ها را نشان می‌دهد. این آرایه به شکل زیر تعریف می‌شود:
50755556867(3-14)
020000(3-14)

میزان مناسب بودن (یا مقدار سود) در habitat فعلی با ارزیابی تابع سود fp) )در habitat به دست می آید. بنابراین:
496769326242(3-15)
020000(3-15)

همانطور که دیده می شود COA الگوریتمی است که تابع سود را ماکزیمم می‌‌کند. برای استفاده از COA برای حل مسایل کمینه‌سازی کافی است یک علامت منفی در تابع هزینه ضرب کنیم. برای شروع الگوریتم بهینه‌سازی یک ماتریس habitat به سایز Npop*Nvar تولید می‌شود. سپس برای هر کدام از این habitatها تعدادی تصادفی تخم تخصیص می‌یابد. در طبیعت هر فاخته بین 5 تا 20 تخم می‌گذارد. این اعداد به عنوان حد بالا و پایین تخصیص تخم به هر فاخته در تکرار‌های مختلف استفاده می‌شود. دیگر عادت هر فاخته حقیقی این است که آن در یک دامنه مشخص تخم‌های خود را می‌گذارند که به آن حداکثر دامنه تخم‌گذاری (ELR) گفته می‌شود. در یک مساله بهینه‌سازی ‌هر متغیر دارای حد بالا varhi و حد پایین varlow است که هر ELRبا استفاده از این حدود قابل تعریف خواهد بود. ELR متناسب است با تعداد کل تخم‌ها، تعداد تخم‌های فعلی فاخته و همچنین حد بالا و پایین متغیر‌های مساله. بنابراین ELR به صورت رابطه زیر تعریف می‌شود:
5351780141738(3-16)
020000(3-16)

آلفا متغیری است که حداکثر مقدار ELR تنظیم می‌شود.
3-8-2-2- روش فاخته‌ها برای تخم‌گذاریهر فاخته به صورت تصادفی تخم‌هایی را در لانه پرندگان میزبان که در ELR خود قرار دارد می‌گذارد (شکل 3-8). وقتی تمام فاخته‌ها تخم‌های خود را گذاشتند برخی از تخم‌ها که شباهت کمتری به پرنده میزبان دارند شناسایی شده و از لانه بیرون انداخته می‌شود. بنابراین بعد از هر تخم‌گذاری p% از تمام تخم ها (معمولا 10%)که مقدار تابع سود آنها کمتر است نابود می‌شوند. بقیه جوجه‌ها در لانه‌های میزبان تغذیه شده و رشد می‌کنند.
وقتی جوجه فاخته‌ها از تخم در می‌آیند تخم‌های خود پرنده میزبان را از لانه بیرون پرت می‌کنند و اگر جوجه‌های پرنده میزبان زودتر از تخم خارج شده باشند جوجه فاخته بیشترین مقدار غذا را که پرنده میزبان ‌‌‌ می‌آورد خورده (بدن 3 برابر بزرگتری که دارد بقیه جوجه ها را کنار می گذارد) و پس از چند روز جوجه های خود پرنده میزبان از گرسنگی می‌میرند و فقط جوجه فاخته زنده می‌ماند.

شکل 3-9: شعاع تخم‌گذاری فاخته ها، ستاره قرمز در مرکز داره سکونت فعلی فاخته ها با 5 تخم می‌باشد. ستاره های صورتی آشیانه های جدید تخم‌ها می‌باشد]30[.
3-8-2-3- مهاجرت فاخته‌هاپس از بزرگ شدن فاخته‌ها مدتی در آن محیط زندگی می‌کنند ودر زمان تخم‌گذاری به habitatهای بهتر که در آنجا شانس زنده ماندن بیشتر است، مهاجرت می‌کنند. پس از تشکیل گروه‌های فاخته در مناطق مختلف زیست کلی (فضای جستجوی مساله) گروه دارای بهترین موقعیت به عنوان نقطه هدف برای سایر فاخته‌ها جهت مهاجرت انتخاب می‌شود.
هنگامی که فاخته‌های بالغ در اقصی نقاط محیط زیست زندگی می‌کنند، تشخیص اینکه هر فاخته به کدام گروه تعلق دارد کار سختی است. برای حل این مشکل،‌گروه‌بندی فاخته‌ها توسط روش کلاس بندی k-means انجام می‌شود (یک k بین 3 تا 5 معمولا کفایت می کند). حال که گروه‌های فاخته تشکیل شدند سود میانگین گروه محاسبه می‌شود تا بهینگی نسبی محل زیست آن گروه به دست آید سپس گروهی که دارای سود (بهینگی) باشد به عنوان گروه هدف انتخاب و در آن گروه موقعیت بهترین فاخته را به دست آورده می‌شود و همه‌ گروه‌ها به سمت آن فاخته مهاجرت می‌کنند. شکل (3-9)مهاجرت فاخته‌ها را نشان می‌دهد.

شکل 3-10 : مهاجرت فاخته‌ها به سمت Habitat هدف ]30[.
گام مهاجرت به سمت نقطه هدف فاخته‌ها تمام مسیر را به سمت محل هدف طی نمی‌کنند. انها فقط قسمتی از مسیر را‌ طی کرده و در آن مسیر هم انحرافی دارند.‌ این نحوه حرکت را در شکل 3 به وضوح مشاهده می‌شود. همان طور که از شکل معلوم است هر فاخته فقط λ% از کل مسیر را به سمت هدف ایده ال فعلی را طی می‌کند و یک انحراف ϕ رادیان نیز دارد. این دو پارامتر به فاخته‌ها کمک می‌کند تا محیط بیشتری را جستجو کند. λ عددی تصادفی بین 0 و 1ست و ϕ عددی بین -π6,π6 می باشد. وقتی تمام فاخته‌ها به سمت نقطه هدف مهاجرت کردند و نقاط سکونت جدید هر کدام مشخص شد، هر فاخته صاحب تعدادی تخم می‌شود. با توجه به تعداد تخم هر فاخته یک ELR برای آن مشخص می‌شود و سپس تخم گذاری شروع می‌شود. فرمول عملگر مهاجرت در الگوریتم بهینه‌سازی فاخته به صورت رابطه زیر است.
5401339-3811(3-17)
00(3-17)

F پارامتری است که باعث انحراف می‌شود.
3-8-2-4- از بین بردن فاخته‌های قرار گرفته در مناطق نا‌مناسببا توجه به این واقعیت که همیشه تعادلی بین جمعیت پرندگان وجود دارد عددی مثل Nmax حداکثر تعداد فاخته‌هایی را که می توانند در یک محیط زندگی کنند کنترل و محدود می‌کند. این تعادل به دلیل محدودیت‌های غذایی، شکار شدن توسط شکارچیان و نیز عدم امکان پیدا کردن لانه‌های مناسب برای تخم‌ها وجود دارد.
3-8-2-5- همگرایی الگوریتمپس از چند تکرار تمام جمعیت فاخته‌ها به یک نقطه بهینه با حداکثر شباهت تخم‌ها به تخم‌های پرندگان میزبان و همچنین به محل بیشترین منابع غذایی می‌رسند. این محل بیشترین سود کلی را خواهد داشت و در آن کمترین تعداد تخم‌ها از بین خواهند رفت. بنابراین گام‌های اصلی COA را می‌توان به صورت زیر بیان نمود:
گام1: مکان‌های سکونت فعلی فاخته ها را به صورت تصادفی مشخص نمایید.
گام 2: تعدادی تخم‌ها را به هر فاخته اختصاص دهید.
گام 3: شعاع تخم‌گذاری هر فاخته را تعیین نمایید.
گام 4: فاخته‌ها در لانه‌های میزبانانی که در شعاع تخم‌گذاری آن ها قرار دارند، تخم‌گذاری می کنند.
گام 5: تخم‌هایی که توسط پرندگان میزبان شناسایی می شوند از بین می‌روند.
گام 6: محل سکونت فاخته‌های جدید را ارزیابی نمایید.
گام 7: ماکزیمم تعداد فاخته‌هایی که در هر مکان امکان زندگی دارند را مشخص نمایید و آنهایی را که در مکان‌های نامناسب هستند از بین ببرید.
گام 8: فاخته‌ها را با استفاده از روش k-means خوشه‌بندی و بهترین گروه فاخته را به عنوان محل سکونت هدف مشخص نمایید.
گام 9: جمعیت جدید فاخته‌ها به سمت مکان هدف حرکت می‌کند.
گام 10: اگر شرط توقف برقرار گردیده توقف، در غیر این صورت به گام 2 بروید]30[.
3-9- گسسته‌‌سازی دودویی الگوریتم فاختهدر این بخش جهت تبدیل COA پیوسته به فضای دودویی، عملگر مهاجرت COA به صورت زیر بازتعریف می شود. XGoal و XCurrenPostion به ترتیب نقطه هدف جاری و موقعیت جاری یک فاخته در جمعیت می‌باشد. ما موقعیت بعدی فاخته (XNextHabitat) را به شکل زیر محاسبه می‌کنیم:
529433537465(3-18)
020000(3-18)

برای این که موقعیت جدید برای فضای دودویی مناسب باشد از تابع سیگموید رابطه زیر برای نگاشت XNextHabitat به محدوده 0 و 1 به شکل زیر استفاده کردیم.