وبلاگ

توضیح وبلاگ من

طراحی سیستم دسته‌بند فازی مبتنی بر بهینه سازی ازدحام ذرات برای تشخیص بیماری دیابت- قسمت ۱۶

 
تاریخ: 20-07-00
نویسنده: فاطمه کرمانی

TN

 

FP

 

C2

 

 

 

در ماتریس اغتشاش دودویی که در جدول (۲-۴) نشان داده شده کلاس‌های واقعی در سطرها قرار گرفته و کلاس‌های پیش بینی شده توسط دسته‌بند در ستون‌ها قرار می‌گیرد. با توجه به این ماتریس می‌توانیم صحت یک مدل دسته بندی را به روش زیر بیان کنیم:
(۲-۳۷)
در عمل دسته‌بندی مواردی وجود دارد که بیشتر نمونه‌ها مربوط به یک دسته می‌باشند. مثلاً در دسته‌بندی نمونه‌های مربوط به سرطان ممکن است تنها حدود پنج صدم داده‌های آموزش مربوط به بیماران سرطانی باشد در این حالت ممکن است دسته‌بند با اختصاص دادن تمام نمونه‌ها به دسته‌ای که بیشترین تکرار دارد نرخ صحت بسیار مطلوبی را ارائه دهد.لذا صحت یک مدل در چنین مواردی ارزیابی خوبی از مدل دسته‌بندی را ارائه نمی‌دهد.معیارهای حساسیت[۸۶] و دقت[۸۷] برای مواردی که نمونه‌ها در کلاس‌ها به صورت غیر متوازن پراکنده شده‌اند به صورت زیر تعریف می‌شوند.
دانلود پروژه
(۲-۳۸)  حساسیت
(۲-۳۹)  دقت
یکی دیگر از معیارهای دسته‌بند خوب سادگی و شفافیت آن و قابلیت تفسیر مناسب آن است. مدل‌های پیچیده دقت بالا و در نتیجه انحراف پایینی دارند. البته این مدل‌ها باعث به وجود آمدن پدیده‌ای به نام بیش برازش[۸۸] می‌شوند. بیش برازش یعنی مدل رو داده‌های آموزش دقت بالایی دارد ولی روی داده‌های جدید دقت پایینی دارد. به عبارت دیگر، مدل تعمیم پذیری[۸۹] کمی دارد.
علت اصلی وقوع بیش برازش این است که مجموعه آموزش علاوه بر شامل شدن اطلاعات قواعدی که در نگاشت ورودی به خروجی وجود دارد نمونه‌برداری اشتباه از ورودی و خروجی‌ها را نیز شامل می‌شود. یعنی قواعدی تصادفی فقط به خاطر اینکه نمونه‌های آموزشی خاصی انتخاب شدند وجود خواهند داشت [۲۱]. هنگامی که سعی می‌کنیم مدلی را بسازیم، مدل نمی‌تواند به ما بگوید کدامیک از قوانین واقعی و کدامیک از طریق نمونه‌برداری اشتباه حاصل شده است.
نقطه‌ای که آموزش متوقف می‌شود
خطای مجموعه اعتبار سنجی
خطای مجموعه آموزش
خطا
تعداد بروز رسانی
همان‌طور که در شکل (۲-۱۹) می‌بینیم، قبل از آغاز آموزش خطای مجموعه آموزش زیاد است این خطا در طول فرایند آموزش کاهش می‌یابد. برای اینکه بتوانیم تصمیم بگیریم که فرایند آموزش تا چه زمانی ادامه پیدا کند تا دسته‌بند دچار حفظ کردن نمونه‌های ورودی[۹۰] نشود و قدرت تعمیم دهی آن کاهش نیابد از مجموعه اعتبار سنجی استفاده می‌کنیم لذا آموزش را در نقطه‌ای که خطای مجموعه اعتبار سنجی به نقطه مینیمم خود می‌رسد (لحظه‌ای که خطای اعتبار سنجی شروع به افزایش می‌کند) متوقف می‌کنیم.
شکل ۲- ۱۹: بیش برازش [۱۰]

فصل سوم – روش تحقیق

 

۳-۱- مقدمه

همان طور که بیان شد روش‌های مختلفی برای دسته‌بندی نمونه‌های ورودی ارائه شده‌اند که با توجه به معیارهای ارائه شده برای برازش کارایی این روش‌ها، هر کدام از این روش‌ها دارای مزایا و معایبی هستند. به عنوان مثال روش دسته‌بندی شبکه عصبی دارای دقت بسیار خوبی می‌باشد در حالی که قابلیت تفسیر مناسبی را فراهم نمی‌آورد. یکی از روش‌هایی که هم دارای دقت دسته‌بندی مناسب و قابلیت تفسیر خوبی می‌باشد، روش دسته‌بندی مبتنی بر قانون است که دانش کشف شده را به صورت یک مجموعه قوانین در اختیار کاربر قرار می‌دهد. قابلیت تفسیر این روش‌ها وقتی بیشتر می‌شود که قوانین استخراج شده به شکل ترم‌های فازی بیان شوند [۸۶].
همچنین اشاره شد که روش‌های مختلفی از جمله الگوریتم ژنتیک و افراز فازی برای تعیین توابع عضویت و استخراج قوانین فازی وجود دارد. یکی از روش‌های بهینه‌سازی که در سالیان اخیر مورد استفاده قرار گرفته و نتایج مناسبی را به همراه داشته الگوریتم بهینه‌سازی ازدحام ذرات می‌باشد.
مسئله تعیین توابع عضویت فازی و استخراج قوانین فازی را می‌توان یک مسئله‌ی بهینه‌سازی ترکیبی در نظر گرفت که هدف یافتن دنباله‌ای از مقادیر برای خصیصه‌های مجموعه داده‌های ورودی است به طوری که سیستم دارای بیشترین دقت دسته‌بندی باشد. برای حل این مسائل مکاشفه بهینه‌سازی ازدحام ذرات ابتدا مسئله‌ی بهینه‌سازی ترکیبی را به یک گراف نگاشت می‌کند. سپس با مشخص کردن هدف مورد جستجو در گراف (کلاس یا دسته)، ذرات در فضای گره‌های گراف به جستجو می‌پردازند و بهترین مسیر را بر اساس هدف خواسته شده پیدا می‌کنند. بنابراین هر ذره به صورت اولیه مقادیر تصادفی برای هر یک از گره‌ها را انتخاب می‌کند (هر یک از گره‌ها در سیستم فازی می‌توانند مشخص کننده پارامترهای توابع عضویت و قوانین سیستم فازی باشند) و به مرور با همکاری میان ذرات، مسیر مناسب (بهترین ذره) انتخاب شده و مسیر انتخاب شده توسط این ذره به عنوان یک سیستم فازی دسته‌بندی( توابع عضویت و قانون) ارائه می‌شود.

شکل ۳- ۱: نمای کلی مدل پیشنهادی برای واکشی سیستم فازی
مدل پیشنهادی شامل سه بخش مجزا می‌باشد: پیش پردازش داده‌های قطعی اولیه ، تولید قوانین اگر-آنگاه فازی و موتور استنتاج فازی برای پیش‌بینی متغیر هدف نمونه‌های آزمون. قبل از این که سیستم فازی را ایجاد کنیم ابتدا نمونه‌هایی که دارا مقادیر نا مرتبط هستن (از لحاظ منطقی امکان پذیر نمی‌باشند) را یافته و توسط الگوریتم k mean نمونه‌های دارای مقادیر مفقود[۹۱] نباشند را خوشه بندی می‌کنیم، در انتها مقادیر مفقود را با مقدار متناظر نزدیک‌ترین مرکز خوشه به آن نمونه جایگزین می‌شود. در بخش تولید قوانین فازی، یک الگوریتم مبتنی بر بهینه‌سازی ازدحام ذرات مجموعه داده‌های ورودی را گرفته و یک مجموعه قوانین فازی بر می‌گرداند. شکل (۳-۱) مدل پیشنهادی برای اکتشاف توابع عضویت و قوانین فازی از داده‌های ورودی را نشان می‌دهد. در این مدل ابتدا داده‌های حقیقی توسط نمودارهای مثلثی و ذوزنقه‌ای به ترم‌های فازی تبدیل می‌شوند. سپس با بهره گرفتن از یک الگوریتم مبتنی بر بهینه‌سازی ازدحام ذرات یک مجموعه قوانین فازی استخراج می‌شود. قوانین مربوط به هر کلاس جداگانه کشف می‌شود. در مرحله آزمون، یک موتور استنتاج فازی توابع عضویت، قوانین فازی و نمونه‌های آزمون را گرفته و کلاس مربوطه را بر می‌گرداند.

۳-۲- تبدیل داده‌های حقیقی به ترم‌های فازی[۹۲]

در فرایند تصمیم‌گیری برای تسهیل در انتخاب یک گزینه مناسب از میان راه‌ حل ‌های موجود، ابتدا اعداد حقیقی تبدیل به ترم‌های فازی می‌شوند. در این صورت کاربر درک شفاف‌تری از سطح مقدار یک صفت نسبت به دامنه‌ی مقادیر آن صفت خواهد داشت [۸۶].
به عنوان مثال اگر میزان حقوق یک فرد به صورت یک عدد حقیقی بیان شود، کاربر نمی‌تواند در مورد زیاد و یا کم بودن آن قضاوت کند، مگر آن که دامنه‌ی صفت حقوق را مشاهده کند و سپس در مورد آن نظر دهد. اما بیان خصیصه‌ها به صورت ترم‌های فازی به کاربر کمک می‌کند تا بدون توجه به مقادیر دامنه‌ی متغیر، به صورت تقریبی در مورد مقدار آن قضاوت کند.
ساده‌ترین روش برای تبدیل اعداد حقیقی به ترم‌های فازی، استفاده از نظرات افراد خبره است. این روش همیشه مقدور نیست، چرا که فرد خبره همیشه در دسترس نیست. روش دیگر استفاده از توابع عضویت[۹۳] است. توابع عضویت متعددی وجود دارند که از جمله آن‌ ها می‌توان به توابع عضویت مثلثی[۹۴] و ذوزنقه‌ای[۹۵] اشاره کرد. دامنه متغیر ورودی به k بازه‌ی مثلثی تقسیم می‌شود و هر بازه نشان دهنده‌ی یک مقدار بیانی است (شکل (۳-۲)). مقدار حقیقی متغیر ورودی به ترم زبانی تبدیل می‌شود که نزدیک‌ترین فاصله را با بازه‌ی مربوط به آن داشته باشد.

شکل ۳- ۲: توابع عضویت فازی (S:Small, MS: Medium Small, M: Medium, ML: Medium Large, L: Large)
در برخی از کارهای گذشته تعداد بخش‌های فازی متفاوتی برای مشخصه‌ های مختلف بکار رفته است، مشخصه‌ های مختلف ممکن است از انواع متفاوتی باشند (پیوسته، ترتیبی و نسبی). بنابراین فرض شده بکار بردن یک نوع افراز فازی با تعداد مقادیر زبانی یکسان برای تمام انواع صفات چندان مناسب نخواهد بود. از طرفی ممکن است بکار بردن مقادیر زبانی غیر یکسان برای صفت‌های مختلف باعث پیچیده‌تر شدن قوانین فازی تولید شده شود و معنی هر مقدار فازی در دامنه‌های متفاوت برای کاربر سیستم ملموس نخواهد بود. در این پایان‌نامه برای ساده کردن سیستم فازی تنها از سه مقدار فازی استفاده نمودیم.

شکل ۳- ۳: نمایش گرافیکی پارامترهای توابع عضویت پیشنهادی

۳-۳- تولید توابع عضویت و قوانین فازی با بهره گرفتن از الگوریتم بهینه‌سازی ازدحام ذرات

با فرض داشتن n خصیصه و k بازه فازی، می‌توان kn قانون فازی استخراج کرد. برای مسائل با ابعاد بزرگ، عملاً در نظر گرفتن این تعداد از قوانین فازی غیر ممکن و یا بسیار سخت است. یک راه‌حل ممکن برای غلبه بر این مشکل و کاهش تعداد قوانین کاندید استفاده از مجموعه فازی DC[96] می‌باشد. با بهره گرفتن از تابع عضویت که می‌تواند برای مجموعه فازی DC برابر یک باشد؛ قوانین استخراجی می‌توانند دارای طول متفاوتی باشند (تعداد ترم‌هایی که مقدار غیر DC دارند در یک قانون مشارکت دارند). شکل (۳-۳) فضای جستجو یک مسئله با چهار خصیصه ورودی و سه بازه فازی را نشان می‌دهد.

شکل ۳- ۴: نمایش گرافیکی فضای جستجو برای یک مسئله چهار بعدی با سه بازه فازی
هرچند با بهره گرفتن از مجموعه فازی DC می‌توان فضای جستجو را تا حد زیادی کاهش داد اما برای مسائل با ابعاد بالا همچنان مشکل ذکر شده وجود دارد [۸۷].
با توجه به کارایی الگوریتم بهینه‌سازی ازدحام ذرات برای حل مسائل بهینه‌سازی با ابعاد بالا، از این الگوریتم می‌توان برای استخراج قوانین فازی نیز به خوبی استفاده کرد. برای این منظور ذرات PSO نمونه‌های آموزشی را گرفته و با ایجاد ترم‌های متوالی قوانین حاکم بر این نمونه‌ها را استخراج می‌کنند. روال کلی الگوریتم ارائه شده به صورت شکل (۳-۵) می‌باشد.

۳-۳-۱- کدگذاری توابع عضویت فازی

ارائه سیستم‌های فازی (توابع عضویت و مجموعه قوانین) و تعریف یک تابع برازش مناسب دو موضوع مهم در طراحی دسته‌بند فازی می‌باشند. یکی از با اهمیت‌ترین مسائل در طراحی یک سیستم فازی با روش‌های بهینه‌سازی، تعیین استراتژی نمایش است. یک سیستم فازی تنها زمانی مشخص می‌شود که مجموعه قوانین و توابع عضویت مرتبط با مجموعه فازی تعیین شوند.
در الگوریتم بهینه‌سازی ازدحام ذرات ارائه شده هر ذره به طور هم‌زمان شامل پارامترهای توابع عضویت و مجموعه قوانین می‌شود. نقاط ممیز شناور برای نشان دادن پارامترهای توابع عضویت و مجموعه قوانین با اعداد گسسته نمایش داده می‌شوند.
همان طور که در شکل (۳-۳) نشان داده شده برای اینکه ورودی‌ها به صورت مجموعه فازی نمایش داده شوند از توابع عضویت مثلثی و ذوزنقه‌ای استفاده شده است که هر کدام با سه پارامتر (نقطه) نمایش داده می‌شوند.
برای نمایش هر متغیر ورودی به صورت مجموعه فازی نُه نقطه  نیاز است. در میان این نقاط اولین و آخرین نقطه ( و  ) مینیمم و ماکسیمم هر متغیر ورودی و ثابت هستند. باقی هفت نقطه که پارامترهای توابع عضویت هستند در بازه‌های مشخص شده‌ای حرکت می‌کنند. محدوده  در  ،  در  ،  در  ،  در  ،  در  ،  در  و  در بازه  تعیین می‌شود. با محدودیت‌های اعمال شده هر ذره در الگوریتم بهینه‌سازی ازدحام ذرات به صورت زیر نمایش داده می‌شود:


فرم در حال بارگذاری ...

« تاثیریکپارچه سازی زنجیره تامین بر عملکرد تجاری شرکت ها از طریق افزایش رقابت پذیری(شرکت های تولیدی قطعات خودرو)- قسمت ۷بررسی توزیع خدمات عمومی شهری و بازتاب فضایی آن از دیدگاه عدالت اجتماعی- قسمت ۷ »
 
مداحی های محرم