منبع مقاله درباره کاوي، الگوريتم، تشخيص

ز ديدگاه هاي موجود در آن را بپوشاند، مي توانيم تعريف زير را ارائه نماييم:?
داده کاوي فرآيندي است که در آن نظم حاکم بر مجموعه اي از داده هاي موجود کشف شده و در قالب يک مدل توصيف کننده ارائه مي گردد.?
کشف يا تخمين وابستگي ها در ميان داده ها و يا کشف مفاهيم جديد تنها بخشي از روال کلي است که توسط محققان، مهندسان و همه کساني که مراحل استاندارد داده کاوي را تا رسيدن به مدل توصيف کننده نهايي طي مي کنند، انجام مي شود. به عبارت ديگر فرآيند داده کاوي داراي مراحل مختلفي است که ?در ذيل به شرح کلي هر کدام از آنها مي پردازيم .[25]
1-3-2) بيان مسأله و فرمول بندي فرضيه?
در اين مرحله طراح مدل مجموعه متغيرهايي را که هدف از انجام فرآيند داده کاوي، پيدا کردن چگونگي وابستگي ميان آنهاست، تعيين مي کند. در صورت امکان شخص مزبور سعي در ارائه فرضيه (ارائه ساختار و مدل کلي پاسخ) در آغاز فرآيند داده کاوي مي نمايد. آنچه در اين مرحله حائز اهميت است تعامل نزديک دو فرد خبره مي باشد که يکي از آنها در دامنه مسأله اي که داده هاي مربوط به آن مورد کاوش قرار ميگيرد داراي خبرگي است و ديگري در علم داده کاوي. تعامل نزديک و مناسب دو فرد مزبور در اين مرحله سبب ارائه يک فرمول بندي مناسب جهت مسأله اي که داده کاوي سعي در تحليل آن خواهد داشت، مي شود.?
2-3-2) گردآوري داده?
در اين مرحله هدف تعيين نحوه و چگونگي توليد و گرد آوري داده هاي مورد کاوش مي باشد. به طور کلي دو وضعيت مشخص و مجزا وجود دارد. اولين وضعيت هنگامي است که فرآيند توليد داده در کنترل طراح مدل مي باشد. اين روش، آزمون طراحي21 شده ناميده مي شود. دومين وضعيت هنگامي است که شخص خبره نميتواند تأثيري در فرآيند توليد داده داشته باشد. اين وضعيت با نام رويکرد مشاهده اي22 شناخته مي شود. رويکرد مشاهده اي که گاهي توليد تصادفي داده نيز ناميده مي شود در بسياري از مسائل داده کاوي در نظر گرفته مي شود. به طور کلي هنگام جمع آوري داده، چگونگي توزيع داده هاي نمونه برداري شده کاملا نامشخص است و يا تنها به طور جزئي و ضمني مشخص مي باشد.
وجود دانش مربوط به چگونگي توزيع داده ها ميتواند در نتيجه نهايي داده کاوي تأثير به سزائي داشته باشد. اين تأثير ?هم در کيفيت مدل بدست آمده و همچنين در چگونگي تفسير آن وجود دارد. همچنين اينکه داده هاي?آموزشي23(داده هايي که در فرآيند داده کاوي جهت ساخت مدل و تنظيم آن مورد استفاده قرار مي گيرند)?و داده هاي آزمايشي24 (داده هايي که جهت تعيين کارآيي مدل بدست آمده و ارزيابي روش داده کاوي مورد استفاده قرار مي گيرند) داراي توزيع يکساني باشند نيز از اهميت ويژه اي برخوردار است. در صورت عدم يکسان بودن توزيع مزبور، نمي توان در يک مسأله واقعي از مدل بدست آمده در فرآيند داده کاوي استفاده? نمود.?
3-3-2) انجام پيش پردازش?
?داده ها معموال از پايگاه هاي داده اي موجود، مخازن داده ها و انبار اختصاصي جمع آوري مي شوند. اغلب مرحله پيش پردازش داده ها شامل حداقل دو مرحله معمول مي باشد. مراحل مزبور در ادامه توضيح داده ?شده اند.
4-3-2) تشخيص و حذف داده هاي زائد?
در مجموعه داده هايي که معموال جهت کاوش به الگوريتم داده کاوي ارائه مي شوند داده هايي وجود دارند?که در تناقض با داده هاي ديگر مي باشند. به طور معمول داده هاي مزبور نتيجه خطاهاي اندازه گيري، کد?کردن و يا ذخيره کردن هستند. گاهي اوقات هم اين داده ها مقاديري غير عادي هستند که منشاء کاملا?طبيعي دارند. نمونه هايي از مجموعه داده هاي مورد کاوش که شامل داده هاي زائد هستند مي توانند تأثير منفي قابل توجهي را در مدل توليدي الگوريتم داده کاوي داشته باشند. دو راه مي توان جهت برخورد با داده هاي زائد معرفي نمود:?
الف- تشخيص و حذف داده هاي زائد به عنوان بخشي از مرحله پيش پردازش.?
ب- ارائه مدلي مقاوم که نسبت به داده هاي زائد (نويزي) غير حساس باشد.?
نرمال کردن25، کد کردن26 و انتخاب ويژگي ها27?
پيش پردازش داده ها شامل مراحل مختلفي نظير نرمال و کد کردن متغيرها است. به عنوان مثال چنانچه دو ويژگي داشته باشيم که اولي تغييراتش در بازه [0,1] دومي در بازه [-0.001,1000] باشد، چگونگي تأثير اين دو ويژگي در مدل بدست آمده توسط الگوريتم داده کاوي يکسان نخواهد بود و اين اختلاف باعث تأثير منفي در کارآيي مدل نهايي مي گردد. به اين ترتيب توصيه مي شود که هميشه تمامي ويژگي ها?در يک بازه يکسان نرمال شوند تا از تأثير تفاوت بازه ها جلوگيري به عمل آيد. همچنين با توجه به?مسأله اي که قصد اعمال داده هاي آن را به الگوريتم داده کاوي داريم، گاهي اوقات با بکارگيري روش کد?کردن خاصي ميتوانيم ابعاد داده هاي ورودي را در مسأله مورد بررسي کاهش دهيم.
به عبارت ديگر تعداد ?ورودي ها را با توجه به يک روش کد کردن خاص مي توانيم کاهش دهيم. از آنجا که تعداد کم ورودي ها? هميشه اثري مهم در کاهش پيچيدگي مسأله و به تبع آن افزايش کارآيي الگوريتم داده کاوي در يافتن مدل نهائي مي شود، انتخاب روش کدکردني که بتواند باعث کاهش در تعداد ورودي هاي اعمالي به الگوريتم داده کاوي شود بسيار مورد توجه مي باشد. استفاده از دانش قبلي در هر کدام از انواع روش هاي پيش پردازش ذکر شده ميتواند در افزايش کارآيي فرآيند پيش پردازش نقش به سزائي داشته باشد.
5-3-2) برآورد مدل (کاوش داده)?
انتخاب و پياده سازي روش داده کاوي مناسب فرآيند مهمي است که در اين مرحله انجام مي شود. به طور کلي روش ها و الگوريتم هاي مختلفي جهت يادگيري و توليد يک مدل بر اساس داده هاي ورودي وجود دارند. به نوعي الگوريتم هاي مزبور را مي توان يک روال جستجو نيز در نظر گرفت. اين روال سعي در يافتن مدلي مي کند که به بهترين نحو داده هاي ورودي را پوشش دهد.?
بايستي توجه نمود که الگوريتم داده کاوي که در اين مرحله اجرا مي گردد، با توجه به ماهيت مسأله اي که?فرآيند داده کاوي سعي در تحليل داده هاي آن را دارد، طراحي مي گردد.
6-3-2) تعبير مدل و استخراج نتايج?
?در بسياري از موارد، مدل هاي استخراجي توسط روش هاي مختلف داده کاوي در يک فرآيند تصميمگيري مورد استفاده قرار مي گيرند. مدل هاي مزبور جهت قابل استفاده بودن بايستي قابل تفسير باشند. اين امر بخاطر آن است که انسان ها تمايل ندارند که اساس و پايه تصميم هاي خود را بر مبناي مدل هاي پيچيده?جعبه سياه28 قرار دهند. موضوع مهمي که در اينجا وجود دارد آن است که اهداف دقت29 مدل و قابليت درک30 آن معمولا با يکديگر در تضاد هستند. اغلب مدل هاي ساده قابليت تفسيري بهتري دارند اما دقت آنها پايينتر است. از طرف ديگر مدل هاي دقيق معمولا ساختار پيچيده اي دارند.?
فرآيند داده کاوي معمولا فرآيندي تکراري در تمامي فازهاي آن است. اين واقعيت در شکل ?-? نشان?داده شده است. جهت نيل به يک مدل نهائي کارا، بايستي تمامي مراحل مزبور به درستي طي شوند. به عبارت ديگر هيچکدام از اين مراحل نمي توانند نقص احتمالي موجود در مراحل ديگر را جبران نمايد,[4] ?[25].
4-2) آشنايي با مجموعه داده KDD :
KDD99 يا Knowledge Discovery Dataset99 يک مجموعه داده از ترافيک شبکه مي باشد که در بسياري از پژوهشهاي مربوط به سيستم هاي تشخيص نفوذ مورد استفاده قرار مي گيرد. اين مجموعه داده از سال 1999 توسط برنامه ارزياب سيستم تشخيص نفوذ در دانشگاه MIT جمع آوري شده است. اين مجموعه داده داراي حدود 4 گيگا بايت داده جمع آوري شده از 7 هفته ترافيک شبکه و 2 هفته داده تستي است. داده هاي آموزشي KDD داراي حدود 49000000 رکورد با 41 ويژگي است که داري برچسب حمله و يا نرمال مي باشد. در واقع هر رکورد در اين مجموعه داده داراي 42 قسمت مي باشد که 41 قسمت اول آن مربوط به ويژگي هاي رکورد مورد نظر و قسمت آخر مشخص کننده نوع اين رکورد (حمله يا نرمال بودن) مي باشد که اسامي و نوع داده مربوطه در جدول (2-2) آمده است.
با بررسي اين مجموعه داده مشخص است که اين مجموعه به دليل مشکلاتي که داراست غالبا براي تشخيص نفوذ مناسب نمي باشد [5]. در [5]، دو مورد از مهمترين مشکلات اين مجموعه داده مورد برطرف شده و مجموعه داده جديد بنام NSL-KDD در [27] قرار داده شده است.
دو اشکال مهمي که در KDD اصلي قرار داشته و توسط [5] حل شده است عبارتند از :
رکوردهاي افزونه : بسياري از رکوردهاي موجود در KDD تکراري و مشابه هستند و بدليل زياد بودن اين نوع از رکوردها، الگوريتم هاي تشخيص نوع داده به سمت رکوردهاي تکراري متمايل مي شوند. اين مسئله باعث عدم توجه به رکوردهاي با تعداد تکرارهاي پايين که اغلب داراي اهميت زيادي مي باشند، مي شود.
سطح دشواري : براي تشخيص حمله از رفتار نرمال، ابتدا يک مجموعه داده آموزشي انتخاب شده و الگوريتم هاي يادگيري ماشين با استفاده از اين داده ها آموزش مي بينند. سپس مجموعه داده تستي براي ارزيابي دقت اين الگوريتم ها بکار گرفته مي شوند. در مجموعه داده KDD به دليل وجود برخي مشکلات در داده تستي، معمولا دقت الگوريتمهاي تشخيص نفوذ بالا تخمين زده مي شود اما در محيط واقعي شبکه، اين نوع از سيستم ها توانايي تشخيص با دقت بالا را ندارند. در اين مفاله رکوردهايي که باعث ايجاد چنين مشکلي مي شوند از مجموعه داده حذف مي گردند. براي اين کار 7 الگوريتم يادگيري ماشين و هر کدام براي 3 مرتبه بر روي مجموعه داده بکار گرفته مي شوند.
بنابراين 21 سطح تشخيص نوع رکورد وجود دارد. به هر تعداد دفعه اي که نوع يک رکورد درست تشخيص داده شود يک واحد به امتياز رکورد افزوده مي شود. به عنوان مثال اگر تمام الگوريتم ها نوع يک رکورد را درست تشخيص بدهند امتياز آن رکورد 21 مي شود. سپس در يک جدول نسبت تعداد رکوردهاي هر دسته (بين 0 تا 21) نشان داده مي شود. در نهايت از هر دسته به نسبت عکس نسبت تعداد رکوردهاي موجود در آن دسته، رکورد از بين کل مجموعه داده انتخاب مي شود. به عنوان نمونه تعداد رکوردهاي مربوط به دسته امتياز 0-5 به اندازه 0.04 کل داده ها مي باشد. بنابراين 99.96 درصد از رکوردهاي اين دسته به عنوان رکوردهاي نماينده اين گروه از کل مجموعه داده ها انتخاب مي شود. مجموعه داده اي که به اين روش ساخته مي شود نتايج بهتري در سيستم هاي تشخيص نفوذ به دست خواهند داد.
شکل 2-1 : درصد کارايي الگوريتم هاي بکار رفته برروي مجموعه داده مورد نظر[5]
جدول 2-1: دسته بندي رکورد هاي انتخابي بر اساس الگوريتم هاي اعمالي[5]
در اين پروژه نيز از مجموعه داده NSL-KDD براي انجام محاسبات و ارزيابي استفاده شده است.
5-2) ماشين هاي بردار پشتيبان31 :
ماشين هاي بردار پشتيباني (SVM) شامل دسته بندي کننده بردار پشتيباني (SVC) و رگرسور بردار پشتيباني (SVR) بوده و از دقيق ترين و نيرومندترين الگوريتم هاي داده کاوي بشمار مي روند. ماشين هاي بردار پشتيباني، در ابتدا توسط وپنيک32 و در دهه 90 ميلادي توسعه داده شدند[3].
اصول نظري مربوط به اين الگوريتم ها را مي بايست در تئوري يادگيري آماري جستجو کرد. يکي از ويژگي هاي قابل توجه الگوريتم هاي مذکور آن است که در اغلب موارد هيچ حساسيتي را نسبت به ابعاد داده از خود نشان نمي دهند. در اين قسمت ماشين هاي بردار پشتيباني و مفاهيم و معادلاتي که تشکيل دهنده شالوده اين الگوريتم ها هستند را معرفي مي کنيم.
در واقع SVM ها به خانواده اي از مدل هاي خطي تعميم يافته تعلق دارند. در اين خانواده از مدل ها، بر اساس مقدار مربوط به ترکيب خطي خصيصه ها تصميماتي در مورد دسته بندي و رگرسيون اتخاذ مي شود. همچنين، گفته مي شود که ماشين هاي بردار پشتيبان به ” روش هاي کرنل33 ” تعلق دارند.
SVM ها، علاوه بر دارا بودن يک شالوده

Author: y7oozita

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *