در زیر به ذکر مثالهایی از وظایف پیش بینی که توسط فنون داده کاوی میتوانند صورت گیرند اشاره میکنیم :
-
- پیش بینی نرخ سهام یا ارز در بازارهای تجاری.
-
- پیش بینی اینکه کدام مشتری در طول شش ماه آینده از سرویس خاصی استفاده نخواهد کرد.
-
- پیش بینی اینکه کدام مشترک تلفنی درخواست اضافه شدن سرویس جدیدی همچون تماس تلفنی سه نفره یا پست صوتی را به سرویسهای خود خواهد داشت.
-
- پیش بینی متوسط نمره دانشجویان ترم بعد در درس احتمالات.
از نظر فرایندی نیز میتوان فعالیتهای داده کاوی را به سه دسته عمومی تقسیم کرد:
اکتشاف: فرایند جستجو در یک بانک داده برای یافتن الگوهای پنهان بدون داشتن یک فرضیه از پیش تعیین شده درباره اینکه این الگو ممکن است چه باشد. مانند تحلیل هایی که برحسب کالاهای خریداری شده توسط مشتریان صورت می گیرد، این اطلاعات می تواند به بهبود چیدمان فروشگاه و طراحی تبلیغاتی خاص منجر گردد.
( اینجا فقط تکه ای از متن پایان نامه درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. )
مدل پیش بینی: فرایندی که الگوهای کشف شده را از بانک داده استخراج میکند و آنها را برای پیش بینی در آینده به کار می برد. به عنوان مثال الگوهای کشف شده برای پیش بینی فروش در خرده فروشی ها به آنها کمک میکند تا تصمیماتی را در رابطه با موجودی مواد خود اتخاذ کنند.
تحلیلهای دادگاهی: فرایندی که در آن الگوهای استخراج شده برای یافتن عوامل نامعقول و متناقض به کار گرفته میشود. به عنوان مثال در موسسات مالی می توانند با تحلیل داد و ستدهای جعلی گذشته الگوهایی را برای تشخیص و کشف کلاهبرداری در آینده به دست آورند.
در فرایند بالا، دادههای خام از منابع مختلفی جمع آوری میشوند و از طریق استخراج، ترجمه و فرآیندهای بازخوانی به انبار دادهها وارد میشوند. در بخش مهیاسازی دادهها، دادهها از انبار خارج شده و به صورت یک فرمت مناسب برای دادهکاوی درمیآیند. در بخش کشف الگو با روشهای داده کاوی برای پاسخ به سؤالهای خاصی که به ذهن میرسند، الگوریتم هایی استخراج میشود و از این الگوریتمها برای ساخت الگو استفاده میشود. در بخش تجزیه و تحلیل الگو، الگوها به یک دانش مفید و قابل استفاده تبدیل میشوند و پس از بهبود آنها، الگوهایی که کارا محسوب میشوند، در یک سیستم اجرایی به کار گرفته خواهند شد.
۲-۳-۵- داده کاوی و رابطه آن با علم آمار
داده کاوی شباهت زیادی به تحلیلهای آماری دارد، ولی از جهات زیادی با آمار تفاوت داشته و مزیتهای زیادی نسبت به آمار دارد .جالب ترین تفاوت داده کاوی با تحلیلهای آماری این است که در آمار ما فرضیهای طرح میکنیم و با بهره گرفتن از تحلیلهای آماری به اثبات یا رد فرضیه میپردازیم، اما داده کاوی به فرضیه احتیاجی ندارد. در واقع ابزار داده کاوی فرض میکند که شما خود هم نمیدانید به دنبال چه میگردید و این نکتهای است که باعث میشود کار آمدی داده کاوی در مواقع بروز مشکل نمایان شود. برای مثال ما در آمار فرض میکنیم که دو گروه با هم ارتباط دارند، سپس با بهره گرفتن از ضریب هم بستگی پیرسون مشخص می کنیم که ارتباط وجود دارد یا خیر. ولی داده کاوی بدون توجه به اینکه ما اینگونه فرضی داشته باشیم یا نه با کاوش میان دادهها اگر ارتباط مخفی معنی داری وجود داشته باشد آن را به اطلاع ما میرساند. تفاوت بعدی آمار و داده کاوی در این است که آمار فقط می تواند از داده های عددی استفاده کند ولی داده کاوی از داده های غیر عددی هم استفاده میکند. برنامههای کاربردی که در زمینه تجزیه و تحلیل اطلاعات به کار میروند از امکاناتی چون پرس و جوی ساخت یافته که در بسیاری از بانکهای اطلاعاتی یافت میشود و از ابزارهای تجزیه و تحلیل آماری برخوردار اند، اما برنامههای مربوط به داده کاوی در عین برخورداری از این قابلیتها از نظر نوع با آنها تفاوت دارند. بسیاری از ابزارهای ساده برای تجزیه و تحلیل دادهها روشی بر پایه راستی آزمایی را به کار میبرند که در آن فرضیه بسط داده شده، آنگاه دادهها برای تایید یا رد آن بررسی میشوند. به طور مثال ممکن است این نظریه مطرح شود که فردی که یک چکش خریده حتما یک بسته میخ هم خواهد خرید. کارایی این روش به میزان خلاقیت کاربر برای اریه فرضیه های متنوع و همچنین ساختار برنامه بکار رفته بستگی دارد. در مقابل در داده کاوی روشهایی برای کشف روابط بکار برده میشوند و به کمک الگوریتمهایی روابط چند بعدی بین داده ها تشخیص داده شده و آنهایی که یکتا یا رایج هستند شناسایی میشوند. به طور مثال در یک فروشگاه سخت افزار ممکن است بین خرید ابزار توسط مشتریان با تملک خانه شخصی یا نوع خودرو، سن، شغل، میزان درآمد یا فاصله محل اقامت آنها با فروشگاه رابطهای برقرار شود. تفاوتهای دیگری هم میان آمار و داده کاوی وجود دارد، ولی از آنجایی که هدف این بخش تنها معرفی داده کاوی است و نمیخواهیم به مقایسه داده کاوی و آمار بپردازیم، از ذکر آنها خودداری میکنیم.
۲-۴- شبکه عصبی
۲-۴-۱- معرفی:
در اواخر سال ۱۹۴۰ میلادی پیشگامان علم شبکههای عصبی، مککلوچ و پیتس[۸۹] در رابطه با توانایی ارتباط درونی[۹۰] مدل یک نرون، مطالعاتی انجام دادند. آنها یک مدل محاسباتی بر مبنای یک عنصر شبیهنرونی[۹۱] ساده ارائه نمودند. در همان زمان دانشمندان دیگری مثل دونالد هب[۹۲] نیز بر روی قوانین تطبیق[۹۳] در سیستمهای نرونی کار میکردند.
در سال ۱۹۴۹، دونالد هب، یک قانون یادگیری برای تطبیق ارتباطات بین نرونهای مصنوعی ارائه نمود. اندکی بعد در سال ۱۹۵۸ روزنبلات[۹۴] ، پرسپترون[۹۵] را مطرح کرد و سپس تئوری تفکیک آماری[۹۶] را برمبنای آن توسعه داد.
قدم بزرگ بعدی کشف فرمولبندی قانون یادگیری جدید بهوسیله ویدرو و هاف[۹۷] در طرحی موسوم به آدالاین[۹۸] بود. در سال ۱۹۷۱ وربوس[۹۹] ، یک الگوریتم پسانتشار را در رساله دکتری خود منتشر کرد و در نهایت روزنبلات این تکنیک را در ۱۹۸۶ کشف مجدد نمود.
۲-۴-۲- کاربرد شبکه های عصبی
امروزه شبکههای عصبی مصنوعی به طور گستردهای، با هدف دستیابی به کارایی شبه انسانی مطالعه میشوند. این شبکهها از تعدادی عناصر محاسباتی خطی و غیرخطی که به طور موازی عمل میکنند، تشکیل شدهاند.
شبکههای عصبی مصنوعی تحت عناوین مختلفی همچون مدلهای پیوندگرا[۱۰۰]، مدلهای پردازش موازی توزیعشده و سیستمهای نورومورفیک[۱۰۱] مطرح گردیدهاند. ایده اصلی مدل پیوندگرا به فیلسوف بزرگ یونان باستان ارسطو برمیگردد. وی مفهومی را مطرح کرد که در آن تعدادی از عناصر ساده مرتبط بههم بهواسطه یک سری مکانیزمهای خاص، منجر به پیدایش حافظه میشدند.
به طور کلی میتوان گفت که شبکههای عصبی از دو دیدگاه مورد مطالعه قرار میگیرند. دیدگاه نخست مربوط به علوم شناختی[۱۰۲] است و دیدگاه دوم که در واقع به تئوری پردازش اطلاعات برمیگردد، همان پیوندگرایی است. شبکههای عصبی مطرح شده در این تحقیق نیز مربوط به دیدگاه دوم از نقطه نظر مهندسی میباشد.
۲-۴-۳- تعریف پایه شبکه های عصبی
اساس شبکه های عصبی بر پایه ساختار آنها بنا شده است، که این ساختار شامل یک یا چند لایه ، که هر لایه دارای تعداد نرون که این نرون ها از طریق وزن ها به یکدیگر متصل می باشند. هر نرون دارای ورودی (ها) و خروجی (ها) می باشند که هر نرون بر اساس ورودی (ها)محاسبه و خروجی (ها)لازم را تولید میکند. عملکرد کلی شبکه های عصبی بر اساس ساختار شبکه عصبی، که شامل ساختار پیش رو(ساختار اول) می باشد، که در آن، هیچ حلقهای در ساختار شبکه وجود ندارد، شکل ۲-۲ و ساختار بر گشتی(ساختار دوم)، که در آن بهواسطه ارتباطات پسخور[۱۰۳]، حلقههایی در ساختار شبکه به وجود میآید، شکل ۲-۳ ، این ساختار ها شامل چند لایه و تعدادی نرون در لایه ها می باشند. لذا از این منظر میتوان شبکههای عصبی را به دو گروه عمده دستهبندی نمود.
ورودی ها
لایه میانی
لایه خروجی
W1
W2
شکل۲-۲ : ساختار شبکه عصبی پیش رو (غیر بازگشتی) باسه لایه ،لایه ورودی ، لایه میانی و لایه خروجی
ورودی ها
لایه میانی
لایه خروجی
W1
W2
شکل۲-۳ : ساختار شبکه عصبی برگشتی با سه لایه ، لایه های دوم و سوم برگشتی می باشند.
شبکههای عصبی پیشرو ایستا هستند. بدین معنی که یک ورودی معین تنها یک مجموعه از خروجیها را میتواند تولید کند. در مقابل شبکههای عصبی بر گشتی، بهواسطه وجود حلقه در ساختارشان حافظهدار هستند و این قابلیت در آن ها وجود دارد که اطلاعات موقتاً در حافظه آنها ذخیره شوند.
شبکههای عصبی بهعنوان یکی از قدرتمندترین پردازشگرهای غیرخطی سیگنال، برای طیف وسیعی از کاربردهای پردازش سیگنال کاربرد دارند.
در مهندسی عمران شبکههای عصبی در تشخیص آسیبهای سازهای[۱۰۴]، شناسائی سیستم سازهای[۱۰۵]، مدلسازی رفتار مواد[۱۰۶]، بهینه سازی سازهای[۱۰۷]، کنترل سازهای[۱۰۸]، طرح اختلاط بتن[۱۰۹]و… مورد استفاده قرار گرفته است.
در سالهای اخیر، شبکههای عصبی مصنوعی، بهعنوان ابزارهای رگرسیون[۱۱۰]، کارائی فوقالعادهای از خود نشان دادهاند. علیالخصوص در کاربردهایی همچون شناسائی الگو[۱۱۱] و تقریب توابع[۱۱۲]. این شبکهها قادرند روابط پیچیده غیرخطی بین متغیرهای ورودی و خروجی را در یک سیستم یاد بگیرند بدون اینکه دانشی قبلی نسبت به آن پدیده یا سیستم داشته باشند .
۲-۴-۴- ویژگی های شبکه عصبی
۲-۴-۴-۱- ساختار نرون
نرون یک واحد پردازنده اطلاعات است. درواقع کوچکترین واحد تشکیل دهنده شبکههای عصبی نرون میباشد. بلوک دیاگرام شکل۲-۴ مدل یک نرون پرکاربرد را نشان میدهد. عناصر اصلی تشکیل دهنده یک نرون عبارتند از:
۱- مجموعهای از سیناپسها یا لینکهای ارتباطی، که به هرکدام وزنی اختصاص داده میشود. سیگنال ورودی از طریق وزن به هسته مرکزی انتقال داده می شود. برخلاف سیناپسهای مغز انسان، وزن سیناپسی در نرونهای مصنوعی میتواند هم مقادیر مثبت و هم مقادیر منفی را دربرگیرد.
۲- یک جمع کننده، برای جمع کردن سیگنالهای وزندار
۳- تابع فعالسازی[۱۱۳]، برای محدود کردن دامنه خروجی نرون در نظر گرفته می شود. معمولاً دامنه خروجی نرمالسازی شده نرون بین یا درنظر گرفته میشود.