پایان نامه رشته مهندسی کامپیوتر با عنوان طراحی یک زبان سطح بالای انعطافپذیر برای دادهکاوی اطلاعات
پروسهی كشف دانش از پایگاه داده، یك پروسهی علمی برای شناسایی الگوهای معتبر، نوین، بالقوه مفید و قابل فهم از دادهها میباشد |
دسته بندی | کامپیوتر و IT |
فرمت فایل | doc |
حجم فایل | 78 کیلو بایت |
تعداد صفحات فایل | 108 |
پایان نامه رشته مهندسی کامپیوتر با عنوان طراحی یک زبان سطح بالای انعطافپذیر برای دادهکاوی اطلاعات
چکیده :
پروسهی كشف دانش از پایگاه داده، یك پروسهی علمی برای شناسایی الگوهای معتبر، نوین، بالقوه مفید و قابل فهم از دادهها میباشد. مهمترین بخش این پروسه، کاوش دادهها میباشد که با استفاده از الگوریتمهای مشخصی یك سری الگوها را از پایگاه داده استخراج میكند.در این پروژه هدف ما طراحی یک زبان سطح بالای انعطافپذیر برای دادهکاوی اطلاعات میباشد.
این کار علاوه بر کمک به محققان این زمینه برای بررسی روشهای جدید و تست سریع و کارای الگوریتمهای کاوش، امکان استفاده از این روشها را به سادگی برای کسانی که اطلاعات اندکی در این زمینه دارند، نیزفراهم میآورد.در این رساله پروسهی كشف دانش از پایگاه داده، همراه با مراحل آن، زبانهای دادهکاوی موجود و انواع معماریهای ممکن برای این زبانها بررسی شده است. سپس معماری مورد نظر ارایه شده است. در ادامه سعی شده است تا روشهای مختلف کاوش، عام شده و جهت بکارگیری در زبان Flexible Query Generator (FlexQG)، آماده شوند.پس از تکمیل گرامر زبان، با هدفهای مورد نظر، جهت تکمیل کار، دو نمونه از روشهای کاوش کلی، با زبان SQL، پیادهسازی شدهاند.
کلمات کلیدی:
زبان FlexQG
خوشه بندی
دادهکاوی اطلاعات
شناسایی الگوهای معتبر
طراحی یک زبان سطح بالا
مقدمه
رشد روزافزون و انفجاری دادهها در عصر حاضر، پایگاههای داده را به عنوان جز لاینفکی در همهی زمینههای کامپیوتر قرار داده است. اما با این سیل عظیم اطلاعات و نیازهای گستردهی امروزی تنها نمیتوان به اطلاعات بازیابی شوندهای از بانکهای اطلاعاتی که تنها یك كپی از اطلاعات ذخیره شده در پایگاه داده هستند، دل، خوش کرد، بلکه باید راههایی برای استخراج دانش موجود در این دادهها پیدا کرد.به این منظور پروسهی كشف دانش از پایگاه داده مطرح شد که یك پروسهی علمی برای شناسایی الگوهای معتبر، نوین، بالقوه مفید و قابل فهم از دادهها میباشد. مهمترین بخش این پروسه، کاوش دادهها میباشد که با استفاده از الگوریتمهای مشخصی یك سری الگوها را از پایگاه داده استخراج میكند.در این پروژه هدف ما طراحی یک زبان سطح بالای انعطافپذیر برای دادهکاوی اطلاعات میباشد. این کار علاوه بر کمک به محققان این زمینه برای بررسی روشهای جدید و تست سریع و کارای الگوریتمهای کاوش، امکان استفاده از این روشها را به سادگی برای کسانی که اطلاعات اندکی در این زمینه دارند، را نیزفراهم میآورد.
فهرست مطالب
۱- مقدمه۱
۲- پروسهی كشف دانش از پایگاه داده۳
۱-۲- ویژگیهای KDD۴
۱-۱-۲- استخراج دادهها۴
۲-۱-۲- آماده کردن دادهها۵
۳-۱-۲- مهندسی دادهها۵
۴-۱-۲- مهندسی الگوریتم و تعیین استراتژیهای کاوش۵
۵-۱-۲- اجرای الگوریتم كاوش و ارزیابی نتایج۶
۲-۲- زبانهای پرسشی دادهکاوی : ۶
-۳ معماری FlexQG۹
۱-۳- دلایل اقبال و رویكرد ما به روشها و الگوریتمهای بر پایهی SQL:۱۰
۲-۳- چه مشكلاتی در سر راه پیادهسازی این رهیافت وجود دارند؟ ۱۱
۳-۳- انواع معماریهای ممکن۱۲
۱-۳-۳- خواندن مستقیم از DBMS۱۲
۲-۳-۳- استفاده از توابع تعریف كاربر۱۲
۴-۳- معماری مورد استفاده۱۳
۵-۳- روشهای کاوش مورد پشتیبانی۱۳
۴- آمادهسازی دادهها۱۵
۱-۴- جمعآوری دادهها۱۵
۲-۴- پیشپردازش دادهها۱۵
۱-۲-۴- طبقهبندی کردن ویژگیهای عددی۱۵
۲-۲-۴- تبدیل ویژگیهای رشتهای با مقادیر خاص به ویژگی عددی۱۶
۳-۲-۴- پاكسازی دادهها۱۷
۴-۲-۴- گرامر آمادهسازی دادهها در FlexQG۱۷
۵- کلاسهبندی و پیشگویی دادهها۱۸
۱-۵- انواع روشهای کلاسهبندی۱۹
۲-۵- مراحل یک الگوریتم کلاسهبندی۱۹
۳-۵- ارزیابی روشهای کلاسهبندی۲۰
۴-۵- روش درخت تصمیم در کلاسهبندی۲۰
۱-۴-۵- انواع درختهای تصمیم۲۱
۱-۱-۴-۵- (Classification and Regression Tree) CART۲۱
۱-۱-۱-۴-۵- نحوهی هرس كردن درخت۲۲
۲-۱-۴-۵- (Chi - Squared Automatic Iteration Decision tree) CHAID۲۲
۱-۲-۱-۴-۵- نحوه محاسبهی χ2۲۳
۲-۲-۱-۴-۵- شرط پایان۲۳
۵-۵- الگوریتمهای کلاسهبندی و FlexQG۲۳
۶-۵- گرامر پیشنهادی۲۵
۶- كاوش قوانین وابسته سازی۲۶
۱-۶- اصول كاوش قوانین وابسته سازی۲۷
۲-۶- اصول استقرا در كاوش قوانین وابسته سازی۲۷
۳-۶- كاوش قوانین وابسته سازی و FlexQG۲۹
۴-۶- گرامر پیشنهادی برای کاوش قوانین وابستهسازی۳۰
۷- خوشهبندی۳۱
۱-۷- تعریف فرآیند خوشهبندی : ۳۲
۲-۷- کیفیت خوشهبندی۳۲
۳-۷- روش ها و الگوریتمهای خوشهبندی : ۳۳
۱-۳-۷- الگوریتمهای تفكیك۳۳
۲-۳-۷- الگوریتمهای سلسلهمراتبی۳۴
۳-۳-۷- روشهای متكی برچگالی۳۵
۴-۳-۷- روشهای متكی بر گرید۳۵
۵-۳-۷- روشهای متكی بر مدل۳۶
۶-۳-۷- تكنیكهای خوشهبندی دیگر۳۶
۴-۷- دستهبندی ویژگیهای الگوریتمهای خوشهبندی۳۶
۵-۷- الگوریتمهای خوشهبندی و FlexQG۳۷
۱-۵-۷- بررسی پارامترهای لازم برای الگوریتمهای خوشهبندی تفکیکی۳۷
۲-۵-۷- بررسی پارامترهای لازم برای الگوریتمهای خوشهبندی سلسله مراتبی۳۹
۳-۵-۷- گرامر پیشنهادی۳۹
۸- الگوریتم کلی کاوش قوانین وابستهسازی، با استفاده از رهیافت SQL۴۰
۱-۸- قوانین وابستهسازی۴۰
۲-۸- کاوش اجزای وابسته۴۰
۳-۸- الگوریتم Apriori۴۱
۴-۸- وابسته سازی در SQL۴۲
۵-۸- شمارش پشتیبانی برای پیدا كردن مجموعه عناصر تکراری۴۳
۹- پیادهسازی چارچوب کلی الگوریتمهای خوشهبندی تفکیکی، بر پایهی SQL۴۶
۱-۹- ورودیهای الگوریتم۴۶
۲-۹- خروجیهای الگوریتم۴۶
۳-۹- مدل احتمال به کار رفته۴۶
۴-۹- الگوریتم EM۴۸
۵-۹- قدم اول: سادهسازی و بهینه کردن الگوریتم۴۹
۶-۹- پیادهسازی SQL استاندارد الگوریتم EM :۴۹
۱۰- نتیجهگیری و پیشنهادات۵۳
پیوست الف: گرامر کلی زبان FlexQG۵۴
مراجع و منابع۵۸