محل تبلیغات شما
r گزینه Supervised و Attribute و سپس Attribute Selection را انتخاب کرده و بعد از آن الگوریتم های موردنظر برای انتخاب و کاهش ویژگی ها را انتخاب می کنیم. کافیست با زدن کلید apply عملیات را اجرا نمایید تا نتیجه را که کاهش تعداد خصوصیات انتخابیست را ببینید، البته بعضی از روش های کاهش و انتخاب ویژگی با ترکیب ویژگی های موجود، ویژگی های جدیدی را تولید می کتتد . نتیجه اعمال بعضی از این روش مانند اینست که شما با توجه به میزان تاثیر هر یک از ویژگی ها به عنوان یک پیشگو ، پیشگو (ویژگی)های مهمتر را بایکی از الگوریتمها انتخاب و یا با توجه به میزان تاثیرشان ویژگی های جدید بوجود آورید.

azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
برای نتیجه گیری انتخاب خصوصیات باید بگوییم که برای رسیدن به خروجی مناسب استفاده از الگوریتمهای فوق می­تواند بسیار مناسب باشد. در واقع عمل جداسازی یه دو صورت کنترل شده و نشده به صورت آماری به میزان قابل توجهی در دسته بندی خروجی و اعمال درختهای تصمیم گیری می­تواند موثر واقع شود. این تاثیر در بعضی مواقع تا بالای ۲۰ % هم در خروجیهای ما خود را نشان داده است.

این اتفاق به این علت است که اگر ما منحنی رگرسیون را برای خروجی رسم نماییم تا میزان تاثیر پیشگوها (ویژگی) را ببینیم بعضی از موارد بسیار مضر و مخرب عمل می­کنند ، با این عملیات ما تاثیر این موردها را کاهش می­دهیم و دقت را بالا میبربم.

این الگوریتمها را ما در دسته الگوریتمهای فیلترینگ بررسی کردیم.

 
۳٫۳٫۳ ساختن و آموزش مدل (طبقه بند: Classifier )

الگوریتمهای طبقه بندی برای ایجاد مدل (سیستمی) برای تشخیص نوع ملور های موجود یا جدید در weka عموما به ۶ دسته تقسیم میگردند که هرکدام در داخل خود الگوریتمهای متعددی دارند :

 

    Bayes
    Functions
    Lazy
    Meta
    Misc
    Trees
    Rules
    Immune
    Neural

 
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
برای انتخاب، آموزش و استفاده ازمدل در آینده بایستی به مرحله بعد در نرم­افزار WEKA رفته یعنی بخش Classify ، و یکی از الگوریتمهای دسته­بندی[۱۱] (طبقه بندی) را مورد استفاده قرار دهیم.

 
۳٫۳٫۴ روش انجام کار و ارایه و بررسی نتایج بنابر روش های مختلف داده کاوی

از بخش Classify در WEKA الگوریتم مورد نظر را انتخاب کرده و سپس برای ساختن، آموزش و ارزیابی طبقه بند موردنظر روش cross validation را انتخاب کرده و تعدادfold ها را ۱۰ در نظر گرفتیم سپس بر روی دکمه شروع زده و منتظر نتیجه باقی می­مانیم.

 

مدلهای مورد استفاده در تحلیل که بهترین نتایج را به ما دادند عبارتند از ۲ مورد اول و مورد سوم جزو روش های تکاملی است که به علت مزایایی که دارد امروزه در تشخیص ملور ها مورد توجه زیادی قرار گرفته است، البته روش های طبقه بندی دیگری نیز در آزمایشات متفاوت مورد بررسی قرار گرفت و این روش ها برای ارائه به عنوان نمونه انتخاب شدند :

 

        Classification via Regression
        Decision Tree C4.5
        Immune System

در حالت اول ابتدا از الگوریتم طبقه­بندی از طریق رگرسیون استفاده کردیم، برای ارزیابی و تست مدل از روش cross-validation و تعداد ۱۰ fold استفاده شد. در ابن حالت برای طبقه­بندی ۲۳ نوع ملور مدل ما توانست با دقت ۹۸٫۴۰۳۱ % نوع ملور ها درست تشخیص دهد،

 

 

 

همانگونه که در شکل بالا می­بینید که حاصل نتایج طبقه­بندی از طریق رگرسیون است از کل ۳۱۳۱ نمونه گرداوری شده ، الگوریتم توانسته است که ۳۰۸۱ مورد را در دسته(کلاس)­های مربوطه به درستی قرار دهد. این روش موارد را در یکی از شاخه های درختی مشابه درخت تصمیم­گیری قرار داده و سپس برای هر مورد یک معادله رگرسیون ایجاد می­کند که این معادلات رگرسیونی بر حسب مقادیر و ضرایب پیشگوها که در این جا feature های هر نمونه هستند تغییر می­کند و میزان تاثیر آنها درحالات مختلف در کلاس خروجی متفاوت است. در شکل زیر می­توانید ببینید که به صورت نمونه دسته­بندی و ضرایب برای هر معادله در یک مثال به چه شکلی است . در این روش برای استفاده از هر معادله در واقع قوانین و شرایطی برای مقادیر feature ها مشخص می شود، که در صورت دارا بودن آن شرایط از معادله ای که در انتهای شاخه برای بدست آوردن مقدار کلاس مشخص شده استفاده می شود. در این روش feature های انتخاب شده نقش پیشگو ها را در معادلات رگرسیونی بازی می کنند.

 

 

به عنوان نمونه در شکل بالا ، این گونه گفته می­شود که اگر پارامتر ۸۹ کوچکتر مساوی با ۰٫۰۰۲ بود و Dll47 مقدارش کوچکتر مساوی با صفر بود آنگاه معادله رگرسیونی LM1 را در نظر بگیر و به این ترتیب تمامی معادلات مشخص می­گردند. علی رقم مشابهت این روش با درخت های تصمیم گیری جهت این دو روش کمی متفاوت می باشند.

درحالت دوم از روش درخت های تصمیم گیری و الگوریتم C4.5 که از درخت های تصمیم محبوب می باشد نیز بر روی این داده ها استفاده شد و در همین حالت cross-validation با ۱۰ fold جواب مشابه ای بدست آمد که   ۹۸٫۷۲۲۵ % می باشد.

تفاوت روش طبقه بندی از طریق رگرسیون با درخت های تصمیم گیری در این می باشد که در روش اول شما در انتهای هر شاخه یک مدل رگرسیون (معادلع) خواهید داشت (که برای هر کلاس متفاوت می باشد) که از طریق آن مقدار کلاس محاسبه خواهد شد ولی در روش درخت های تصمیم گیری در انتهای هر شاخه مستقیما مقدار خود کلاس مشخص خواهد شد و اگر نمونه ای برحسب شرایط به انتهای یک شاخه برسد در آنجا مقدار کلاسی که به آن متعلق می باشد به طور دقیق ذکر شده است. البته بعد از آموزش سیستم (مدل) شاخه های درخت و مقادیر کلاس ها در انتهای هر شاخه مشخص می شود. برای درک این دو مدل به درخت تصمیم گیری در پیوست ب مراجعه کنید.

درحالت سوم الگوریتم AIRS (Artificial Immune Recognition System) را بر روی مجموعه داده­ها اجرا می­کنیم در مرحله اول این الگوریتم برای هر نوع یا کلاس یک تعداد نماینده بهینه از روی مجموعه داده های training بدست می آورد که تعداد آنها بسیار کمتر از داده های اصلی می باشد، سپس طبقه­بندی را توسط روش KNN با استفاده از نقاط نماینده هر کلاس انجام می­دهد. نقاط انتخاب شده همراه با داده های test ورودی الگوریتم KNN هستند و در KNN این نقاط برای تشخیص کلاس داده های تست استفاده می شود، در نتیجه این روش بسیار بهتر از KNN عمل می کند، در این روش قدرت تشخیص با همان روش cross-validation با ۱۰ fold دقت تشخیص درست ۸۱٫۹۸۶۶ % درصد است که از تعداد ۳۱۳۱ نمونه ۲۵۶۷ مورد را به شکل صحیح تشخیص می­دهد. نقطه برتری این روش با توجه به پایین بودن درصد طبقه­بندی آن ، قدرت تشخیص بالا برای نمونه ­های جدید است. در این پروژه از ورژن parallel الگوریتم AIRS استفاده شد که برای داده ای زیاد همراه با تعداد کلاس ها و feature های زیاد از سرعت بالایی برخوردار می باشد. این الگوریتم یک الگوریتم supervise الهام گرفته از سیستم ایمنی بدن می باشد که برای طبقه بندی از آن استفاده می شود.

 

از مدل های ایجاد شده در هر روش می توان برای شناسایی سایر ملور هایی که در data set آموزش (train) و تست ما موجود نبود استفاده کرد، البته این مدل ها قدرت خود را با روش cross-validation نشان داده اند، در همین روش نیز ابتدا data set به بخش های مساوی به تعداد fold ها تقسیم می شود، سپس به صورت متوالی بخشی از data set به صورت test و سایر بخش ها به عنوان train استفاده می شود تا تمام بخش ها به عنوان test برای مدل استفاده شود، پس در هر بار بعد از train سیستم با ملور های جدیدی مواجه می شود که قبلا آنها را ندیده و باید نوع آنها را تشخیص دهد.
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
البته مراحل آموزش و تست سیستم به صورت کاملا مجزا و با data setهای مجزا نیز انجام شد، برای این منظور data set اصلی به صورت random با درصد ۷۰-۳۰ جدا می شود. (ابتدا data set را randomize نمونه و سپس ۷۰% آن را برای train سیستم و ۳۰% آن را برای test سیستم جدا می کنیم). در این حالت ابتدا سیستم را با بخش جدا شده برای train آموزش می دهیم و سپس با استفاده از داده های تست دقت آن را در تشخیص ملورهای جدید ارزیابی می کنیم، نتایج بدست آمده (درصد میزان درستی تشخیص سیستم) برای داده های تست در هر روش در زیر آورده می شود، این نتایج نشان می دهد که مدل (سیستم) های بدست آمده برای تشخیص مالور های جدید قابل اعتماد خواهند بود.

 

Classification via Regression: 98.2979 %

Decision Tree (C4.5): 99.2553 %

Parallel AIRS: 85.7447 %

 
۳٫۳٫۵ بررسی خروجی الگوریتم های طبقه بندی در Weka

رای درک بهتر گزارش خروجی های weka بعد از اجرای هر الگوریتم (الگوریتم های طبقه بندی) توضیح مختصری در مورد قسمتهای مهم آن در ادامه آورده شده است، و نکاتی که هر مورد می توانند در بررسی قدرت و دقت مدل برای ما مشخص کنند بیان شده است.

مهمترین خروجی Correctly Classified Instances که تعداد و درصد نمونه هایی که درست شناسایی شده اند را مشخص می کند در واقع این عدد معیاری است برای ارزیابی میزان صحت و دقت عملکرد سیستم (مدل) بدست آمده، به طور مثال در این جا به ما نشان می دهد که این مدل تا چه حدی در تشخیص نوع برنامه های مضر/ ملور ها موفق بوده است، علاوه بر الگوریتم طبقه بندی انتخاب شده و پارامترهای الگوریتم که توسط ما به صورت دستی برای سیستم قبل از شروع آموزش انتخاب می شود، نمونه های جمع آوری شده و خصوصیات/ ویژگی های استخراج و انتخاب شده برای نمونه ها (در اینجا ملورها) نیز موثر می باشد، درصورتیکه نمونه ها با توزیع خوبی جمع آوری نشود به طوری که کل فضای آزمایش شما را پوشش ندهد سیستم نمی تواند همه کلاس ها را به خوبی شناسایی کند و یا بعد از آموزش در شناخت موارد جدید به خوبی عمل نخواهد کرد،درصورتیکه برای بردار ویژگی/ خصوصیت، مواردی انتخاب نشود که بردار ویژگی نماینده دقیقی از موارد مورد مطالعه باشد، به طور مثال در اینجا خصوصیات انتخاب شده به خوبی نشانگر رفتار ملورها نباشند، مسلما نتایج دلخواه بدست نخواهد آمد. البته نتایج ضعیف طبقه بندی ممکن آست ناشی از ضعف الگوریتم انتخاب شده و یا انتخاب اشتباه پارامترهای آن باشد، نتایج خوب بدست آمده در آزمایشات انجام شده در این پروژه بر روی طیف گستردهای از الگوریتم ها نشانگر آن است که ویژگی های خوبی از گزارشات رفتار ملورها استخراج شده است. نتایج طبقه بندی هم برای آموزش سیستم و هم برای تست آن در برابر داده های جدید می توان مشاهده نمود، که معمولا ابتدا سیستم با ۷۰% data set (مجوعه نمونه ها) آموزش داده می شود و سپس با ۳۰% نمونه های باقیمانده تست خواهد شد. در حالت تست داده ها را همراه جواب به سیستم می دهیم تا آموزش دیده و الگو های کلی هر کلاس را استخراج کرده و یاد بگیرد و پارامتر های خود را تنظیم کند و مدل ساخته شود، سپس مدل را با روی نمونه های جدید که جواب (کلاس) آن را نمی داند تست می کنیم، در هر مورد گزارش weka اکثر موارد مانند correctness rate ثابت است. البته ممکن است برای آموزش و تست سیستم از روش cross-validation استفاده شود، که در این روش شما در انتها یک جواب را مشاهده می کنید که در واقع میانگین جواب برای تست تعداد fold هایی است که برای تست انتخاب شده اند بعد از آموزش سیستم توسط بقیه نمونه ها.

مورد مهم بعدی در خروجی weka ، Incorrectly Classified Instances می باشد که تعداد و درصد نمونه هایی است که غلط طبقه بندی شده اند و سیستم (مدل) کلاس آن ها را به درستی شناسایی نکرده است.

Confusion Matrix نیز در خروجی weka قابل مشاهده می باشد، که برای بررسی دقیقتر مدل لازم است

Confusion Matrix ماتریس مربعی است که به تعداد کلاس ها سطر و ستون دارد، و اگر به طور مثال i عنصری قطر اصلی باشد در سطر و ستون j ، مقدار آن نشانگر تعداد نمونه هایی از کلاس j در data set می باشد که به درستی طبقه بندی شده اند، و اگر در سطر j مقدار سابرخانه ی سایر ستون ها که بر قطر اصلی نیستند غیر صفر باشد، به طور مثال خانه ای در سطر j و ستون k ، مقدار آن نشانگر تعداد نمونه های کلاس j است که به اشتباه در کلاس k توسط سیستم طبقه بندی شده اند. با بررسی این ماتریس می توان به طور دقیف فهمید که ضعف مدل در شناسایی چه کلاس هایی است و مدل توانسته چه کلاس هایی را به خوبی یاد گرفته و شناسایی کند، و یا اینکه چه کلاس هایی توسط مدل با هم اشتباه گرفته می شوند ، به این معنی که ممکن است تعداد زیادی از نمونه های یک کلاس در کلاس دیگر طبقه بندی شده باشند. ضعف سیستم در شناسایی یک کلاس ممکن است ناشی از انتخاب نمونه های بد برای آن کلاس باشد که نمایانگر الگوی رفتاری و خصوصیات آن کلاس نباشند، و یا ویژگی هایی که از نمونه ها استخراج شده اند ویژگی های خوبی نباشند، البته خروجی های ضعیف سیستم ممکن است دلایل دیگری نیز داشته باشد.

بسیاری از مواردی که در خروجی های weka دقیقا در قسمت بالای confusion matrix مشاهده می کنید از روی این ماتریس قابل محاسبه می باشد، برای آشنایی بیشتر با سایر موارد در گزارشات خروجی weka می توانید به manual آن مراجعه کنید که عموما در جایی که weka نصب شده کپی می شود.


۴ پیوست الف روشهای کاهش ویژگی

در این بخش یک مطالعه­ اجمالی برروی تمامی روشهای کاهش ویژگی[۱۲] انجام شده است که مشتمل بر دو دسته اصلی می باشد، روشهای مبتنی بر استخراج ویژگی و روشهای مبتنی بر انتخاب ویژگی.
۴٫۱ روشهای مبتنی بر استخراج ویژگی

همانطور که در بخش اول اشاره شد روشهای مبتنی بر استخراج ویژگی، یک فضای چند بعدی را به یک فضای با ابعاد کمتر نگاشت می­دهند. این روشها به دو دسته­ی خطی و غیرخطی تقسیم می­شوند. روشهای خطی که ساده­ترند و فهم آنها راحت­تر است بدنبال یافتن یک زیرفضای تخت عمومی (Global flat subspace) هستند. اما روشهای غیرخطی که مشکلترند و تحلیل آنها سخت­تر است بدنبال یافتن یک زیرفضای تخت محلی (Locally flat subspace) می­باشند.

از روشهای خطی می­توان به DFT، DWT، PCA و FA اشاره کرد که آنها را به ترتیب در ادامه­ی همین بخش توضیح خواهیم داد. روشهای دیگر غیرخطی عبارتند از:

    Projection Pursuit (PP) : برخلاف روشهای PCA و FA می­تواند اطلاعات بالاتر از مرتبه­ی دوم را ترکیب نماید. بنابراین روش مناسبی است برای بسترهای داده­ای غیر گاوسی.
    Independent Component Analysis (ICA) : این روش نیز یک نگاشت خطی انجام می­دهد اما بردارهای این نگاشت وماً بر یکدیگر عمود نیستند، در حالی که در روشهای دیگر مانند PCA این بردارها بر هم عمودند.
    Random Projection (PP) : یک روش ساده و در عین حال قدرتمند برای کاهش ابعاد داده است که از ماتریسهای نگاشت تصادفی برای نگاشت داده­ها به یک فضای با ابعاد کمتر استفاده می­کند.

از روشهای غیرخطی نیز می­توان به موارد زیر اشاره کرد:

    Principal Curves
    Self Organizing Maps
    Vector Quantization
    Genetic and Evolutionary Algorithms
    Regression

مسئله­ی کاهش ابعاد داده را بطور ریاضی می­توان به اینصورت بیان کرد: یک متغیر تصادفی p-بعدی  داریم. می­خواهیم متغیر k-بعدی را به گونه­ای پیدا کنیم که اولاً k ≤ p باشد و ثانیاً s محتویاتی که در x وجود دارد را بر اساس معیاری خاص دارا باشد. روشهای خطی سعی می­کنند هر یک از این k مؤلفه را از ترکیب خطی p مؤلفه­ی اولیه بدست آورند.

که Wk×p ماتریس وزنهای نگاشت خطی می­باشد.
Discrete Fourier Transform (DFT)

در بسیاری از کاربردها مرسوم است که از ترکیب توابع پایه­ای برای تقریب یک تابع استفاده شود. به عنوان مثال هر تابع پیوسته را می­توان توسط مجموعه­ای از توابع چند جمله­ای نمایش داد. تبدیل فوریه نوعی تبدیل است که یک تابع را بصورت توابع پایه­ای سینوسی که هر کدام در مقادیری ضرب شده­اند نشان می­دهد (شکل ۱). از تبدیل فوریه در بسیاری از زمینه­های علمی مانند فیزیک، هندسه، آمار و پردازش سیگنال استفاده می­شود.

 

شکل ۱- تبدیل فوریه سعی می­کند یک تابع را بصورت توابع پایه­ای سینوسی نشان دهد

تبدیل فوریه یک تبدیل برگشت پذیر است. این تبدیل می­تواند به دو صورت پیوسته یا گسسته انجام شود. در کامپیوتر و بخصوص در پردازش سیگنال معمولاً از تبدیل فوریه­ی گسسته (DFT) استفاده می­شود. خوشبختانه الگوریتمهای سریعی تحت عنوان FFT (Fast Fourier Transform) برای تبدیل فوریه­ی گسسته به وجود آمده است.
 Discrete Wavelet Transform (DWT)

تبدیل DWT برای اولین بار توسط شخصی به نام Alfred Haar بوجود آمد. تا کنون نسخه­های مختلفی برای DWT ارائه شده است، مانند Haar Wavelet، Newland Transform و Undecimated Wavelet Transform. این تبدیل نیز همانند تبدیل فوریه بسیار پرکاربرد است و در بسیاری از زمینه­های علوم و مهندسی مورد توجه قرار گرفته است. تبدیل Haar Wavelet بدلیل سادگی در پیاده سازی و سرعت اجرای بالا، از محبوبیت بیشتری نسبت به سایر نسخه­های DWT برخوردار است.

این تبدیل به اینصورت است که یک توالی به طول ۲n در ورودی داریم. این اعداد بصورت جفت جفت با هم جمع شده و این حاصل جمع­ها به مرحله­ی بعد فرستاده می­شوند. همچنین اختلاف هر جفت نیز محاسبه و ذخیره می­شود. دوباره این مرحله تکرار می­شود با این تفاوت که در ورودی، حاصل جمع جفتهای مرحله­ی قبل قرار می­گیرد. این فرایند بطور بازگشتی تکرار می­شود تا در نهایت یک عدد که حاصل جمع کل اعداد است بدست آید. این عدد به همراه ۲n-1 اختلاف جفتها که در مراحل مختلف الگوریتم محاسبه شده بعنوان خروجی این تبدیل بازگردانده می­شود.
Principal Component Analysis (PCA)

تکنیک PCA بهترین روش برای کاهش ابعاد داده به صورت خطی می­باشد. یعنی با حذف ضرایب کم­اهمیت بدست آمده از این تبدیل، اطلاعات از دست رفته نسبت به روشهای دیگر کمتر است. البته کاربرد PCA محدود به کاهش ابعاد داده نمی­شود و در زمینه­های دیگری مانند شناسایی الگو و تشخیص چهره نیز مورد استفاده قرار می­گیرد. در این روش محورهای مختصات جدیدی برای داده­ها تعریف شده و داده­ها براساس این محورهای مختصات جدید بیان می­شوند. اولین محور باید در جهتی قرار گیرد که واریانس داده­ها ماکسیمم شود (یعنی در جهتی که پراکندگی داده­ها بیشتر است). دومین محور باید عمود بر محور اول به گونه­ای قرار گیرد که واریانس داده­ها ماکسیمم شود. به همین ترتیب محورهای بعدی عمود بر تمامی محورهای قبلی به گونه­ای قرار می­گیرند که داده­ها در آن جهت دارای بیشترین پراکندگی باشند. در شکل زیر این مطلب برای داده­های دو بعدی نشان داده شده است.

 

 

روش PCA به نامهای دیگری نیز معروف است. مانند:

    Singular Value Decomposition (SVD)
    Karhunen Loeve Transform (KLT)
    Hotelling Transform
    Empirical Orthogonal Function (EOF)

Factor Analysis (FA)

FA یکی از روشهای آماری است که می­تواند چندین متغیر تصادفی مشاهده شده را توسط تعداد کمتری متغیر تصادفی (که در داده ها پنهان هستند) نمایش دهد. این متغیرهای تصادفی پنهان، فاکتور (factor) نامیده می شوند. این روش سعی می کند متغیرهای تصادفی مشاهده شده را توسط ترکیب خطی فاکتورها بعلاوه­ی مقداری خطا مدلسازی نماید. روش FA از رشته هوش سنجی سرچشمه گرفته و در زمینه­های علوم اجتماعی، بازاریابی، مدیریت تولید، تحقیق در عملیات و علوم کاربردی دیگر که با حجم بزرگی از داده­ها سروکار دارند مورد استفاده قرار گرفته است. این روش برای اولین بار حدود ۱۰۰ سال پیش توسط یک روانشناس به نام Charles Spearman ابداع شد. این شخص نظریه­ای به نام g theory ارائه داد و در آن ادعا کرد که تمام توانمندیهای ذهنی افراد مانند مهارتهای ریاضی، مهارتهای هنری، دایره لغات، توانایی استدلالهای منطقی و غیره را می­توان توسط یک فاکتور به نام هوش عمومی (General Intelligence) بیان کرد. البته این نظریه امروزه رد شده و تحقیقات انجام شده نشان می­دهد که توانمندیهای ذهنی حداقل از سه فاکتور به نامهای توانائی ریاضی، توانائی شفاهی و توانائی منطقی تشکیل شده است. روانشناسان زیادی بر این باورند که علاوه بر این سه فاکتور، فاکتورهای دیگری وجود دارد که می­تواند بر توانمندیهای ذهنی افراد تأثیرگذار باشد.
۴٫۲ روشهای مبتنی بر انتخاب ویژگی

مساله انتخاب ویژگی، یکی از مسائلی است که در مبحث یادگیری ماشین و همچنین شناسائی آماری الگو مطرح است. این مساله در بسیاری از کاربردها (مانند طبقه بندی) اهمیت به سزائی دارد، زیرا در این کاربردها تعداد زیادی ویژگی وجود دارد، که بسیاری از آنها یا بلااستفاده هستند و یا اینکه بار اطلاعاتی چندانی ندارند. حذف نکردن این ویژگی­ها مشکلی از لحاظ اطلاعاتی ایجاد نمی­کند ولی بار محاسباتی را برای کاربرد مورد نظر بالا می­برد. و علاوه بر این باعث می­شود که اطلاعات غیر مفید زیادی را به همراه داده­های مفید ذخیره کنیم.

برای مساله انتخاب ویژگی، راه حل­ها و الگوریتم­های فراوانی ارائه شده است که بعضی از آنها قدمت سی یا چهل ساله دارند. مشکل بعضی از الگوریتم­ها در زمانی که ارائه شده بودند، بار محاسباتی زیاد آنها بود، اگر چه امروزه با ظهور کامپیوترهای سریع و منابع ذخیره سازی بزرگ این مشکل، به چشم نمی­آید ولی از طرف دیگر، مجموعه­های داده­ای بسیار بزرگ برای مسائل جدید باعث شده است که همچنان پیدا کردن یک الگوریتم سریع برای این کار مهم باشد.

در این بخش ما در ابتدا تعاریفی که برای انتخاب ویژگی ارائه شده­اند و  همچنین، تعاریف مورد نیاز برای درک این مساله را ارائه می­دهیم. سپس روش­های مختلف برای این مساله را بر اساس نوع و ترتیب تولید زیرمجموعه ویژگی­های کاندید و همچنین نحوه ارزیابی این زیرمجموعه­ها دسته بندی می­کنیم. سپس تعدادی از روش­های معرفی شده در هر دسته را معرفی و بر اساس اهمیت، تا جائی که مقدور باشد، آنها را تشریح و الگوریتم برخی از آنها را ذکر می­کنیم. لازم به ذکر است که بدلیل اینکه مبحث انتخاب ویژگی به مبحث طبقه بندی بسیار نزدیک است، بعضی از مسائلی که در اینجا مطرح می­شود مربوط به مبحث طبقه بندی می­باشد. توضیحات ارائه شده برای الگوریتم­های مختلف در حد آشنائی است. شما می­توانید برای کسب اطلاعات بیشتر به منابع معرفی شده مراجعه کنید.

 
تعاریف

مساله انتخاب ویژگی بوسیله نویسندگان مختلف،  از دیدگاه­های متفاوتی مورد بررسی قرار گرفته است. هر نویسنده نیز با توجه به نوع کاربرد، تعریفی را از آن ارائه داده است. در ادامه چند مورد از این تعاریف را بیان می­کنیم[۶]:

    تعریف ایده­آل­: پیدا کردن یک زیرمجموعه با حداقل اندازه ممکن، برای ویژگی­ها است، که برای هدف مورد نظر اطلاعات لازم و کافی را در بر داشته باشد. بدیهی است که هدف تمام الگوریتم­ها و روش­های انتخاب ویژگی همین زیر مجموعه است.
    تعریف کلاسیک: انتخاب یک زیرمجموعه M عنصری از میان N ویژگی، به طوریکه M < N باشد و همچنین مقدار یک تابع معیار (Criterion Function) برای زیرمجموعه مورد نظر، نسبت به سایر زیرمجموعه­های هم­اندازه دیگر بهینه باشد. این تعریفی است که Fukunaga  و Narenda در سال ۱۹۷۷ ارائه داده­اند.
    افزایش دقت پیشگوئی: هدف انتخاب ویژگی این است که یک زیرمجموعه از ویژگی­ها برای افزایش دقت پیشگوئی انتخاب شوند. به عبارت دیگر کاهش اندازه ساختار بدون کاهش قابل ملاحظه در دقت پیشگوئی طبقه­بندی کننده­ای که با استفاده از ویژگیهای داده شده بدست می­آید.
    تخمین توزیع کلاس اصلی: هدف از انتخاب ویژگی این است که یک زیرمجموعه کوچک از ویژگی­ها انتخاب شوند، توزیع ویژگی­هایی که انتخاب می­شوند، بایستی تا حد امکان به توزیع کلاس اصلی با توجه به تمام مقادیر ویژگی­های انتخاب شده نزدیک باشد.

روش­های مختلف انتخاب ویژگی، تلاش می­کنند تا از میان N2 زیر مجموعه کاندید، بهترین زیرمجموعه را پیدا کنند. در تمام این روشها بر اساس کاربرد و نوع تعریف، زیر مجموعه­ای به عنوان جواب انتخاب می­شود، که  بتواند مقدار یک تابع ارزیابی را بهینه کند. با وجود اینکه هر روشی سعی می­کند که بتواند، بهترین ویژگی­ها را انتخاب کند، اما با توجه به وسعت جواب­های ممکن، و اینکه این مجموعه­های جواب بصورت توانی با N افزایش پیدا می­کنند، پیدا کردن جواب بهینه مشکل و در N های متوسط و بزرگ بسیار پر هزینه است.

به طور کلی روش­های مختلف انتخاب ویژگی را بر اساس  نوع جستجو به دسته های مختلفی تقسیم بندی می­کنند. در بعضی روش­ها تمام فضای ممکن جستجو

آموزش کامل داده کاوی با weka

پروژه آماده داده کاوی با وکا (weka)

هزینه انجام پروژه داده کاوی

های ,روش ,یک ,کلاس ,ها ,استفاده ,است که ,که در ,طبقه بندی ,این روش ,در این ,com0936729227609367292276azsoftir@gmail comazsoftir com0936729227609367292276azsoftir@gmail ,comazsoftir com0936729227609367292276azsoftir@gmail comazsoftir ,تبدیل فوریه­ی گسسته ,واریانس داده­ها ماکسیمم

مشخصات

آخرین مطالب این وبلاگ

برترین جستجو ها

آخرین جستجو ها

وحید خزایی remoconra ali113 نوین محتوا بهترین های چاپ daycreakenis وبلاگ رسمی امیرعلی مهاجری unorfana با ما به روز باشید قرآن جیبی