پایان نامه بررسی ومطالعه ی کامل داده کاوی و داده کاوی با SQL SERVER2005
مقدمه:
امروزه با گسترش سيستم هاي پايگاهي و حجم بالاي داده ها ي ذخيره شده در اين سيستم ها ، نياز به ابزاري است تا بتوان داده هاي ذخيره شده را پردازش کرد و اطلاعات حاصل از اين پردازش را در اختيار کاربران قرار داد.
داده کاوي يکي از مهمترين روش ها ی کشف دانش است که به وسيله آن الگوهاي مفيد در داده ها با حداقل دخالت کاربران شناخته مي شوند و اطلاعاتي را در اختيار کاربران و تحليل گران قرار مي دهند تا براساس آنها تصميمات مهم و حياتي در سازمانها اتخاذ شوند.داده کاوی را تحلیل گران با اهداف گوناگونی از قبیل کلاس بندی, پیش بینی, خوشه بندی ,تخمین انجام می دهند. برای کلاس بندی, مدل هاو الگوریتم هایی مانند قاعده ی بیز, درخت تصمیم, شبکه ی عصبی, الگوریتم ژنتیک مطرح شده است.برای پیش بینی مدل رگرسیون خطی ومنطقی و برای خوشه بندی الگوریتم های سلسله مراتبی و تفکیکی, وبرای تخمین مدل های درخت تصمیم و شبکه ی عصبی مطرح می شود. در فصل دوم و سوم با الگوریتم ژنتیک که یکی از الگوریتم های داده کاوی و با شبکه ی عصبی که یکی از مدل های داده کاوی هستند آشنا می شویم .درفصل چهارم به محاسبات نرم و برخی از اجزای اصلی ان و نقش آنها در داده کاوی می پردازیم.
در فصل پنجم با ابزارهای داده کاوی آشنا می شویم . برای داده کاوی ابزارهای متنوعی وجود دارد. می توان ابزارداده کاوی را با تطبیق آن ابزار با داده های مسئله و با توجه به محیط داده ای که می خواهید از آن استفاده کنید، و امکاناتی که آن ابزار دارد انتخاب کنید.وسپس به داده کاوی با SQLSERVER2005 می پردازیم .ودرفصل ششم به داده کاوی با SQL SERVER2005 روی بانک اطلاعاتی دانشگاه آزاد قوچان پرداختیم.
کلمات کلیدی ،کلاس بندی ، خوشه بندی ، پیش بینی ، تخمین
فصــل اول
مقدمه ای بر داده کاوی [1]
1-1–مقدمه
امروزه با گسترش سيستم هاي پايگاهي و حجم بالاي داده ها ي ذخيره شده در اين سيستم ها ، نياز به ابزاري است تا بتوان داده هاي ذخيره شده را پردازش کرد و اطلاعات حاصل از اين پردازش را در اختيار کاربران قرار داد .با استفاده از ابزارهاي گوناگون گزارش گيري معمولي ، مي توان اطلاعاتي را در اختيار کاربران قرار داد تا بتوانند به نتيجه گيري در مورد داده ها و روابط منطقي ميان آنها بپردازند اما وقتي که حجم داده ها خیلی بالا باشد ، کاربران هر چند زبر دست و با تجربه باشند نمي توانند الگوهاي مفيد را در ميان حجم انبوه داده ها تشخيص دهند و يا اگر قادر به اين کار هم با شوند ، هزينه عمليات از نظر نيروي انساني و مادي بسيار بالا است .از سوي ديگر کاربران معمولا فرضيه اي را مطرح مي کنند و سپس بر اساس گزارشات مشاهده شده به اثبات يا رد فرضيه مي پردازند ، در حالي که امروزه نياز به روشهايي است که اصطلاحا به کشف دانش[2] بپردازند يعني با کمترين دخالت کاربر و به صورت خودکار الگوها و رابطه هاي منطقي را بيان نمايند .
داده کاوي[3] يکي از مهمترين اين روش ها است که به وسيله آن الگوهاي مفيد در داده ها با حداقل دخالت کاربران شناخته مي شوند و اطلاعاتي را در اختيار کاربران و تحليل گران قرار مي دهند تا براساس آنها تصميمات مهم و حياتي در سازمانها اتخاذ شوند .
1-2-عامل مسبب پيدايش داده کاوی
اصلی ترين دليلی که باعث شده داده کاوی کانون توجهات در صنعت اطلاعات قرار بگيرد، مساله در دسترس بودن حجم وسيعی از داده ها و نياز شديد به اينکه از اين داده ها, اطلاعات و دانش سودمند استخراج کنيم. اطلاعات و دانش بدست آمده در کاربردهای وسيعی مورد استفاده قرار می گيرد.
داده کاوی را می توان حاصل سير تکاملی طبيعی تکنولوژی اطلاعات دانست، که اين سير تکاملی ناشی از يک سير تکاملی در صنعت پايگاه داده می باشد، نظير عمليات جمع آوری داده ها وايجاد پايگاه داده، مديريت داده و تحليل و فهم داده ها.
تکامل تکنولوژی پايگاه داده و استفاده فراوان آن در کاربردهای مختلف سبب جمع آوری حجم فراوانی داده شده است. اين داده های فراوان باعث ايجاد نياز برای ابزارهای قدرتمند برای تحليل داده ها گشته، زيرا در حال حاضر به لحاظ داده ثروتمند هستيم ولی دچار کمبود اطلاعات می باشيم.
ابزارهای داده کاوی داده ها را آناليز می کنند و الگوهای داده ها را کشف می کنند که می توان از آن در کاربردهايی نظير تعيين استراتژی برای کسب و کار، پايگاه دانش[4] و تحقيقات علمی و پزشکی، استفاده کرد. شکاف موجود بين داده ها و اطلاعات سبب ايجاد نياز برای ابزارهای داده کاوی شده است تا داده های بی ارزش را به دانشی ارزشمند تبديل کنيم .
1
-3-داده كاوي و مفهوم اكتشاف دانش (K.D.D)
با حجم عظيم داده هاي ذخيره شده در فايلها، بانكهاي اطلاعاتي و ساير بانك هاي داده اي، توسعه ي ابزارهايي براي تحليل و شايد تفسير چنين داده هايي و براي استخراج علوم شگفت انگيزي كه مي توانند در تصميم گيري مفيد باشند، امري بسيار مهم و ضروري است. داده كاوي با عنوان كشف دانش در پايگاه هاي داده (KDD) شناخته ميشود. كشف علومي كه قبلا ناشناخته بودهاند و اطلاعاتي كه در بانكهاي اطلاعاتي موجود بوده و ذاتا بالقوه و مفيد هستند.
با وجود آنكه داده كاوي و كشف دانش در پايگاههاي داده مترادف همديگر هستند، ولي در اصل، داده كاوي ذاتاً بخشي و تنها قسمتي جزئي از فرآيند كشف دانش است. فرآيند كشف دانش در بر گيرنده ي چندين مرحله مي باشد كه از اطلاعات خام، گونه هايي از علوم جديد را بدست مي دهد. مراحل كشف دانش به قرار زير است:
1- پاكسازي داده ها : در اين فاز داده هاي اضافي و نامربوط از مجموعه داده ها حذف مي شوند.(داده های ناکامل) [2]
2-يکپارچه سازی داده ها[5] : چندين منبع داده ترکيب می شوند،
3-انتخاب داده ها : انبار داده ها شامل انواع مختلف و گوناگوني از داده ها است که همه آنها در داده کاوي مورد نياز نيستند . براي فرايند داده کاوي بايد داده ها ي مورد نياز انتخاب شوند . به عنوان مثال در يک پايگاه داده هاي مربوط به سيستم فروشگاهي ، اطلاعاتي در مورد خريد مشتريان ، خصوصيات آماري آنها ، تامين کنندگان ، خريد ، حسابداري و … وجود دارند . براي تعيين نحوه چيدن قفسه ها تنها به داده ها يي در مورد خريد مشتريان و خصوصيات آماري آنها نياز است . حتي در مواردي نياز به کاوش در تمام محتويات پايگاه نيست بلکه ممکن است به منظور کاهش هزينه عمليات ، نمونه هايي از عناصر انتخاب و کاوش شوند .
4-تبديل داده ها : هنگامي که داده هاي مورد نياز انتخاب شدند و داده هاي مورد کاوش مشخص گرديدند، معمولا به تبديلات خاصي روي داده ها نياز است. نوع تبديل به عمليات و تکنيک داده کاوي مورد استفاده بستگي دارد، تبديلاتي ساده همچون تبديل نوع داده اي به نوع ديگر تا تبديلات پيچيده تر همچون تعريف صفات جديد با انجام عملياتهاي رياضي و منطقي روي صفات موجود.
5-داده کاوی : بخش اصلی فرايند ، که در آن با استفاده از روش ها و تکنيک های خاص ، استخراج الگو های مفید ، دانش استخراج می شود.
6-زيابی الگو[6] : مشخص کردن الگوهای صحيح و مورد نظر به وسيله معيارهای اندازه گيری.
7-زنمايی دانش : در اين بخش به منظور ارائه دانش استخراج شده به کاربر ، از يک سری ابزارهای بصری سازی استفاده می گردد.
1-3-1-تعریف داده کاوی
در متون آکادميک تعاريف گوناگوني براي داده کاوي ارائه شده اند . در برخي از اين تعاريف داده کاوي در حد ابزاري که کاربران را قادر به ارتباط مستقيم با حجم عظيم داده ها مي سازد معرفي گرديده است و در برخي ديگر ، تعاريف دقيقتر که درآنها به کاوش در داده ها توجه مي شود. برخي از اين تعاريف عبارتند از :
- داده کاوي عبارت است از فرايند استخراج اطلاعات معتبر ، از پيش ناشناخته قابل فهم و قابل اعتماد از پايگاه داده هاي بزرگ که شامل بهره گيري از بزارهاي آناليز داده ها، براي كشف الگوهاي موجود و روابط ناشناختهي ميان داده ها در حجمي وسيع مي باشد. و استفاده از آن درتصميم گيري فعاليتهاي تجاري مهم.
- اصطلاح داده کاوي به فرايند نيم خودکار تجزيه و تحليل پايگاه داده هاي بزرگ به منظور يافتن الگوهاي مفيد اطلاق مي شود [3].
- داده کاوي يعني جستجو در يک پايگاه داده ها براي يافتن الگوهايي ميان داده ها [4].
- داده کاوي يعني استخراج دانش کلان ، قابل استناد و جديد از پايگاه داده ها ي بزرگ .
- داده کاوي يعني تجزيه و تحليل مجموعه داده هاي قابل مشاهده براي يافتن روابط مطمئن بين داده ها .
همانگونه که در تعاريف گوناگون داده کاوي مشاهده مي شود ، تقريبا در تمامي تعاريف به مفاهيمي چون استخراج دانش ، تحليل و يافتن الگوي بين داده ها اشاره شده است .
1-3-2- فرآيند دادهكاوي
ميتوان فرآيند دادهكاوي را طي مراحل زير به صورت نمودار نشان داد.
|
|
||||||
|
|||||||
شکل 1-1فرآيند دادهكاوي
در فرآيند بالا، دادههاي خام از منابع مختلفي جمعآوري ميشوند و ازطريق استخراج، ترجمه و فرآيندهاي بازخواني به انبار دادهها وارد ميشوند. بخش مهياسازي، دادهها از انبار خارج شده و به صورت يك فرمت مناسب براي دادهكاوي درميآيند. در بخش كشف الگو از روشها والگوريتمهاي دادهكاوي، براي ساخت الگو استفاده ميشود.
1-3-3- قابليت هاي داده کاوی
بايد توجه داشته باشيد كه داده كاوي يك ابزار جادويي نيست كه بتواند در پايگاه داده شما به دنبال الگوهاي جالب بگردد و اگر به الگويي جديدي برخورد كرد آن را به شما اعلام كند بله صرفا الگوها و روابط بين داده ها را به شما اعلام مي كند بدون توجه به ارزش آنها. بنابراين الگوهايي كه به اين وسيله كشف مي شوند بايد با جهان واقع تطابق داشته باشند.[5]
1-3-4-چه نوع دادههايي مورد كاوش قرار می گيرند؟
در اصل داده كاوي مختص يك رسانه يا دادهي خاص نيست و بايد از قابليت اجرا بر روي هر نوع داده اي برخوردار باشد، اگر چه الگوريتمها و تلاشها ممكن است در مواجهه با گونه هاي مختلف داده، تفاوت داشته باشند.
- فايلهاي ساده (FLAT FILES):
رايج ترين منبع براي الگوريتم هاي دادهكاوي هستند، خصوصا در مرحله ي تحقيق، فايل هاي ساده، فايل هاي ساده ي متني يا با ساختار دودويي هستند و با ساختاري شناخته شده براي يك الگوريتم مشخص داده كاوي كه روي آن پياده مي شود. داده هاي درون اين نوع فايل ها مي توانند تراكنش ها، داده هاي سريالي، اندازه گيري هاي عملي و … باشند.
- پايگاههاي داده اي رابطه اي(RDBMS):
مختصرا، يك پايگاه داده ي رابطه اي متشكل از مجموعهاي از جداول است كه در بر گيرندهي مقاديري براي صفات موجوديت ها و يا مقاديري از روابط بين موجوديت ها ميباشد. هر جدول داراي چندين سطر و ستون ميباشد كه ستونها ارائه كنندهي صفات خاصه و سطرها ارائه كنندهی ركوردهاي اطلاعاتي ميباشند. يك ركورد اطلاعاتي در بر گيرندهي صفات خاصهي يك شئ يا روايط بين اشيا است كه با يك كليد غير تكراري تعريف ميشود. الگوريتم هاي دادهكاوي براي پايگاههاي دادهاي رابطهاي بسيار فراگيرتر و سريعتر از الگوريتم هاي دادهكاوي روي فايلهاي ساده هستند.
· انبارهای داده ای[7]
وجود اطلاعات صحيح و منسجم يکي از ملزوماتي است که در داده کاوي به آن نيازمنديم. اشتباه و عدم وجود اطلاعات صحيح باعث نتيجه گيري غلط و در نتيجه اخذ تصميمات ناصحيح در سازمانها مي گردد و منتج به نتايج خطرناکي خواهد گرديد که نمونه هاي آن کم نيستند .
اکثر سازمانها دچار يک شکاف اطلاعاتي[8] هستند. در اينگونه سازمان ها معمولا سيستم هاي اطلاعاتي در طول زمان و با معماري و مديريت هاي گوناگون ساخته شده اند ، به طوري که درسازمان، اطلاعاتي يکپارچه و مشخصي مشاهده نمي گردد . علاوه بر اين براي فرايند داده کاوي به اطلاعات خلاصه و مهم در زمينه تصميم گيري هاي حياتي نيازمنديم .
هدف از فرايند انبارش داده ها فراهم کردن يک محيط يکپارچه جهت پردازش اطلاعات است . در اين فرايند ، اطلاعات تحليلي و موجز در دوره هاي مناسب زماني سازماندهي و ذخيره مي شود تا بتوان از آنها در فرايند هاي تصميم گيري که از ملزومات آن داده کاوي است ، استفاده شود . به طور کلي تعريف زير براي انبار داده ها ارائه مي گردد : انبار داده ها ، مجموعه اي است موضوعي[9] ، مجتمع[10] ، متغير در زمان[11] و پايدار[12] از داده ها که به منظور پشتيباني از فرايند مديريت تصميم گيري مورد استفاده قرار مي گيرد.
1-4- وظایف داده کاوی
وظایف داده کاوی معمولا بشرح زیر است:
1-1-4-کلاس بندي
هدف کلاسبندي دادهها، سازماندهي و تخصيص دادهها به كلاسهاي مجزا ميباشد. در اين فرآيند بر اساس دادههاي توزيع شده، مدل اوليهاي ايجاد ميگردد. سپس اين مدل براي طبقهبندي دادههاي جديد مورد استفاده قرار ميگيرد، به اين ترتيب با بكارگيري مدل بدست آمده، تعلق دادههاي جديد به كلاس معين قابل تعیین ميباشد. كلاسبندي در مورد مقادير گسسته و پيشگويي بهكار ميرود. [6]
در فرآيند کلاسبندي، اشيا موجود به كلاسهاي مجزا با مشخصههايی تفكيكشده (ظروف جداگانه) طبقهبندي و به صورت يك مدل معرفي ميگردند. سپس با در نظر گرفتن ويژگيهاي هر طبقه، شي جديد به آنها تخصيص يافته، برچسب و نوع آن قابل تعیین مي گردد.
در کلاسبندي، مدل ايجاد شده بر پايهي يكسري دادههاي آموزشي، (اشيا دادههايي كه بر چسب كلاس آنها مشخص و شناخته شده است) حاصل مي آيد. مدل بدست آمده در اشكال گوناگون مانند قوانين کلاسبندي (If-Then)، درختهاي تصميم، فرمولهاي رياضي و شبكههاي عصبي قابل نمايش ميباشد.
به عنوان مثال فرض كنيد مدير فروشگاهي در نظر دارد مجموعهي بزرگي از دادهها را بر اساس ميزان فروش به زياد، متوسط و كم طبقهبندي كند. وي ميبايست مدلي ايجاد كند كه بر اساس خصيصههاي كالا مانند قيمت، مارك، محل ساخت و نوع كالا، كلاس مربوط به آن نوع كالا را تعيين نمايد. طبقهبندي نهايي ميبايست به طور ماكزيمال هر كلاسي را از ديگري تشخيص داده،و تصوير سازماندهي شدهاي از دادهها را به نمايش در آورد. [7]
از كاربردهاي کلاسبندي مي توان بازاريابي، تشخيص بيماري، تحليل اثرات معالجه، تشخيص خرابي در صنعت و تعيين اعتبار را نام برد. [6]
1-4-2– مراحل يک الگوريتم کلاسبندي
الگوي عمومي براي الگوريتمهاي آموزش از طريق مثال با فرايند كلاسبندي به سه مرحله تقسيم ميشوند:[2]
- پيشپردازش دادهها
- ساخت و ارزيابي قوانين كلاسبندي و هرس كردن قوانين اضافي که هدف ما ميباشد.
- كلاسبندي نمونههاي جديد
1-4-3- انواع روشهاي کلاسبندي
کلاسبندي به روشهاي زير انجامپذير است:
- طبقهبندي بيز
- درخت تصميم
- K-Nearest Neibour
- الگوريتمهاي ژنتيك
- شبكههاي عصبي
1-4-3-1– درخت تصمیم
درخت تصمیم عبارت است از یک مجموعه قوانین برای تقسیم کردن یک مجموعه ی ناهمگن بزرگ به مجموعه کوچکتر و گروه های همگن تر نسبت به متغیر هدف (فیلد موردنظر). درختهای تصميم روشی برای نمايش يک سری از قوانين هستند که منتهی به يک رده يا مقدار یا یک طبقه میشوند. برای مثال، میخواهيم متقاضيان وام را به دارندگان ريسک اعتبار خوب و بد تقسيم کنيم. شکل يک درخت تصميم را که اين مسئله را حل میکد نشان میدهد و همه مؤلفههای اساسی يک يک درخت تصميم در آن نشان داده شده است : نود تصميم، شاخهها و برگها درخت تصمیم برای موارد زیر به کار برده می شود. [9]
شکل1-2: نمونه یک درخت تصمیم
1-احتمال اینکه یک داده معلوم و معین متعلق به کدام دسته، را محاسبه می کند.
2-با اختصاص دادن آنها به دسته ای که احتمالش بیشتر است، رکوردها را دسته بندی می کند.
درخت تصمیم، براساس الگوريتم، ممکن است دو يا تعداد بيشتری شاخه داشته باشد. برای مثال، CART درختانی فقط با دو شاخه در هر نود ايجاد میکند. هر شاخه منجر به نود تصميم ديگر يا يک نود برگ میشود. با پيمايش يک درخت تصميم از ريشه به پايين به يک نمونه يک طبقه يا مقدار نسبت میدهيم. هر نود از ویژگی های يک نمونه برای تصميمگيری درباره آن انشعاب استفاده میکند.
درختهای تصميمی که برای پيشبينی متغيرهای دستهای استفاده میشوند، درختهای classification ناميده میشوند زيرا نمونهها را در دستهها ياردهها یا کلاس ها قرار میدهند. درختهای تصميمی که برای پيشبينی متغيرهای پيوسته استفاده میشوند درختهای regression ناميده میشوند.
1-4-3-1-1- کشف تقسیمات [17]
هدف از ساختن درخت این است که دستهای را برای یک رکورد برمبنای فیلد هدف تعیین کنیم. درخت بوسیله ی تقسیمات رکوردها بر اساس فیلد ورودی ایجاد می شود. در هر نود تقسیمات (انشعاب) رکوردها بر اساس فیلد ورودی انجام می شود.
اولین کار برای این منظور این است که تعیین کنیم که کدام فیلد ورودی تقسیم بهتری را می سازد. بهترین تقسیم در نتیجه ی یک جداسازی خوب رکوردها به گروه هایی که در این جا یک دسته این گروه ها را در بر می گیرد, کشف می شود.
یک معیار در ارزیابی تقسیم ، خلوص[18] است. یک متد با خلوص بالا، به این معنی است که اعضای آن دسته عالی و ممتازاند.
[1] Data Mining
[2] Knowledge Discovery
[3] Data Mining
[5] Data integration
[6] Pattern evaluation
[7] WareHouse
[8] Information Gap
[9] Subject Oriented
[10] Integrated
[11] Time Variant
[12] NonVolatile
[13] Classification
[14] prediction
[15] Clustering
[16] Estimation
[17] Finding Spilts
[18] Purity
نقد و بررسیها
هنوز بررسیای ثبت نشده است.