پایان نامه مقطع کارشناسی ناپیوسته
رشته کامپیوتر
دادهکاوی (Data Mining) فرایندی برای استخراج دانش، الگوها و روابط مفید از حجم عظیم دادههاست که با کشف دانش، پایگاه داده، انباره داده، الگوریتمهای دادهکاوی و سیستمهای تصمیمیار ارتباط دارد.
مقدمه:
دادهکاوی یکی از روشهای مهم برای استخراج دانش و الگوهای مفید از حجم زیادی از دادههاست. افزایش توانایی بشر در تولید و جمعآوری دادهها، استفاده گسترده از بارکد در تولیدات تجاری، بهکارگیری رایانه در کسبوکار، علوم و خدمات دولتی و همچنین پیشرفت ابزارهای جمعآوری داده، موجب افزایش سریع حجم دادههای ذخیرهشده شده است. گسترش وب و اینترنت نیز این روند را تشدید کرده و حجم بسیار زیادی از داده و اطلاعات را در اختیار سازمانها و کاربران قرار داده است. در نتیجه، نیاز به فناوریها و ابزارهای خودکاری ایجاد شده است که بتوانند دادههای فراوان را به اطلاعات و دانش تبدیل کنند. دادهکاوی در پاسخ به همین نیاز مطرح شده است.
در یک تعریف غیررسمی، دادهکاوی فرآیندی خودکار برای استخراج الگوهایی است که دانش را بازنمایی میکنند و این دانش به صورت ضمنی در پایگاههای داده عظیم، انبارههای داده و دیگر مخازن بزرگ اطلاعات ذخیره شده است. اهمیت دادهکاوی از آنجا ناشی میشود که در حجم بالای دادهها، تشخیص الگوها و روابط منطقی برای کاربران دشوار است و انجام این کار به صورت دستی نیز میتواند هزینه انسانی و مادی زیادی داشته باشد. پرسوجوهای ساده SQL و ابزارهای معمول گزارشگیری، اگرچه امکان دریافت اطلاعات و بررسی روابط میان دادهها را فراهم میکنند، اما در مواجهه با حجم انبوه دادهها برای کشف الگوهای مفید کافی نیستند. به همین دلیل روشهایی مورد نیاز هستند که با کمترین دخالت کاربر و به صورت خودکار، الگوها و روابط منطقی موجود در دادهها را کشف کنند.
دادهکاوی یکی از مهمترین روشهای کشف دانش است که الگوهای مفید موجود در دادهها را با حداقل دخالت کاربران شناسایی میکند و اطلاعات حاصل را در اختیار کاربران و تحلیلگران قرار میدهد. این اطلاعات میتواند مبنایی برای اتخاذ تصمیمات مهم و حیاتی در سازمانها باشد. اصطلاح دادهکاوی معمولاً زمانی مطرح میشود که با حجم بزرگی از دادهها، در حد مگا یا ترابایت، روبهرو باشیم. هرچه حجم دادهها بیشتر و روابط میان آنها پیچیدهتر باشد، دسترسی به اطلاعات نهفته دشوارتر میشود و نقش دادهکاوی به عنوان یکی از روشهای کشف دانش اهمیت بیشتری پیدا میکند.
دادهکاوی یک حوزه میانرشتهای است و از چندین رشته علمی و فناوری بهره میگیرد. تکنولوژی پایگاه داده، هوش مصنوعی، یادگیری ماشین، شبکههای عصبی، آمار، سیستمهای مبتنی بر دانش، حصول دانش، بازیابی اطلاعات، محاسبات سرعت بالا و بازنمایی بصری داده از جمله حوزههایی هستند که در ارتباط با دادهکاوی قرار دارند. بنابراین دادهکاوی تنها یک روش ساده برای تحلیل داده نیست، بلکه مجموعهای از مفاهیم و روشهای مرتبط با پردازش، تحلیل و کشف الگو از دادههای حجیم را دربرمیگیرد.
اصطلاح Data Mining به استخراج اطلاعات نهان، الگوها و روابط مشخص از حجم زیادی از دادههای یک یا چند بانک اطلاعاتی بزرگ اشاره دارد. اطلاعات استخراجشده میتواند به نتایجی منجر شود که در حالت معمول و با بررسی مستقیم دادهها قابل مشاهده نیستند. در تعریف دادهکاوی بر بزرگ بودن بانکهای اطلاعاتی و حجم زیاد دادههای مورد پردازش تأکید میشود؛ زیرا تحلیل حجم کم دادهها لزوماً به نتایج قابل قبول مورد نظر دادهکاوی منجر نمیشود. ابزارهای Data Mining همچنین میتوانند برای پیشبینی و توصیف مقادیر متغیرها مورد استفاده قرار گیرند و در فرایندهای تصمیمگیری متکی بر اطلاعات و دانش کاربرد داشته باشند.
در متون آکادمیک تعاریف مختلفی برای دادهکاوی ارائه شده است. در این تعاریف، دادهکاوی به عنوان فرایند استخراج اطلاعات معتبر، ناشناخته، قابل فهم و قابل اعتماد از پایگاه دادههای بزرگ، تجزیه و تحلیل نیمهخودکار پایگاههای داده بزرگ برای یافتن الگوهای مفید، جستجو در پایگاه داده برای یافتن الگوها، یافتن دانش از مقادیر عظیم دادههای ذخیرهشده در پایگاه داده و انباره داده و همچنین استخراج دانش جدید و قابل استناد از پایگاه دادههای بزرگ معرفی شده است. وجه مشترک این تعاریف، تأکید بر استخراج دانش، تحلیل دادهها و یافتن روابط و الگوهای موجود میان دادههاست.
دادهکاوی و کشف دانش در پایگاه داده یا KDD در بسیاری موارد به صورت مترادف مورد استفاده قرار میگیرند، اما دادهکاوی در واقع مرحلهای از فرایند کشف دانش است. کشف دانش در پایگاه داده فرایندی برای شناسایی الگوها و مدلهای درست، ساده، مفید و قابل فهم در دادههاست و دادهکاوی شامل الگوریتمهای مخصوصی است که تحت محدودیتهای محاسباتی قابل قبول، الگوها یا مدلها را در داده کشف میکنند. از این دیدگاه، دادههای حجیم به تنهایی ارزش محدودی دارند و ارزش اصلی در دانش نهفته در آنهاست؛ به همین دلیل در متن، دادهکاوی با عنوان تحلیل دادهای ثانویه نیز مطرح شده است.
تاریخچه دادهکاوی با تکامل سیستمهای جمعآوری، مدیریت و ذخیره داده ارتباط مستقیم دارد. اگرچه واژه دادهکاوی تا اوایل دهه نود مفهومی نداشت و به کار برده نمیشد، زمینههای ایجاد آن از دهه شصت و پیش از آن با شکلگیری سیستمهای جمعآوری و مدیریت داده و سیستمهای مدیریت پایگاه داده فراهم شد. در دهه هفتاد، مدلهای دادهای برای پایگاههای سلسلهمراتبی، شبکهای و بهویژه رابطهای توسعه یافتند و مفاهیمی مانند شاخصگذاری و سازماندهی دادهها شکل گرفتند. در اوایل دهه هشتاد نیز زبان پرسوجوی SQL ایجاد شد تا کاربران بتوانند گزارشها و فرمهای اطلاعاتی مورد نیاز خود را ایجاد کنند.
در دهه هشتاد، توسعه سیستمهای پایگاهی پیشرفته و ایجاد پایگاههای شیگرا، کاربردگرا و فعال، باعث توسعه گسترده و کاربردی شدن سیستمهای پایگاهی شد. سیستمهای مدیریت پایگاه دادهای مانند Oracle، DB2 و Sybase برای پردازش حجم زیادی از اطلاعات مورد استفاده قرار گرفتند. یکی از مهمترین جنبههای معرفی دادهکاوی، کشف دانش از پایگاه داده یا KDD است. در بسیاری موارد، Data Mining و KDD مترادف یکدیگر در نظر گرفته شدهاند، اما دادهکاوی بخشی از فرایند KDD است و هدف آن کشف الگوهایی در پایگاه داده و استفاده از این الگوها در تصمیمگیریهای مهم است. این فرایند در نهایت با سیستمهای تصمیمیار یا DSS ارتباط پیدا میکند.
مفهوم دادهکاوی برای نخستین بار در کارگاه IJCAI در زمینه KDD توسط Shapir مطرح شد و در سالهای 1991 تا 1994، کارگاههای KDD مفاهیم جدیدی را در این حوزه ارائه کردند. پیدایش دادهکاوی را میتوان نتیجه سیر تکاملی طبیعی فناوری اطلاعات و صنعت پایگاه داده دانست. این سیر از جمعآوری دادهها و ایجاد پایگاه داده، مدیریت داده و در نهایت تحلیل و فهم دادهها شکل گرفته است. توسعه فناوری پایگاه داده و استفاده گسترده از آن در کاربردهای مختلف باعث جمعآوری حجم عظیمی از داده شد و در نتیجه نیاز به ابزارهای قدرتمند برای تحلیل دادهها افزایش یافت. مسئله اصلی این بود که با وجود فراوانی داده، اطلاعات و دانش سودمند به اندازه کافی در دسترس نبود.
دادهکاوی در پاسخ به شکاف میان داده و اطلاعات شکل گرفته است. ابزارهای دادهکاوی دادهها را تحلیل میکنند و الگوهای دادهای را کشف میکنند که میتوان از آنها در تعیین استراتژی کسبوکار، ایجاد پایگاه دانش و تحقیقات علمی و پزشکی استفاده کرد. بنابراین هدف اصلی، تبدیل دادههای فراوان و در بسیاری موارد کمارزش به دانش ارزشمند است. متن دادهکاوی را به صورت ساده استخراج دانش از مقدار زیادی داده خام معرفی میکند و توضیح میدهد که نامگذاری Data Mining بر اهمیت یافتن مجموعه کوچکی از قطعات ارزشمند در میان حجم بسیار بزرگی از مواد خام تأکید دارد.
یک سیستم دادهکاوی به طور نمونه از چند جزء اصلی تشکیل میشود. نخست، پایگاه داده، انباره داده یا دیگر مخازن اطلاعات قرار دارند که میتوانند شامل مجموعهای از پایگاههای داده، انبار داده، صفحههای گسترده یا دیگر انواع مخازن اطلاعات باشند. دوم، سرویسدهنده پایگاه داده یا انبار داده قرار دارد که مسئول بازیابی دادههای مرتبط براساس نوع درخواست دادهکاوی کاربر است. سوم، پایگاه دانش قرار دارد که از دانش زمینه تشکیل شده و برای کمک به جستجو یا ارزیابی الگوهای یافتهشده مورد استفاده قرار میگیرد.
جزء مهم دیگر، موتور دادهکاوی است که بخش اصلی سیستم دادهکاوی محسوب میشود و میتواند شامل پیمانههایی برای توصیف، ارتباط، کلاسبندی، تحلیل خوشهها و تحلیل تکامل و انحراف باشد. پیمانه ارزیابی الگو نیز با استفاده از معیارهای جذابیت، الگوهای کشفشده را ارزیابی میکند و با تمرکز بر الگوهای جذاب و استفاده از حد آستانه جذابیت، الگوهای مناسب را مورد بررسی قرار میدهد. واسط کاربر گرافیکی نیز ارتباط میان کاربر و سیستم دادهکاوی را برقرار میکند و امکان پرسوجو، مرور شمای پایگاه داده یا انبار داده، ارزیابی الگوهای کشفشده و نمایش بصری آنها را فراهم میسازد.
در نهایت، انجام فرایند دادهکاوی موجب استخراج دانش، ارتباط یا اطلاعات سطح بالا از پایگاه داده میشود. دانش کشفشده میتواند از دیدگاههای مختلف مورد بررسی قرار گیرد و در سیستمهای تصمیمیار، کنترل فرایند، مدیریت اطلاعات و پردازش پرسوجو مورد استفاده قرار گیرد. همچنین در ادامه متن، قوانین ارتباطی و روش دادهکاوی مبتنی بر سبد خرید، الگوریتمهای Apriori و FP-Growth و مقایسه آنها، و همچنین وبکاوی و متنکاوی به عنوان مباحث مرتبط با دادهکاوی معرفی شدهاند.