توضیحات
Genetic algorithm-based method for mitigating label noise issue in ECG signal classification
یافتن بیت هایی خاص از سیگنال های ECG
هدف از این برنامه پیدا کردن بیت هایی از سیگنال های ECG می باشد که به درستی برچسب زده شده اند تا محققان با استفاده از داده های صحیح به تحقیق در مورد سیگنال های ECG بپردازند.
ورودی در این برنامه سیگنال های مربوط به 100.dat در پایگاه داده MIT-BIH arrhythmia می باشد.
الگوریتم به کار رفته : NSGA2
کدینگ کروموزوم:
کروموزوم ما شامل مقادیر 0 و 1 به تعداد بیت های برچسب دار (cardiologist ها این برچسب ها را ایجاد کرده اند.)
ما برای ورودی از 10000 بیت اول سیگنال های 100.dat استفاده کردیم که از این تعداد تنها 35 بیت دارای برچسب می باشند. پس اندازه کروموزوم ما به اندازه 35 می باشد.
در صورتی که کروموزوم مقدار 0 داشته باشد یعنی آن بیت دارای برچسب معتبر و در غیر این صورت دارای برچسب نامعتبر هست و باید حذف شود.
تابع برازندگی از نوع دوهدفه می باشد.
هدف اول: تعداد بیت های با برچسب غلط در هر کروموزوم را به ما می دهد.
هدف دوم: براساس کلاستربندی KNN به دست می آید. پس از کلاستر بندی بیت های دارای برچسب به 6 کلاس N،A،V،RB،L و LB ( برای سادگی محاسبات این کلاسها را به ترتیب از 1 تا 6 شماره گذاری کردم). در صورتی که این کلاس بندی درست انجام شده باشد مقدار 1 و در غیر اینصورت مقدار صفر میگیرد. و سپس میانیگن این اعداد به عنوان مقدار تابع هدف دوم قرار می گیرد.
برای استفاده از تابع KNNClassifier با استفاده از اسکریپت EXtractFeature به ازای تمام بیت های موجود (10000) 5 ویژگی استخراج کردم و در ماتریس Feature ذخیره کردم. که این ماتریس در تابع KNNClissifier جهت کلاس بندی بیت ها فراخوانی می شود.
اسکریپت initData به ایجاد مقادیر برچسب ها، مقادیر سیگنال، تعداد برچسب ها می پردازد. این اسکریپت فقط یکبار نیاز به اجرا دارد. و نتایج حاصل در ماتریس data ذخیره شده است. که من اینکارو کردم. اما شما هم میتوانید اجرا کنید.
برای اجرای برنامه شما کافیست اسکریپت NSGA|| را اجرا کنید. بقیه توابع از قبل اجرا شده اند.
نتایج برنامه در pareto.pos قرار می گیرد. و در انتهای برنامه نمایش داده می شود. ضمنا پس از آن Annotation های معتبر هم نشان داده می شود.
اما برای تست روند برنامه می توانید اسکریپت های ExtarctFeature و initData و test_with_2dرا هم اجرا کنید.
نتایج اجرای اسکریپت های initData: نقاط قرمز بیت های برچسب دار
نتایج اجرای ExtractFeature ( تعداد زیادی ویژگی استخراج کردم اما تنها 5 مورد را جهت استفاده در تابع KNNClissifier به کار بردم.
نتایج اجرای test_with_2d
K=1 همسایه نزدیک
K=3 همسایه نزدیک
K=5 همسایگی
لازم به ذکر است به دلیل اینکه ما فقط 35 بیت برچسب دار در 10000 سیگنال اول داشتیم. این 35 بیت فقط دارای برچسب های N و A بودند. به همین دلیل عملا ما کلاس های دیگر را نداریم. به همین دلیل در شکل های 6 و 7 و 8 تنها دو رنگ ابی و قرمز مشاهده می کنید.
موفق باشید.
کلید واژه : قلب، بیولوژیک , الگوریتم ژنتیک, پروژه متلب,شبیه سازی بامتلب
ECG signal classification, Genetic algorithms, Mislabeling issue, Multiobjective optimization, Training sample validation
شبیه سازی مقاله Genetic algorithm-based method for mitigating label noise issue in ECG signal classification
توسط کارشناسان سایت متلبی پیاده سازی گردیده و به تعداد محدودی قابل فروش می باشد.
سفارش انجام پروژه مشابه
درصورتیکه این محصول دقیقا مطابق خواسته شما نمی باشد،. با کلیک بر روی کلید زیر پروژه دلخواه خود را سفارش دهید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.