امیررضا الستی - 9812762485
همانطور که میدانید پروژه بر روی سیگنال های مغز میباشد که باید تشنج را تشخیص بدهد. ابتدا با استفاده از کتابخانه numpy و matplotlib داده ها را بررسی میکنیم همانطور که مشخص است تفاوت های زیادی بین سیگنال مغز فردی که تشنج دارد با فردی که تشنج ندارد وجود دارد مثلا چگالی سیگنال یا همان زیادی رنگ آبی تعداد پیک ها و تعداد گذر از منفی و مثبت ابتدا ویژگی های آماری را بدست میاوریم با کمک کتابخانه numpy و سپس با استفاده از کتابخانه matplotlib نمودار های مختلفی را رسم میکنیم.
ویژگی های آماری شامل
- variance
- mean
- max
- min
- median
- std
- skew
- kurtosis
چولگی معیاری برای عدم تقارن توزیع احتمال یک متغیر تصادفی با ارزش واقعی در مورد میانگین آن است. مقدار چولگی می تواند مثبت یا منفی یا حتی تعریف نشده باشد. یک توزیع یا مجموعه داده، اگر در سمت چپ و راست نقطه مرکزی یکسان به نظر برسد، متقارن است. یک توزیع در صورتی که در سمت راست نقطه مرکزی طولانی تر از سمت چپ باشد به سمت راست منحرف می شود. یک توزیع اگر در سمت چپ نقطه مرکزی طولانی تر از سمت راست باشد به سمت چپ منحرف می شود. کورتوز معیاری است که نشان می دهد داده ها نسبت به توزیع نرمال دارای دم سنگین یا سبک هستند. به این معنا که مجموعه دادههایی با کشیدگی بالا تمایل به دنبالههای سنگین یا پرت دارند. مجموعههای دادهای با کشیدگی کم تمایل به دم سبک یا فقدان نقاط پرت دارند. یک توزیع یکنواخت حالت شدید خواهد بود.
با استفاده از این ویژگی ها دقت مدل ما به 96 درصد رسید.
البته در صورت normalize کردن داده ها اگر قسمت normalize را کامنت کنیم و فقط x,y را لود کنیم میبینیم در بضی جاها مانند svc اول دقت به میزان بسیار زیادی کم میشود و به 70% میرسد و یا در مدل سازی های اخر دقت recall و precision به میزان زیادی کم میشود.
حال با استفاده از fft در نامپای میتوانیم سیگنال ها را به فرکانس بدست آوریم و با استفاده از این فرکانس ها ویژگی های آماری را بدست آوریم.
- fft : fast fourier transform
- fft2 : 2d fast fourier transform
- fftshift : shift zero-frequency component to the center of the spectrum توضیحات کامل در کد داده شده و مشاهده میکنیم که دقت مدل ها با افزودن این ویژگی ها افزایش خوبی دارد و حتی در random forest به میزان 99 درصد رسید.
یک عملگر محلی است که برای استخراج ویژگی های بافت از یک تصویر استفاده می شود. این یک نوع توصیفگر بصری است که برای طبقه بندی در بینایی کامپیوتری استفاده می شود. اگر چند تا از سیگنال ها را پلات کنیم میبینیم استفاده از این ویژگی بسیار کاربردی است
ویژگی های ابتکاری مانند:
- zero crossing rate
- peak to peak
- power spectral density
- energy
توضیحات دقیق و کامل در کد موجود میباشد همچنین توضیحات مربوط به وارد کردن پارامتر های هر مدل نیز هست و پارامتر هایی که انتخاب شده همگی تست شده و بهترین ها انتخاب شده
در کل ویژگی های خوب ویژگی هایی هستند که وقتی آن ها را پلات میکنیم قسمت داده های 400 تا 500 که بیماران هستند به صورت واضح جدا شده باشند
ویژگی های دیگر نیز مانند mobilit complexity Delta Theta Alpha Beta Gamma و ... هستند که در این پروژه استفاده نشده اند ولی در پروژه های بعدی میتوان از آن ها استفاده کرد
نرمالایز کردن به روش های مختلف امتحان شد فقط روی random forest تاثیر داشت خیلی کم روی knn , svm تاثیر منفی داشت