درخت تصمیم و تکنیکهای آماری ابزار مفیدی برای توصیف هستند؛ قوانین همبستگی و خوشهبندی را نیز میتوان برای توصیف استفاده کرد.
(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))
ابزار و تکنیکهای دادهکاوی
ابزارها و تکنیکهای بیشماری برای انجام پروژههای دادهکاوی وجود دارد. بیشتر تکنیکهای دادهکاوی از سالها و یا دهه های قبل وجود داشتهاند و ریشه در علومی دیگر چون آمار و ریاضی و زیرشاخههای علوم کامپیوتر مانند هوش مصنوعی و یادگیری ماشین دارند. در این تحقیق سعی کردهایم به معرفی تکنیکهایی بپردازیم که پرکاربرد بوده و یا در تحقیق مورد استفاده قرار گرفته است.
درخت تصمیم
درخت تصمیم از تکنیکهای پرکاربرد و رایج دادهکاوی است که برای اهداف دستهبندی و پیشبینی مورد استفاده قرار میگیرد. الگوریتمهای این تکنیک در حیطه الگوریتمهای یادگیری با ناظر بشمار میرود و بر اساس الگوریتم یادگیری مفهوم طراحی شدهاند. یک درخت تصمیم از تعدادی گره[۷۴] و شاخه[۷۵] تشکیل شده است. شاخهها، گرهها را به یکدیگر متصل میکنند. گرههایی که در انتهای درخت واقع هستند را برگ[۷۶] مینامیم. برگها بیانگر برچسب کلاسها هستند. گرهای که در بالاترین سطح از درخت قرار دارد ریشه[۷۷] نامیده میشود. ریشه شامل تمام دادههای آموزشی است که باید به کلاسهای مختلف تقسیم شوند. تمامی گرهها، بجز برگها را گرههای تصمیم[۷۸] مینامند. در هر کدام از این گرهها، تصمیمگیری در مورد فعالیتی که باید انجام شود با توجه به یک خصیصه صورت میگیرد. هر کدام از گرهها داری فرزندانی هستند که تعداد فرزندان هر گره برابر با تعداد مقادیری است که خصیصه مورد نظر میتواند اختیار کند (شهرابی and شجاعی ۱۳۸۸).
الگوریتمهای مختلفی برای تولید درخت تصمیم وجود دارد. تمامی این الگوریتمها بر اساس الگوریتم یادگیری مفهوم هانت طراحی شدهاند. این الگوریتم، روشی را مد نظر قرار داده است که انسانها از آن به منظور یادگیری مفاهیم ساده استفاده میکنند. در این روش خصیصههای اصلی که متمایزکننده دو گروه اصلی متفاوت هستند، مشخص میشوند. برای انجام این کار، از نمونههای آموزشی مثبت و منفی استفاده میشود. الگوریتم هانت بر پایه استراتژی تقسیم و غلبه[۷۹] بنا نهاده شده است. مجموعههای آموزشی به طور بازگشتی با انتخاب بهترین خصیصه به عنوان متمایز کننده به گونهای به زیرمجموعههای کوچکتر افراز میشوند که هر زیر مجموعه تنها حاوی نمونههایی باشد که به یک کلاس تعلق دارند (شهرابی and شجاعی ۱۳۸۸). به این ترتیب، با انتخاب پی در پی خصیصههای متمایز کننده، درخت تصمیم شکل میگیرد.
آنچه که باعث میشود الگوریتمهای متفاوتی برای ایجاد درخت تصمیم وجود داشته باشد، عامل انتخاب خصیصه متمایزکننده است. معیارهای گوناگونی برای انتخاب خصیصه وجود دارد که مهمترین آن عبارت است از:
-
- شاخص جینی[۸۰]: یک شاخص رایج تقسیمبندی، جینی نام دارد که از نام کورادو جینی[۸۱]، متخصص آمار و اقتصاددان ایتالیایی گرفته شده است. این شاخص احتمال قرارگیری دو مورد انتخاب شده تصادفی از یک جمعیت یکسان را در یک دسته نشان میدهد. برای یک جمعیت خالص، این احتمال برابر یک است. اندازهگیری جینی یک گره، به صورت مجموع نسبتهای دسته ها است. برای محاسبه تاثیر یک تقسیم، امتیاز جینی هر گره فرزند را محاسبه کرده و در نسبت اطلاعات که به آن گره میرسد ضرب کرده وسپس اعداد حاصل را با هم جمع میکنیم (شهرابی ۱۳۹۰b). الگوریتم CART[82] برای پیادهسازی از این معیار استفاده میکند.
-
- بهره اطلاعات[۸۳]: در منظر بهره اطلاعات، اگر یک برگ کاملا خالص باشد آنگاه دستهه ای این برگ را میتوان به راحتی اینگونه توصیف کرد که همگی آنها در یک دسته جای میگیرند. از طرف دیگر، اگر یک برگ دارای ناخالصی بالایی باشد آنگاه توصیف آن بسیار مشکل خواهد بود. برای بیان این وضعیت اندازهای به نام آنتروپی[۸۴] تعریف میگردد. آنتروپی میزان بینظمی یک سیستم است. آنتروپی یک گره خاص در یک درخت تصمیم عبارت است ازجمع نسبتهای دادههای متعلق به یک دسته خاص برای تمام دستههایی که در گره نشان داده شدهاند که در لگاریتم پایه دو آن نسبت ضرب شده است. آنتروپی یک تقسیم به صورت مجموع آنتروپی تمام گرههای ناشی از تقسیم که بوسیله نسبت دادههای هر گره وزندهی شده است بدست میآید (شهرابی ۱۳۹۰b). الگوریتم [۸۵]ID3 از بهره اطلاعات برای انتخاب خصیصه استفاده میکند.
-
- نسبت بهره[۸۶]: اندازهگیری آنتروپی زمانی با مشکل مواجه میشود که به یک تقسیمبندی با متغیرهای دستهای مواجه شویم. مشکل در اینجا کاهش تعداد دستهه ای نمایش داده شده در هر گره و متعاقب آن کاهش آنتروپی است که صرفا از شکستن مجموعه دادههای بزرگتر به زیرمجموعههای کوچکتر ناشی میشود. کاهش آنتروپی که مربوط به تعداد شاخهها باشد را اطلاعات نهادی[۸۷] یک تقسیمبندی مینامند. اطلاعات نهادی موجب میشود تا درخت تصمیم ایجاد شده پر برگ و بار شود. درختهای پر برگ با تقسیمات متعدد چند مسیری مطلوب نیستند چرا که این تقسیمات به تعداد کم دادهها در هر گره منجر شده و مدلهای حاصله از این طریق ناپایدار خواهند بود. برای رفع این مشکل، از نسبت کل بهره اطلاعاتی استفاده میکنند (شهرابی ۱۳۹۰b). الگوریتم C4.5 از نسبت بهره برای انتخاب خصیصه استفاده میکند.
معیارهای انتخاب خصیصه دیگری هم وجود دارد، که میتوان به درخت تصمیم CHAID، که برای انتخاب خصیصه از آزمون χ^۲ استفاده میکند و یا C-SEP که برای انتخاب خصیصه از آماره G (که بسیار نزدیک به توزیع χ^۲ است) استفاده میکند، اشاره کرد.
از درخت تصمیم ایجاد شده میتوان برای پیشبینی برچسب نمونههای جدید بر اساس مقادیر خصیصههای آنها استفاده کرد. درخت تصمیم همچنین قوانین همبستگی میان خصیصهها را آشکار میسازد. برخی از نقاط ضعف و قوت درختهای تصمیم عبارتند از:
-
- قوانین تولید شده توسط آنها، تمامی کلاسهای موجود در مجموعه داده آموزشی را به بهترین شکل توصیف میکند.
-
- روابط موجود میان قوانین را آشکار ساخته؛ در نتیجه، درک ساختار دادهها را ساده میسازد.
-
- از نظر محاسباتی ساده هستند.
-
- این امکان وجود دارد که قوانین بسیار پیچیدهای را تولید کنند که در نتیجه آن، هرس کردن با دشواریهایی مواجه خواهد بود.
-
- قادر هستند تا تعداد زیادی از قوانین متناظر را تولید کنند که در صورت عدم استفاده از تکنیکهای هرس، درک آنها سخت خواهد بود.
-
- به منظور ذخیرهسازی کل درخت و استخراج قوانین، به حافظه زیادی نیاز است.
شبکههای عصبی
شبکههای عصبی مصنوعی (ANN) شبکهای عظیم از نرونهای محاسباتی به هم پیوسته هستند که باساختار فرایندی بصورت موازی توزیع شده نشان داده میشوند. ایده اصلی این شبکهها از ساختار شبکههای عصبی بیولوژیک الهام گرفته شده است؛ زمانی که در سال ۱۹۴۳، وارن مک کالچ[۸۸] به همراه والتر پیتس[۸۹] برای توضیح نحوه عملکرد نرونهای بیولوژیک به مدلسازی پرداختند (شهرابی ۱۳۹۰b). اگرچه این مدل فقط دارای یک نرون بود و توانایی محاسباتی محدودی داشت، ولی نقطه عطفی بود برای توسعه و پیشرفت شبکههای عصبی قویتر و پیچیدهتر؛ به گونهای که امروزه شبکههای عصبی کاربرد گستردهای در مسائل پیشبینی، دستهبندی و خوشهبندی دارد.
به طور کلی، شبکههای عصبی توسط سه مولفه زیر معرفی میشوند (Karray and Silva 2004):
-
ساختار
-
- رو به جلو
-
- بازگشتی
-
-
نوع یادگیری
-
- یادگیری با ناظر[۹۰]
-
- یادگیری بدون ناظر[۹۱]
-
- ترکیبی[۹۲]
-
-
تابع فعالسازی[۹۳]
-
- باینری
-
- پیوسته
-
ساختار شبکههای عصبی از تعدادی نرون و اتصالات موزون بین آنها تشکیل شده است (شکل ۲-۴). معمولا این نرونها در لایههایی شامل لایه ورودی، لایههای پنهان و لایه خروجی سازمان مییابند. در ساختار رو به جلو، تمامی اتصالات بین نرونها به سمت جلو بوده و هیچ نرونی به نرونهای لایه قبل اتصال ندارد. ولی چنین اتصالاتی را در ساختار بازگشتی خواهیم داشت. فرایند یادگیری شبکههای عصبی نیز مانند آنچه در دادهکاوی هدایتشده و غیر هدایتشده ذکر شد، میتواند بصورت با ناظر و بدون ناظر باشد. در یادگیری با ناظر، دادههای آموزشی برچسبی به عنوان متغیر هدف دارند ولی یادگیری بدون ناظر فاقد متغیر هدف است. در یادگیری ترکیبی، از هر دو فرایند در شبکه عصبی استفاده میشود. تابع فعالسازی نیز خروجی هر نرون را بر اساس ورودیهای آن و همچنین حد آستانه[۹۴] نرون مشخص میکند. تابع علامت[۹۵] و تابع گامی[۹۶] مثالهایی از تابع فعالسازی باینری هستند و تابع سیگموید[۹۷] و تانژانت هایپربولیک[۹۸] و خطی[۹۹] جزو توابع فعالسازی پیوسته هستند (Karray and Silva 2004).
شکل ۲‑۴ : شبکه عصبی با دو لایه پنهان
مانند دیگر الگوریتمهای یادگیری ماشین، یادگیری شبکههای عصبی نیز با دادههای آموزشی صورت میگیرد. در پایان این مرحله، برای تمامی اتصالات نرونها وزنهای مناسبی قرار داده میشود. سپس، برای ارزیابی آن از دادههای تست استفاده میکنند. شبکه عصبی آموزش دیده شده مانند یک جعبه سیاه کار میکند؛ در واقع درکی از وزنها و لایههای پنهان به دادهکاو نمیدهد. جعبه سیاه بودن شبکههای عصبی از معایب آن به حساب میآید. از دیگر معایب این الگوریتم این است که فقط در مورد دادههای عددی کار میکنند.