پایان نامه دوره کارشناسی کامپیوتر
گرایش نرم افزار
اسفند 86
چکیده
بررسی ومطالعه ی کامل داده کاوی و داده کاوی با SQL SERVER2005
پیاده سازی آن روی بانک اطلاعاتی دانشگاه آزاد قوچان
امروزه با گسترش سیستم های پایگاهی و حجم بالای داده ها ی ذخیره شده در این سیستم ها ، نیاز به ابزاری است تا بتوان داده های ذخیره شده را پردازش کرد و اطلاعات حاصل از این پردازش را در اختیار کاربران قرار داد.
داده کاوی یکی از مهمترین روش ها ی کشف دانش است که به وسیله آن الگوهای مفید در داده ها با حداقل دخالت کاربران شناخته می شوند و اطلاعاتی را در اختیار کاربران و تحلیل گران قرار می دهند تا براساس آنها تصمیمات مهم و حیاتی در سازمانها اتخاذ شوند.داده کاوی را تحلیل گران با اهداف گوناگونی از قبیل کلاس بندی, پیش بینی, خوشه بندی ,تخمین انجام می دهند. برای کلاس بندی, مدل هاو الگوریتم هایی مانند قاعده ی بیز, درخت تصمیم, شبکه ی عصبی, الگوریتم ژنتیک مطرح شده است.برای پیش بینی مدل رگرسیون خطی ومنطقی و برای خوشه بندی الگوریتم های سلسله مراتبی و تفکیکی, وبرای تخمین مدل های درخت تصمیم و شبکه ی عصبی مطرح می شود. در فصل دوم و سوم با الگوریتم ژنتیک که یکی از الگوریتم های داده کاوی و با شبکه ی عصبی که یکی از مدل های داده کاوی هستند آشنا می شویم .درفصل چهارم به محاسبات نرم و برخی از اجزای اصلی ان و نقش آنها در داده کاوی می پردازیم.
در فصل پنجم با ابزارهای داده کاوی آشنا می شویم . برای داده کاوی ابزارهای متنوعی وجود دارد. می توان ابزارداده کاوی را با تطبیق آن ابزار با داده های مسئله و با توجه به محیط داده ای که می خواهید از آن استفاده کنید، و امکاناتی که آن ابزار دارد انتخاب کنید.وسپس به داده کاوی با SQLSERVER2005 می پردازیم .ودرفصل ششم به داده کاوی با SQL SERVER2005 روی بانک اطلاعاتی دانشگاه آزاد قوچان پرداختیم.
کلمات کلیدی ،کلاس بندی ، خوشه بندی ، پیش بینی ، تخمین
فصل اول
مقدمه ای بر داده کاوی
-1-مقدمه
امروزه با گسترش سیستم های پایگاهی و حجم بالای داده ها ی ذخیره شده در این سیستم ها ، نیاز به ابزاری است تا بتوان داده های ذخیره شده را پردازش کرد و اطلاعات حاصل از این پردازش را در اختیار کاربران قرار داد .با استفاده از ابزارهای گوناگون گزارش گیری معمولی ، می توان اطلاعاتی را در اختیار کاربران قرار داد تا بتوانند به نتیجه گیری در مورد داده ها و روابط منطقی میان آنها بپردازند اما وقتی که حجم داده ها خیلی بالا باشد ، کاربران هر چند زبر دست و با تجربه باشند نمی توانند الگوهای مفید را در میان حجم انبوه داده ها تشخیص دهند و یا اگر قادر به این کار هم با شوند ، هزینه عملیات از نظر نیروی انسانی و مادی بسیار بالا است .از سوی دیگر کاربران معمولا فرضیه ای را مطرح می کنند و سپس بر اساس گزارشات مشاهده شده به اثبات یا رد فرضیه می پردازند ، در حالی که امروزه نیاز به روشهایی است که اصطلاحا به کشف دانش[1] بپردازند یعنی با کمترین دخالت کاربر و به صورت خودکار الگوها و رابطه های منطقی را بیان نمایند .
داده کاوی[2] یکی از مهمترین این روش ها است که به وسیله آن الگوهای مفید در داده ها با حداقل دخالت کاربران شناخته می شوند و اطلاعاتی را در اختیار کاربران و تحلیل گران قرار می دهند تا براساس آنها تصمیمات مهم و حیاتی در سازمانها اتخاذ شوند .
1-2-عامل مسبب پیدایش داده کاوی
اصلی ترین دلیلی که باعث شده داده کاوی کانون توجهات در صنعت اطلاعات قرار بگیرد، مساله در دسترس بودن حجم وسیعی از داده ها و نیاز شدید به اینکه از این داده ها, اطلاعات و دانش سودمند استخراج کنیم. اطلاعات و دانش بدست آمده در کاربردهای وسیعی مورد استفاده قرار می گیرد.
داده کاوی را می توان حاصل سیر تکاملی طبیعی تکنولوژی اطلاعات دانست، که این سیر تکاملی ناشی از یک سیر تکاملی در صنعت پایگاه داده می باشد، نظیر عملیات جمع آوری داده ها وایجاد پایگاه داده، مدیریت داده و تحلیل و فهم داده ها.
تکامل تکنولوژی پایگاه داده و استفاده فراوان آن در کاربردهای مختلف سبب جمع آوری حجم فراوانی داده شده است. این داده های فراوان باعث ایجاد نیاز برای ابزارهای قدرتمند برای تحلیل داده ها گشته، زیرا در حال حاضر به لحاظ داده ثروتمند هستیم ولی دچار کمبود اطلاعات می باشیم.
ابزارهای داده کاوی داده ها را آنالیز می کنند و الگوهای داده ها را کشف می کنند که می توان از آن در کاربردهایی نظیر تعیین استراتژی برای کسب و کار، پایگاه دانش[3] و تحقیقات علمی و پزشکی، استفاده کرد. شکاف موجود بین داده ها و اطلاعات سبب ایجاد نیاز برای ابزارهای داده کاوی شده است تا داده های بی ارزش را به دانشی ارزشمند تبدیل کنیم .
1
-3-داده کاوی و مفهوم اکتشاف دانش (K.D.D)
با حجم عظیم داده های ذخیره شده در فایلها، بانکهای اطلاعاتی و سایر بانک های داده ای، توسعه ی ابزارهایی برای تحلیل و شاید تفسیر چنین داده هایی و برای استخراج علوم شگفت انگیزی که می توانند در تصمیم گیری مفید باشند، امری بسیار مهم و ضروری است. داده کاوی با عنوان کشف دانش در پایگاه های داده (KDD) شناخته میشود. کشف علومی که قبلا ناشناخته بودهاند و اطلاعاتی که در بانکهای اطلاعاتی موجود بوده و ذاتا بالقوه و مفید هستند.
با وجود آنکه داده کاوی و کشف دانش در پایگاههای داده مترادف همدیگر هستند، ولی در اصل، داده کاوی ذاتاً بخشی و تنها قسمتی جزئی از فرآیند کشف دانش است. فرآیند کشف دانش در بر گیرنده ی چندین مرحله می باشد که از اطلاعات خام، گونه هایی از علوم جدید را بدست می دهد. مراحل کشف دانش به قرار زیر است:
1- پاکسازی داده ها : در این فاز داده های اضافی و نامربوط از مجموعه داده ها حذف می شوند.(داده های ناکامل) [2]
2-یکپارچه سازی داده ها[4] : چندین منبع داده ترکیب می شوند،
3-انتخاب داده ها : انبار داده ها شامل انواع مختلف و گوناگونی از داده ها است که همه آنها در داده کاوی مورد نیاز نیستند . برای فرایند داده کاوی باید داده ها ی مورد نیاز انتخاب شوند . به عنوان مثال در یک پایگاه داده های مربوط به سیستم فروشگاهی ، اطلاعاتی در مورد خرید مشتریان ، خصوصیات آماری آنها ، تامین کنندگان ، خرید ، حسابداری و ... وجود دارند . برای تعیین نحوه چیدن قفسه ها تنها به داده ها یی در مورد خرید مشتریان و خصوصیات آماری آنها نیاز است . حتی در مواردی نیاز به کاوش در تمام محتویات پایگاه نیست بلکه ممکن است به منظور کاهش هزینه عملیات ، نمونه هایی از عناصر انتخاب و کاوش شوند .
4-تبدیل داده ها : هنگامی که داده های مورد نیاز انتخاب شدند و داده های مورد کاوش مشخص گردیدند، معمولا به تبدیلات خاصی روی داده ها نیاز است. نوع تبدیل به عملیات و تکنیک داده کاوی مورد استفاده بستگی دارد، تبدیلاتی ساده همچون تبدیل نوع داده ای به نوع دیگر تا تبدیلات پیچیده تر همچون تعریف صفات جدید با انجام عملیاتهای ریاضی و منطقی روی صفات موجود.
5-داده کاوی : بخش اصلی فرایند ، که در آن با استفاده از روش ها و تکنیک های خاص ، استخراج الگو های مفید ، دانش استخراج می شود.
6-زیابی الگو[5] : مشخص کردن الگوهای صحیح و مورد نظر به وسیله معیارهای اندازه گیری.
7-زنمایی دانش : در این بخش به منظور ارائه دانش استخراج شده به کاربر ، از یک سری ابزارهای بصری سازی استفاده می گردد.
1-3-1-تعریف داده کاوی
در متون آکادمیک تعاریف گوناگونی برای داده کاوی ارائه شده اند . در برخی از این تعاریف داده کاوی در حد ابزاری که کاربران را قادر به ارتباط مستقیم با حجم عظیم داده ها می سازد معرفی گردیده است و در برخی دیگر ، تعاریف دقیقتر که درآنها به کاوش در داده ها توجه می شود. برخی از این تعاریف عبارتند از :
داده کاوی عبارت است از فرایند استخراج اطلاعات معتبر ، از پیش ناشناخته قابل فهم و قابل اعتماد از پایگاه داده های بزرگ که شامل بهره گیری از بزارهای آنالیز داده ها، برای کشف الگوهای موجود و روابط ناشناختهی میان داده ها در حجمی وسیع می باشد. و استفاده از آن درتصمیم گیری فعالیتهای تجاری مهم.
اصطلاح داده کاوی به فرایند نیم خودکار تجزیه و تحلیل پایگاه داده های بزرگ به منظور یافتن الگوهای مفید اطلاق می شود [3].
داده کاوی یعنی جستجو در یک پایگاه داده ها برای یافتن الگوهایی میان داده ها [4].
داده کاوی یعنی استخراج دانش کلان ، قابل استناد و جدید از پایگاه داده ها ی بزرگ .
داده کاوی یعنی تجزیه و تحلیل مجموعه داده های قابل مشاهده برای یافتن روابط مطمئن بین داده ها .
همانگونه که در تعاریف گوناگون داده کاوی مشاهده می شود ، تقریبا در تمامی تعاریف به مفاهیمی چون استخراج دانش ، تحلیل و یافتن الگوی بین داده ها اشاره شده است .
1-3-2- فرآیند دادهکاوی
میتوان فرآیند دادهکاوی را طی مراحل زیر به صورت نمودار نشان داد.
در فرآیند بالا، دادههای خام از منابع مختلفی جمعآوری میشوند و ازطریق استخراج، ترجمه و فرآیندهای بازخوانی به انبار دادهها وارد میشوند. بخش مهیاسازی، دادهها از انبار خارج شده و به صورت یک فرمت مناسب برای دادهکاوی درمیآیند. در بخش کشف الگو از روشها والگوریتمهای دادهکاوی، برای ساخت الگو استفاده میشود.
1-3-3- قابلیت های داده کاوی
باید توجه داشته باشید که داده کاوی یک ابزار جادویی نیست که بتواند در پایگاه داده شما به دنبال الگوهای جالب بگردد و اگر به الگویی جدیدی برخورد کرد آن را به شما اعلام کند بله صرفا الگوها و روابط بین داده ها را به شما اعلام می کند بدون توجه به ارزش آنها. بنابراین الگوهایی که به این وسیله کشف می شوند باید با جهان واقع تطابق داشته باشند.[5]
1-3-4-چه نوع دادههایی مورد کاوش قرار می گیرند؟
در اصل داده کاوی مختص یک رسانه یا دادهی خاص نیست و باید از قابلیت اجرا بر روی هر نوع داده ای برخوردار باشد، اگر چه الگوریتمها و تلاشها ممکن است در مواجهه با گونه های مختلف داده، تفاوت داشته باشند.
فایلهای ساده (FLAT FILES):
رایج ترین منبع برای الگوریتم های دادهکاوی هستند، خصوصا در مرحله ی تحقیق، فایل های ساده، فایل های ساده ی متنی یا با ساختار دودویی هستند و با ساختاری شناخته شده برای یک الگوریتم مشخص داده کاوی که روی آن پیاده می شود. داده های درون این نوع فایل ها می توانند تراکنش ها، داده های سریالی، اندازه گیری های عملی و ... باشند.
پایگاههای داده ای رابطه ای(RDBMS):
مختصرا، یک پایگاه داده ی رابطه ای متشکل از مجموعهای از جداول است که در بر گیرندهی مقادیری برای صفات موجودیت ها و یا مقادیری از روابط بین موجودیت ها میباشد. هر جدول دارای چندین سطر و ستون میباشد که ستونها ارائه کنندهی صفات خاصه و سطرها ارائه کنندهی رکوردهای اطلاعاتی میباشند. یک رکورد اطلاعاتی در بر گیرندهی صفات خاصهی یک شئ یا روایط بین اشیا است که با یک کلید غیر تکراری تعریف میشود. الگوریتم های دادهکاوی برای پایگاههای دادهای رابطهای بسیار فراگیرتر و سریعتر از الگوریتم های دادهکاوی روی فایلهای ساده هستند.
· انبارهای داده ای[6]
وجود اطلاعات صحیح و منسجم یکی از ملزوماتی است که در داده کاوی به آن نیازمندیم. اشتباه و عدم وجود اطلاعات صحیح باعث نتیجه گیری غلط و در نتیجه اخذ تصمیمات ناصحیح در سازمانها می گردد و منتج به نتایج خطرناکی خواهد گردید که نمونه های آن کم نیستند .
اکثر سازمانها دچار یک شکاف اطلاعاتی[7] هستند. در اینگونه سازمان ها معمولا سیستم های اطلاعاتی در طول زمان و با معماری و مدیریت های گوناگون ساخته شده اند ، به طوری که درسازمان، اطلاعاتی یکپارچه و مشخصی مشاهده نمی گردد . علاوه بر این برای فرایند داده کاوی به اطلاعات خلاصه و مهم در زمینه تصمیم گیری های حیاتی نیازمندیم .
هدف از فرایند انبارش داده ها فراهم کردن یک محیط یکپارچه جهت پردازش اطلاعات است . در این فرایند ، اطلاعات تحلیلی و موجز در دوره های مناسب زمانی سازماندهی و ذخیره می شود تا بتوان از آنها در فرایند های تصمیم گیری که از ملزومات آن داده کاوی است ، استفاده شود . به طور کلی تعریف زیر برای انبار داده ها ارائه می گردد : انبار داده ها ، مجموعه ای است موضوعی[8] ، مجتمع[9] ، متغیر در زمان[10] و پایدار[11] از داده ها که به منظور پشتیبانی از فرایند مدیریت تصمیم گیری مورد استفاده قرار می گیرد.
منابع وماخذ
[1]:
J.Han, and M.Kamber, “Data Mining: Concepts and Techniques”, San Diego Academic Press, 2001
[2]:
Matjaz Gams, Nada Lavarc, Review Of Five Emperical Learning Systems Whitin a Proposal Schemata,1987 , EWSL87.
[3]:
Introduction to Data Mining and Knowledge Discovery By Two Crows Corporation
[4]:
David J. HAND , Data Mining: Statistics and More? , December 2002.
[5]:
Jeffery W. Seifert , Analyst in information science and Technology Policy, ‘ Data Mining : An Overview ‘ December 2004.
[6]:
Ruby L. Kennedy, Yuchung Li, Benjamin Van Roy, Christopher D. Reed, Dr. Richard P. Lippmann, Solving Data Mining Problems Through Pattern Recognition, 1997.
[7]:
J.Han, M.Kamber, Date Mining: Goncepts and Techinqeus, JimGray, Series Editor Morgan Kaufmann Publishers, Augest 2000.
[8]:
Artificial Intelligence, 1994] P. Langley and S. Sage. Induction of Selective Bayesian Classifiers. Proc. 10th Conf. on
[9]:
Two Crows Corporation,Introduction to Data Mining and Knowledge Discovery,1999
[10]:
Ruby L. Kennedy, Yuchung Li, Benjamin Van Roy, Christopher D. Reed, Dr. Richard P. Lippmann, Solving Data Mining Problems Through Pattern Recognition, 1997.
[11]:
http://www.30sharp.com
[12] P. Berkhin, Survay of clustering Data Mining Techniques, Accrue Software, CA. 2002.
[13]:
Sarawagi, Thomas, Agrawal, Integrating Association Rule Mining with Relational Database Systems: Alternative and Implecations
[14]:
Ramakrishnan Srikant, Rakesh Agrawal, Mining Quanitative Associattion Rules in Large Relational Tables, 1995.
[15]:
Sehgal, A.K. Text Mining: The Search for Novelty in Text. Ph.D. Comprehensive Examination Report, Dept. of Computer Science, The University of Iowa, April 2004
[16] :
H. Zhuge et al. An Automatic Semantic Relationships Discovery Approach. The 13th International World Wide Web Conference (WWW2004), New York, USA, May 2004,
[17]:
M. Rajman. Text Mining, knowledge extraction from unstructured textual data. Proc. of EUROSTAT Conference, Francfort (Deutchland), may, 1997
[18]:
M. A. Hearst. Untangling text data mining. In Proceedings of the ACL’99: the 37th Annual Meeting of the Association for Computational Linguistics. University of Maryland, June 20-26 1999
[19]:
Dr Alex Rogers , CM2408 – Symbolic Al Lecture 8 – Introduction to Genetic Algorithms ,December 2002
[20]:
Mehrdad Dianati , Insop Song , Mark Treiber , An Introduction to Genetic Algorithms and Evolution Strategies
[21]:
http--www.genetic-programming.com
[22]:
PersianArticles@PetroleumTimes.htm
[23]:
www.talkorigins.org
[24]:
www.ccwmagazine.com
[25]:
www.gpwiki.org
[26 ]:
http://developercenter.ir/Forum/index.php
[27]:
cortex.snowseed.com-neuralnetworks.htm
[28]:
R.Kohavi, B.Masand,M.Spilipoulou ,and J.Srivastava, “WebMining “: DATA Mining and Knowlede Disscovery, vol.6,pp.5-8.2002
[29]:
J.Zhan,W.Hsu, and M.L.Lee, “Image mining :Issues , frameworks and techniques ,” in proceedings of the 2nd international workshop on milti –media data mining and the ACM SIGKDD Conference (MDM/KDD ’01)(San Francisco), pp.13-20 , August 2001.
[30]:
A.Vailaya .A.T,Fiueiredo,A.K.Jain , and H.J.Zhang, “ Image classification for content –based indexing ,” IEEE Transactions on Image processing ,vol .10,pp.117-130 ,2001.
[31]:
http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20050804SQLServerJM/manifest.xml
http://www.ssw.com.au/ssw/events/2006UTS_BI/resources.aspx