مقدمه اي بر داده کاوي و اکتشاف دانش
تهيه کنندگان : يوحنا قديمي علي عباسي کاوه پاشايي
مقدمه
امروزه با گسترش سيستم هاي پايگاهي و حجم بالاي داده ها ي ذخيره شده در اين سيستم ها ، نياز به ابزاري است تا بتوان داده هاي ذخيره شده پردازش کرد و اطلاعات حاصل از اين پردازش را در اختيار کاربران قرار داد .
با استفاده ار پرسش هاي ساده در SQL و ابزارهاي گوناگون گزارش گيري معمولي ، مي توان اطلاعاتي را در اختيار کاربران قرار داد تا بتوانند به نتيجه گيري در مورد داده ها و روابط منطقي ميان آنها بپردازند اما وقتي که حجم داده ها بالا باشد ، کاربران هر چند زبر دست و با تجربه باشند نمي توانند الگوهاي مفيد را در ميان حجم انبوه داده ها تشخيص دهند و يا اگر قادر به اين کار هم با شند ، هزينه عمليات از نظر نيروي انساني و مادي بسيار بالا است .
از سوي ديگر کاربران معمولا فرضيه اي را مطرح مي کنند و سپس بر اساس گزارشات مشاهده شده به اثبات يا رد فرضيه مي پردازند ، در حالي که امروزه نياز به روشهايي است که اصطلاحا به کشف دانش[1]بپردازند يعني با کمترين دخالت کاربر و به صورت خودکار الگوها و رابطه هاي منطقي را بيان نمايند .
داده کاوي[2] يکي از مهمترين اين روشها است که به وسيله آن الگوهاي مفيد در داده ها با حداقل دخالت کاربران شناخته مي شوند و اطلاعاتي را در اختيار کاربران و تحليل گران قرار مي دهند تا براساس آنها تصميمات مهم و حياتي در سازمانها اتخاذ شوند .
در داده کاوي از بخشي از علم آمار به نام تحليل اکتشافي داده ها[3] استفاده مي شود که در آن بر کشف اطلاعات نهفته و ناشناخته از درون حجم انبوه داده ها تاکيد مي شود . علاوه بر اين داده کاوي با هوش مصنوعي و يادگيري ماشين نيز ارتباط تنگاتنگي دارد ، بنابراين مي توان گفت در داده کاوي تئوريهاي پايگاه داده ها ، هوش مصنوعي ، يادگيري ماشين و علم آمار را در هم مي آميزند تا زمينه کاربردي فراهم شود .
بايد توجه داشت که اصطلاح داده کاوي زماني به کار برده مي شود که با حجم بزرگي از داده ها ، در حد مگا يا ترابايت ، مواجه باشيم . در تمامي منابع داده کاوي بر اين مطلب تاکيد شده است .
هر چه حجم داده ها بيشتر و روابط ميان آنها پيچيده تر باشد دسترسي به اطلاعات نهفته در ميان داده ها مشکلتر مي شود و نقش داده کاوي به عنوان يکي از روشهاي کشف دانش ، روشن تر مي گردد .
مفاهيم پايه در داده کاوي
در داده کاوي معمولا به کشف الگوهاي مفيد از ميان داده ها اشاره مي شود . منظور از الگوي مفيد ، مدلي در داده ها است که ارتباط ميان يک زير مجموعه از داده ها را توصيف مي کند و معتبر ، ساده ، قابل فهم و جديد است .
تعريف داده کاوي
در متون آکادميک تعاريف گوناگوني براي داده کاوي ارائه شده اند . در برخي از اين تعاريف داده کاوي در حد ابزاري که کاربران را قادر به ارتباط مستقيم با حجم عظيم داده ها مي سازد معرفي گرديده است و در برخي ديگر ، تعاريف دقيقتر که درآنها به کاوش در داده ها توجه مي شود موجود است . برخي از اين تعاريف عبارتند از :
· داده کاوي عبارت است از فرايند استخراج اطلاعات معتبر ، از پيش ناشناخته ، قابل فهم و قابل اعتماد از پايگاه داده هاي بزرگ و استفاده از آن در تصميم گيري در فعاليت هاي تجاري مهم. [1]
· اصطلاح داده کاوي به فرايند نيم خودکار تجزيه و تحليل پايگاه داده هاي بزرگ به منظور يافتن الگوهاي مفيد اطلاق مي شود [2].
· داده کاوي يعني جستجو در يک پايگاه داده ها براي يافتن الگوهايي ميان داده ها.[3]
· داده کاوي يعني استخراج دانش کلان ، قابل استناد و جديد از پايگاه داده ها ي بزرگ .
· داده کاوي يعني تجزيه و تحليل مجموعه داده هاي قابل مشاهده براي يافتن روابط مطمئن بين داده ها .
همانگونه که در تعاريف گوناگون داده کاوي مشاهده مي شود ، تقريبا در تمامي تعاريف به مفاهيمي چون استخراج دانش ، تحليل و يافتن الگوي بين داده ها اشاره شده است .
تاريخچه داده کاوي
اخيرا داده کاوي موضوع بسياري از مقالات ، کنفرانس ها و رساله ها ي عملي شده است ، اما اين واژه تا اوايل دهه نود مفهومي نداشت وبه کار برده نمي شد .
در دهه شصت و پيش از آن زمينه هايي براي ايجاد سيستم ها ي جمع آوري و مديريت داده ها ايجاد شد و تحقيقاتي در اين زمينه انجام پذيرفت که منجر به معرفي و ايجاد سيستم هاي مديريت پايگاه داده ها گرديد .
ايجاد و توسعه مدلهاي داده اي براي پايگاه سلسله مراتبي ، شبکه اي و بخصوص رابطه اي در دهه هفتاد ، منجر به معرفي مفاهيمي همچون شاخص گذاري و سازماندهي داده ها و در نهايت ايجاد زبان پرسش SQL در اوايل دهه هشتاد گرديد تا کاربران بتوانند گزارشات و فرمهاي اطلاعاتي مورد نظر خود را ، از اين طريق ايجاد نمايند .
توسعه سيستم هاي پايگاهي پيشرفته در دهه هشتاد و ايجاد پايگاه هاي شي گرا ، کاربرد گرا[4] و فعال[5] باعث توسعه همه جانبه و کاربردي شدن اين سيستم ها در سراسر جهان گرديد . بدين ترتيب DBMS هايي همچون DB2 ، Oracle ، Sybase ، ... ايجاد شدند و حجم زيادي از اطلاعات با استفاده از اين سيستم ها مورد پردازش قرار گرفتند . شايد بتوان مهمترين جنبه در معرفي داده کاوي را مبحث کشف دانش از پايگاه داده ها ([6]KDD) دانست بطوري که در بسياري موارد DM و KDD بصورت مترادف مورد استفاده قرار مي گيرند .
همانطور که در تعريف داده کاوي ذکر شد ، هدف از جستجو و کشف الگوهايي در پايگاه داده ها و استفاده از آنها در اخذ تصميمات حياتي است ، بنابراين مي توان گفت که DM بخشي از فرايندKDD است که در نهايت به ايجاد سيستم هاي DSS[7] شکل 1-1 نقش داده کاوي در فرايند کشف دانش از پايگاه داده ها را نشان مي دهد . [4]
براي اولين بار مفهوم داده کاوي در کارگاه[8] IJCAI در زمينه KDD توسط Shapir مطرح گرديد . به دنبال آن در سالهاي 1991 تا 1994 ، کارگاههاي KDD مفاهيم جديدي را در اين شاخه از علم ارائه کردند بطوري که بسياري از علوم و مفاهيم با آن مرتبط گرديدند که مي توان آنها را در شکل 2-1 مشاهده نمود.
برخي از کاربردهاي داده کاوي در محيطهاي واقعي عبارتند از :
- خرده فروشي : از کاربردهاي کلاسيک داده کاوي است که مي توان به موارد زير اشاره کرد :
- تعيين الگوهاي خريد مشتريان
- تجزيه و تحليل سبد خريد بازار
- پيشگويي ميزان خريد مشتريان از طريق پست(فروش الکترونيکي)
- بانکداري :
- پيش بيني الگوهاي کلاهبرداري از طريق کارتهاي اعتباري
- تشخيص مشتريان ثابت
- تعيين ميزان استفاده از کارتهاي اعتباري بر اساس گروههاي اجتماعي
- بيمه :
- تجزيه و تحليل دعاوي
- پيشگويي ميزان خريد بيمه نامه هاي جديد توسط مشتريان
- پزشکي :
- تعيين نوع رفتار با بيماران و پيشگويي ميزان موفقيت اعمال جراحي
- تعيين ميزان موفقيت روشهاي درماني در برخورد با بيماريهاي سخت
مراحل فرايند کشف دانش از پايگاه داده ها
فرايند کشف دانش از پايگاه داده ها شامل پنج مرحله است که عبارتند از :
1. انبارش داده ها[9]
2. انتخاب داده ها
3. تبديل داده ها
4. کاوش در داده ها
5. تفسير نتيجه
همانگونه که مشاهده مي شود داده کاوي يکي از مراحل اين فرايند است که به عنوان بخش چهارم آن نقش مهمي در کشف دانش از داده ها ايفا مي کند.
· انبارش داده ها
وجود اطلاعات صحيح و منسجم يکي از ملزوماتي است که در داده کاوي به آن نيازمنديم . اشتباه و عدم وجود اطلاعات صحيح باعث نتيجه گيري غلط و در نتيجه اخذ تصميمات ناصحيح در سازمانها مي گردد و منتج به نتايج خطرناکي خواهد گرديد که نمونه هاي آن کم نيستند .
اکثر سازمانها دچار يک خلا اطلاعاتي[10] هستند . در اينگونه سازمانها معمولا سيستم هاي اطلاعاتي در طول زمان و با معماري و مديريت هاي گوناگون ساخته شده اند ، به طوري که سازمان اطلاعاتي يکپارچه و مشخصي مشاهده نمي گردد . علاوه بر اين براي فرايند داده کاوي به اطلاعات خلاصه و مهم در زمينه تصميم گيريهاي حياتي نيازمنديم .
هدف از فرايند انبارش داده ها فراهم کردن يک محيط يکپارچه جهت پردازش اطلاعات است . در اين فرايند ، اطلاعات تحليلي و موجز در دوره هاي مناسب زماني سازماندهي و ذخيره مي شود تا بتوان از آنها در فرايند هاي تصميم گيري که از ملزومات آن داده کاوي است ، استفاده شود . به طور کلي تعريف زير براي انبار داده ها ارائه مي گردد :
انبار داده ها ، مجموعه اي است موضوعي[11] ، مجتمع[12] ، متغير در زمان[13] و پايدار[14] از داده ها که به منظور پشتيباني از فرايند مديريت تصميم گيري مورد استفاده قرار مي گيرد .[1]
انبارش داده ها خود موضوع مفصلي است که مقاله ها و رساله ها ي گوناگوني در مورد آن نگاشته شده اند . در اين فصل به منظور آشنايي با اين فرايند به آن اشاره اي شد .
· انتخاب داده ها
انبار داده ها شامل انواع مختلف و گوناگوني از داده ها است که همه آنها در داده کاوي مورد نياز نيستند . براي فرايند داده کاوي بايد داده ها ي مورد نياز انتخاب شوند . به عنوان مثال در يک پايگاه داده هاي مربوط به سيستم فروشگاهي ، اطلاعاتي در مورد خريد مشتريان ، خصوصيات آماري آنها ، تامين کنندگان ، خريد ، حسابداري و ... وجود دارند . براي تعيين نحوه چيدن قفسه ها تنها به داده ها يي در مورد خريد مشتريان و خصوصيات آماري آنها نياز است . حتي در مواردي نياز به کاوش در تمام محتويات پايگاه نيست بلکه ممکن است به منظور کاهش هزينه عمليات ، نمونه هايي از عناصر انتخاب و کاوش شوند .
· تبديل داده ها
هنگامي که داده هاي مورد نياز انتخاب شدند و داده ها ي مورد کاوش مشخص گرديدند ، معملا به تبديلات خاصي روي داده ها نياز است . نوع تبديل به عمليات و تکنيک داده کاوي مورد استفاده بستگي دارد : تبديلاتي ساده همچون تبديل نوع داده اي به نوع ديگر تا تبديلات پيچيده تر همچون تعريف صفات جديد با انجام عملياتهاي رياضي و منطقي روي صفات موجود .
· کاوش در داده ها
داده هاي تبديل شده با استفاده از تکنيکها و عملياتهاي داده کاوي مورد کاوش قرار مي گيرند تا الگوهاي مورد نظر کشف شوند .
· تفسير نتيجه
اطلاعات استخراج شده با توجه به هدف کاربر تجزيه و تحليل و بهترين نتايج معين مي گردند . هدف از اين مرحله تنها ارائه نتيجه (بصورت منطقي و يا نموداري) نيست ، بلکه پالايش اطلاعات ارايه شده به کاربر نيز از اهداف مهم اين مرحله است .
عملياتهاي داده کاوي
در داده کاوي ، چهار عمل اصلي انجام مي شود که عبارتند از [1]
1. مدلسازي پيشگويي کننده
2. تقطيع پايگاه داده ها
3. تحليل پيوند
4. تشخيص انحراف
از عملياتهاي اصلي مذکور ، يک يا بيش از يکي از آنها در پياده سازي کاربرد هاي گوناگون داده کاوي استفاده مي شوند . به عنوان مثال براي کاربرد هاي خرده فروشي معمولا از عمليات تقطيع و تحليل پيوند استفاده مي شود در حالي که براي تشخيص کلاهبرداري ، مي توان از هر يک از چهار عمليات مذکور استفاده نمود . علاوه برا ين مي توان از دنباله اي از عملياتها براي يک منظور خاص استفاده کرد . مثلا براي شناسايي مشتريان ، ابتدا پايگاه تقطيع مي شود و سپس مدلسازي پيشگويي کننده در قطعات ايجاد شده اعمال مي گردد .
تکنيکها ، روشها و الگوريتمهاي داده کاوي ، راههاي پياده سازي عملياتهاي داده کاوي هستند . اگر چه هر عمليات نقاط ضعف و قوت خود را دارد ، ابزارهاي گوناگون داده کاوي عملياتها را بر اساس معيارهاي خاصي ، انتخاب مي کنند .اين معيارها عبارتند از :
· تناسب با نوع داده هاي ورودي
· شفافيت خروجي داده کاوي
· مقاومت در مقابل اشتباه در مقادير داده ها
· ميزان صحت خروجي
· توانايي کار کردن با حجم بالاي داده ها
در جدول زيرتکنيکهاي وابسته به هر يک از عملياتهاي چهار گانه مشخص شده اند
نام عمليات | تکنيک هاي داده کاوي |
مدلسازي پيشگويي کننده | رده بندي ، پيشگويي مقدار |
تقطيع پايگاه داده ها | خوشه بندي آماري ، خوشه بندي |
تحليل پيوند | کشف بستگي ، کشف الگوهاي متوالي ، کشف دنباله هاي زماني مشابه |
تشخيص انحراف | آمار ، تجسم مدل |
عملياتها و تکنيکهاي داده کاوي
مدلسازي پيشگويي کننده
مدلسازي پيشگويي کننده ، شبيه تجربه يادگيري انسان در به کار بردن مشاهدات براي ايجاد يک مدل از خصوصيات مهم پديده ها است . در اين روش از تعميم دنياي واقعي و تعميم دنياي واقعي و قابليت تطبيق داده هاي جديد با يک قالب کلي ، استفاده مي شود .
در اين مدل ، مي توان با تحليل يک پايگاه داده هاي موجود ، خصوصيات مجموعه هاي داده را تعيين کرد . اين مدل با استفاده از روش يادگيري نظارت شده، شامل دو فاز آموزش و آزمايش ايجاد شده است . در فاز آموزش با استفاده از نمونه هاي عظيمي از داده هاي سابقه اي ، مدلي ساخته مي شود که که به آن مجموعه آموزشي گو يند . در فاز آزمايش اين مدل روي داده هايي که در مجموعه آموزشي قرار ندارند ، اعمال مي شود تا صحت و خصو صيات آن تاييد گردد .
از کاربردهاي عمده اين مدل مي توان به مديريت مشتريان ، تصويب اعتبار ، بازاريابي مستقيم در خرده فروشي و ... اشاره کرد .
تقطيع پايگاه داده ها
هدف از تقطيع پايگاه داده ها ، تقسيم آن به تعداد نامعيني از قطعات يا خوشه هايي[15] از رکوردهاي مشابه است ، يعني رکوردهايي که خصوصياتي مشابه دارند و مي توان آنها را همگن فرض کرد . پيوستگي داخلي اين قطعات بسيار زياد است در حالي که همبستگي خارجي ميان آنها کم مي باشد .
در اين مدل بر خلاف مدل قبل ، از يادگيري نظارت نشده براي تعيين زيرشاخه هاي ممکن از جمعيت داده اي استفاده مي شود . دقت تقطيع پايگاه داده ها از روشهاي ديگر کمتر است ، بنابراين در مقابل خصوصيات نامربوط و افزونگي ، حساسيت کمتري از خود نشان مي دهد .
از کاربردهاي اين روش مي توان به شناسايي مشتريان ، بازاريابي مستقيم و ... اشاره کرد . در شکل 4-1 مثالي از تقطيع پايگاه داده ها ديده مي شود . [1]
در اين مثال ، پايگاه داده ها شامل 200 مشاهده است که در آن100 اسکناس تقلبي و 100 اسکناس واقعي هستند . داده ها داراي شش بعد مي باشند که هر بعد مربوط به يک معيار از اندازه اسکناس ها است . با استفاده از تقطيع پايگاه داده ها مي توان خوشه هاي متناظر با اسکناسهاي معتبر و تقلبي را تشخيص داد . دو خوشه از اسکناسهاي تقلبي وجود دارند و اين بدان معني است که حداقل دو گروه مبادرت به توليد و چاپ اسکناسهاي تقلبي مي کنند .
تقطيع پايگاه داده ها با آمارگيري مرتبط است که در ان از فاصله ميان رکوردها و درصد قرار گرفتن داده هاي ورودي در خوشه ها ، جهت تجزيه و تحليل استفاده مي شود .
تحليل پيوند
در اين روش پيوند هايي مرسوم به بستگي[16] ميان رکوردها و يا مجموعه اي از رکوردها بازشناسي مي شوند . سه رده ويژه از تحليل پيوند وجود دارند که عبارتند از :
1. کشف بستگي[17]
2. کشف الگوهاي متوالي[18]
3. کشف دنباله هاي زماني مشابه[19]
براي قوانين وابستگي دو پارامتر معرفي مي گردند :
1. درجه پشتيباني[20] : کسري از جمعيت است که در يک قاعده ، هم مقدم و هم تالي را دارند . در واقع درصدي از تراکنشها که شامل همه اقلام ظاهر شده در مقدم و تالي باشند . فرض کنيم که تنها در0001/ . % از تراکنشهاي خريد ، شير و پيچ گوشتي با هم باشند ، بنابراين درجه پشتيباني براي قانون " پيچ گوشتي → شير " بسيار پايين است . اين مساله نشان مي دهد که مدرکي براي اثبات رابطه ميان " شير" و " پيچ گوشتي " وجود ندارد .
2. درجه اطمينان[21] : در يک جمعيت مورد بررسي ، کسري از موارد است که وقتي مقدم قاعده در آنها ظاهر شده است ، تالي نيز در آنها وجود دارد . به عنوان مثال در قانون " پنير → نان " اگر درجه اطمينان برابر 80% تراکنشهاي خريد ، اگر نان وجود داشته باشد ، پنير نيز وجود دارد . بايد توجه داشت که مقدار درجه اطمينان با تعويض مقدم و تالي در قاعده ، ممکن است به شدت تغيير کند .
دامنه اندازه پايگاه هاي داده امروزه به ترا بايت رسيده است اين پايگاه داده به همراه اطلاعات فراواني که به صورت ناشناخته در آن تعبيه گرديده مي بايشد مساله اين است که چگونه مي توان از ميان اين جنگل عظيم اطلاعاتي به همراه درختهاي پيچيده آن اطلاعاتي را استنتاج نمود؟با استفاده از داده کاوي مي توان اين هزينه را کم نمود و در عوض بازدهي بيشتري بدست آورد.در حال حاضر شرکتهاي بي شماري سعي دارند با استفاده از اين روش به مشتريان خود پيشنهادات بهتري براي خريد ارائه دهند تا فروش آنها بالاتر رفته و در عوض ضرر و زيان موجود از اين طريق کمينه گردد.
داده کاوي فرآيندي است که طي آن با استفاده از انواع مختلف ابزار تحليل داده به دنبال کشف الگوها و ارتباطات ميان داده هاي موجود که ممکن است منجر به استخراج اطلاعات جديدي از پايگاه داده گردند مي باشد.
اولين وساده ترين گام تحليل داده در داده کاوي توضيح و شرح مشخص داده (از جمله معني داده وانحراف استاندارد کلمه)مي باشد که اين کار مي تواند به وسيله نمدارها و گراف هاييوهمچنين کلماتي که با اين کلمه ارتباط معنايي نزديکي دارند انجام گردد در نيجه جمع آوري جستجو و انتخاب داده درست در اين بخش بسيار مهم و حياتي مي باشد.
اما اين کار به تنهايي کار خاصي انجام نمي دهد شما بايد يک مدل پيش بيني کننده بر اساس الگهايي که از نتايج دانش به دست آورده شده بسازيد سپس آزمايش کنيد که آيا ان مدل با نمونه اصلي سازگار است يک مدل خوب نبايد با جهان واقع تفاوت چنداني داشته باشد.[1]
آخرين گام نيز تشخيص صحت وسقم عملکرد مدل بصورت تجربي مي باشدم.براي مثال از يک بانک مربوط به مشتريان وپاسخ هايي که به يک پيشنهاد خاص داده اند يک مدل مي سازيد که بر اساس آن مشخص مي شود که کدام حدس وانتظار بيشترين نزديکي را با يک پيشنهاد مانند پيشنهاد قبلي دارد و اينکه آيا شما مي توانيد بر اين حدس اعتماد کنيد يا نه؟
قابليتهايDataMining:
بايد توجه داشته باشيد كه داده كاوي يك ابزار جادويي نيست كه بتواند در پايگاه داده شما به دنبال الگوهاي جالب بگردد و اگر به الگويي جديدي برخورد كرد آن را به شما اعلام كند بلكه صرفا الگوها و روابط بين داده ها را به شما اعلام مي كند بدون توجه به ارزش آنها. بنابراين الگوهايي كه به اين وسيله كشف مي شوند بايد با جهان واقع تطابق داشته باشند. به عنوان مثال داده كاوي مي تواند با تعيين نرخ در آمدهايي كه بطور مثال بين 50/000$ و 65/000$ است كه براي خريد روزنامه خاصي در ميان فروشندگان است تعيين كند كه اكثر كالاهاي مورد نياز مردم چه رنجي از قيمت بوده وكدام ها هستند؟
به اين ترتيب شما مي توانيد از هدف خريد مردم بدون اينكه فاكتورهايي براي خريد كالاهاي خود در نظر بگيريد مطلع شويد؟
براي تضمين بدست آمدن نتايج با معني لازم است كه شما بتوانيد داده هاي خود را تحليل كنيد كيفيت خروجي شما به اطلاعات خارج از پايگاه داده ( به عنوان مثال داده اي باارزشي كه متفاوت از داده هاي نوعي در پايگاه داده شماست) ستونهاي ظاهرا بي ارتباط يا با ارتباط نزديك به بقيه پايگاه داده(مانند تاريخ توليد يا انقضاي كالا) بستگي نزديكي دارند .الگوريتم بر اساس حساسيتشان به داده ها روشهاي متفاوتي دارند. اما غير عاقلانه است كه به محصول داده كاوي صرفا به براي تمام تصميم گيري هايمان تكيه كنيم.
داده كاوي بطور اتوماتيك و بدون رهنمايي قادر به كشف راه حل ها نيست. شما ترجيحا به جاي بيان يك هدف مبهم مانند "كمك به ارتقاي پاسخ دهي به در خواست ها mailمن " شما بايد از داده كاوي براي يافتن خصيصه هاي افرادي كه
(1):به درخواست هاي شما پاسخ مي دهند
(2):به درخواست هاي شما پاسخ داده و خريد زيادي مي كنند
استفاده كنيد. الگو هايي كه داده كاوي براي يافتن به اين دو هدف استفاده مي كنند متفاوت است.
اگر چه يك ابزار خوب براي داده كاوي شما را از پيچيدگي هاي تكنيكهاي آماري راحت مي سازد اما به شما براي فهميدن كار هاي ابزاري كه انتخاب كرده ايد و همچنين الگوريتمهايي كه بر پايه آن كار مي كند نيازمند است. انتخابي كه شما براي ابزار مورد نياز انجام مي دهيد و بهينه سازي هايي را كه شما انجام مي دهيد در دقت و سرعت كار بسيار تاثير دارد.[2]
داده كاوي و انبار داده ها :
اغلب داده اي كه مورد كاوش قرار مي گيرد ابتدا از يك انبار داده آماده شده به داخل يك پايگاه داده كاوي سرازير مي شود. اين كار مزاياي زيادي دارد. پايگاه داده كاوي مي تواند به جاي يك انبار فيزيكي داده يك انبار منطقي از داده ها باشد. به شرط آنكه انبار دادهDBMSبتواند دامنه هاي منابع اضافي از داده كاوي را نيز پوشش دهد. روند شرح داده شده در شكل زير آمده است:
داده كاوي و OLAP:
يكي از سوالهاي رايج در ميان متخصصان پردازش داده در مورد تفاوت ميان داده كاوي وOLAP(پردازش آناليزي on-line) .
Olapقسمتي از قالب ابزارهاي تصميم گيري است. پرس وجو هاي سنتي و ابزارهاي گزارش گيري كه چه چيزي در داخل يك پايگاه داده است.olap از اين فراتر ميرود و براي جواب دادن به علت درستي برخي موارد استفاده دارد.
داده كاوي , آمار و يادگيري ماشين
داده كاوي فوايدي از پيشرفتهاي رشته هوش مصنوعي را در خود جاي داده است كه هم شامل قواعدي براي مسائل تشخيص الگو و طبقه بندي مي باشد وهم ارتباطاتي كه از طريق كاربرد شبكه هاي عصبي و درختهاي تصميم گيري براي فهم مسائل صورت مي گيرد مي باشد.
داده كاوي در اين زمينه داراي الگوريتم هاي نسبتا جديدي مانند شبكه عصبي و درخت تصميم ورهيافت هاي جديدي براي الگوريتم هاي قديميتر مانند الگوريتم هاي تفكيك كننده دارد.
نكته مهم آنكه داده كاوي كاربرد اين تكنيكها را براي مسائل تجاري مشابه بالا به طريقي كه اين تكنيكها را براي كاربر خبره دانش و آمارگير متخصص قابل دسترس سازد استفاده مي شود.
كاربردهاي داده كاوي
داده كاوي به سرعت در حال محبوبيت است به خاطر كمك هاي اساسي آن.
سازمانهاي زيادي در حال استفاده از داده كاوي براي كمك به مديريت تمام فازهاي ارتباط با مشتري شامل به دست آوردن مشتريان جديد, افزايش سود از طريق مشتريان موجود و حفظ كردن مشتريان خوب هستند.با تعيين مشخصات يك مشتري خوب يك شركت مي تواند با همان مشخصات اهداف آينده خويش را پيش بيني كند. با پرونده سازي براي مشتري كه يك محصول خاص را خردي مي نمايد اين شركت مي تواند توجه خود را به مشتريان مشابهي كه از اين محصول خريد نكرده اند معطوف دارد با پرونده سازي براي مشترياني كه اين سازمان را ترك كرده اند يك شركت مي تواند مشترياني را كه خطر رفتن آنها نيز وجود دارد را نگه دارد چرا كه نگهداري يك مشتري موجود بسيار كم هزينه تر از بدست آوردن يك مشتري جديد هزينه مي برد. داده كاوي ارزشهايي را از طريق بررسي يك طيف وسيعي از كارخانه ها پيشنهاد مي كند.شركتهاي ارتباطات از راه دور و كارت هاي اعتباري دو شاخه بزرگ در استفاده از داده كاوي براي تشخيص استفاده كلاه بردارانه از خدمات آنها مي باشند. شركتهاي بيمه و درآمد هم علاقمند به استفاده از اين تكنولوژي براي كاهش كلاه برداري مي باشند. كاربردهاي دارويي نواحي مفيد ديگري هستند كه داده كاوي در آنها دست دارد داده كاوي مي تواند براي تشخيص تاثير اعمال جراحي, آزمايش هاي دارويي ودرمان استفاده گردد. شركتهايي كه در خريد و فروشهاي مالي فعاليت مي كنند از داده كاوي براي تعيين شاخصه هاي بازار و صنعت براي تشخيص كارايي درآمد استفاده مي كنند. خرده فروشها از داده كاوي براي تصميم در مورد اينكه كدام محصول در فروشگاه ها در آمد زاست به منظور دسترسي به ارتقاي كيفيت كار خود استفاده بيشتري مي نمايند. شركتهاي دارويي در حال كاوش پايگاههاي داده بزرگي از تركيبات شيميايي و مواد ژنتيكي براي كشف مواد كه مي توانند گزينه خوبي براي ساخت به عنوان دارو باشند.[1]
داده كاوي موفق:
دو نكته براي موفق بودن يك داده كاوي وجود دارد. اول اينكه يك فرموله سازي دقيق از مساله اي است كه شما بايد حل كنيد. دومين نكته استفاده از داده صحيح است. پس از انتخاب داده اي كه در دسترس شماست يا شايد خريد داده خارجي شما ممكن است نيازمند شويد آن را به روشهايي انتقال داده يا دسته بندي كنيد.
تحليل ارتباطات:
تحليل ارتباط يک رهيافت توصيفي براي اکتشاف داده است که مي تواند به مشخص سازي ارتباطات ميان مقادير در پايگاه داده کمک نمايد.دو رهيافت عام براي رسيدن به تحليل ارتباطي اکتشاف ارتباطي و اکتشاف توالي مي باشد.اکتشاف ارتباطات قوانيني را در مورد مواردي را که بايد با هم در يک رويداد ظاهرشوند مانند تراکنش خريد را مي ِابد.تحليل سبد عرضه يک نمونه شناخته شده از کشف ارتباط مي باشد.کشف توالي بسيبار شبيه کشف ارتباط است با توجه به اين نکته که در اينجا توالي يک ارتباط است که در طول يک بازه زماني صورت مي گيرد.
ارتباطات به صورت A=>B نوشته مي شود که به A مقدم يا طرف سمت چپ و به B تالي يا طرف سمت راست مي گويند.براي مثال در قانون ارتباطي "اگر مردم يک چکش بخرند آنگاه مي توانند ميخ بخرند" جمله مقدم "خريد چکش" و جمله تالي "خريد ميخ" مي باشد.
براحتي ميتوان نسبت تراکنشهايي را که شامل مورد يا ليستي ازموارد خاص مي باشد با شمردن آنها تعيين کرد (که در اطنجا موارد ميخ ها و چکش هامي باشد) را تعيين کرد.تعداد موجود از يک نوع ارتباط خاص که در يک پايگاه داده به نظر مي رسد را موجودي يا شيوع آن مورد مي گويند.اگر براي مثال گفته شود که از هر 1000تراکنش 15 تاي آن شامل "ميخ و چکش" مي باشد موجودي اين ارتباط 1.5%خواهد بود.يک موجودي کم(مثلا يک در ميليون) مي تواند بيانگر اين باشد که ان ارتباط خاص در پايگاه داده چندان مهم نيست.
براي کشف قوانين معنا دار ما بايد به فراواني متناسب دفعات اتفاق موارد و ترکيباتشان نيز بنگريم.باداشتن تعداد دفعات اتفاق مورد A مورد B چند بار اتفاق مي افتد؟به عبارت ديگر سوال اين است که ببينيم "هنگامي که مردم يک چکش مي خرند چه تعداد از اين افراد ميخ هم مي خرند؟ عبارت ديگر براي اين پيش بيني شرطي اطمينان نام دارد.
فرض کنيد پايگاه داده فرضي مان رابه صورت زير و با جزئيات بيشتر براي بيان اين مفاهيم در نظر بگيريم:
تمام تراکنشهاي سخت افزار :1000
تعداد تراکنشهايي که شامل "چکش " مي باشد:50
تعداد تراکنشهايي که شامل "ميخ" مي باشد:80
تعداد تراکنشهايي که شامل "تخته " مي باشد:20
تعداد تراکنشهايي که شامل " ميخ و چکش"مي باشد:15
تعداد تراکنشهايي که شامل " ميخ و تخته " مي باشد:10
تعداد تراکنشهايي که شامل " چکش و تخته" مي باشد:10
تعداد تراکنشهايي که شامل " چکش و تخته و ميخ " مي باشد:5
حال قادر به محاسبه ايم:
موجودي "ميخ و چکش"=1.5%
موجودي " ميخ و چکش وتخته"=0.5%
درصد اطمينان "چکش=>ميخ" = 30%
درصد اطمينان " ميخ=> چکش" = 19%
درصد اطمينان " چکش و ميخ=>تخته" = 33%
درصد اطمينان " تخته=> چکش و ميخ " =25%
بنابراين ما مي بينيم که احتمال اينکه يک خرنده چکش ميخ هم بخرد(30%) بيشتر از احتمال آن است که فردي که ميخ مي خرد چکش هم بخرد(19%).ارتباط چکش و ميخ به اندازه اي بزرگ است که يک قانون با معني باشد.
Lift(نسبتا پيشرفت) يکي از معيارهاي اندازه گيري قدرت يک ارتباط است.هر چه lift بزرگتر باشد تاثير اتفاقات A بر احتمال اينکه B اتفاق بيفتد بيشتر است.lift بصورت نسبت
(اطمينان A=>B) تقسيم بر فراواني B محاسبه مي شود:
براي مثال ما:
Lift "چکش=>ميخ" :3.75
Lift " چکش و ميخ =>تخته ":16.5
الگوريتمهاي ارتباط اين قوانين را با معادل مرتب سازي داده هنگام شمارش دفعاتي که مي توانند درصد اطمينان و موجودي را محاسبه كنند مي يابد. اثراتي كه هر يك از اين قوانين مي توانند داشته باشند يكي از معيارهاي تفاوت اين الگوريتم هاست. اين معيار مهم است زيرا كه نتايج تركيبي بسيار زيادي از تعداد بي شماري از قوانين بدست مي آيد حتي براي سبد هاي خريد. برخي از الگوريتمها يك پايگاه داده از قوانين, فاكتورهاي ايمن, و فراهم آوردن امكان جستجو(براي مثال تمام ارتباطاتي كه در آن كلمه بستني در قوانين به عنوان نتيجه آمده و فاكتوري برابر80%را دارند نشان بده)را ايجاد مي نمايند.
اغلب تصميم گيري در مورد كار با قوانيني كه شما كشف كرده ايد دشوار است.به عنوان مثال در يك نقشه خريد براي مشتريان در يك فروشگاه قراردادن تمام اجناس مرتبط منطقي به صورت فيزيكي در كنار يكديگر ممكن است ارزش كامل سبد خريد را كاهش دهد – مشتريان ممكن است در مجموع ارزش كمتري خريد كنند چون آنها بر خلاف نقشه خريد مورد نظر شما در حين راه رفتن در مغازه اجناس مورد دلخواه خود را خريد مي كنند. در چنين حالتي تقريب و تحليل ارتباطات معمولا براي بدست آوردن هر گونه سودي از قوانين مرتبط با هم مورد نياز خواهد بود.
روشهاي گرافيكي مي توانند در نمايش ساختار ارتباطات نقش داشته باشند. در شكل زير هر يك از دواير يك مقدار يا يك رويداد را نمايش مي دهد. خطوط ارتباطي ميان اين دايره ها يك ارتباط را نشان مي دهند. خطوط كلفت تر ارتباطات قوي تر و فراوان تري را نمايش مي دهند.[4]
سلسله مراتبي از انتخاب ها
هدف داده كاوي توليد دانش جديدي است كه كاربر بتواند بر اساس آن كار خود را جلو برد.اين كار بوسيله ساختن مدلي از جهان واقعي بر پايه داده هايي كه از منابع گوناگون بدست مي آيد صورت گيرد كه اين منابع مي تواند شامل تراكنشهاي هماهنگ, تاريخ مربوط به هر مشتري, اطلاعات نمايش گرافيكي, داده كنترل فرآيند و پايگاه داده هاي مرتبط خارجي مانند اطلاعات اعتبار اداري و ... باشد. نتيجه مدل سازي يك سري توضيحات در مورد الگوها و ارتباطات داده اي كه مي تواند به صورت مطمئني جهت پيش بيني آينده مورد استفاده قرار گيرد.
براي جلوگيري از سرگرداني در مراحل مختلف داده كاوي ايجاد تصويري از سلسله مراتبي از انتخابات و تصميم ها كه نياز مند آن هستيد در ذهن قبل از شروع كار به شما كمك خواهد كرد:
- هدف كار
-نوع پيش بيني
-نوع مدل انتخابي
-الگوريتم
-محصول
اولين گام مشخص نمودن هدف كار مي باشد :
هدف نهايي از جستجوي اين داده چيست؟ براي مثال جهت يافتن الگوهاي مفيدي در داده خود براي اين كه به شما كمك كند مشتريان خود را حفظ كنيد شما بايد يك مدل براي پيش بيني سودبخشي به مشتري و مدل ديگري براي شناسايي مشترياني كه آنجا را ترك كرده اند طراحي كنيد. دانش شما از احتياجات و اهداف سازمانتان شما را به سمت فرموله كردن اهداف مدلهايتان راهنمايي خواهد كرد.
گام بعدي تصميم در مورد انتخاب نوعي پيش بيني كه از همه مناسب تر است مي باشد:
(1)طبقه بندي: تعيين اين كه اين مورد خاص در كدام كلاس يا دسته قرار مي گيرد.
(2)حدس زدن اينكه يك متغير چه مقدار عددي خواهد داشت(اگر متغيري باشد كه با زمان تغيير كند اين كار حدس سريهاي زماني ناميده مي شود).در مثال بالا شما مي توانيد از اين حدس براي پيش بيني مقدار سوددهي و طبقه بندي براي پيش بيني اينكه كدام مشتريان ممكن است خريد شما را ترك كنند استفاده كنيد.
حالا نوبت به نوع مدل مي رسد:
كه عبارت است از يك شبكه عصبي براي انجام حدس فوق الذكر و يك درخت تصميم براي طبقه بندي. مدلهاي آماري سنتي نيز براي انتخاب از مدلهاي معمولي خطي , تحليل تفكيكي و حدس منطقي وجود دارد. مهمترين نوع اين مدلها براي داده كاوي در بخش بعد(الگوريتمها و مدلهاي داده كاوي)توضيح داده مي شود.
الگوريتمهاي زيادي براي ساخت مدلهايتان در دسترس هستند. شما مي توانيد با استفاده از توابع شعاعي يا انتشاري شبكه عصبي بسازيد. براي درخت تصميم شما مي توانيد از ميان طرق cart, c5.0, Quest,CHAIDيكي را انتخاب كنيد. برخي از اين الگوريتم ها در مدلها و الگوريتمهاي داده كاوي توضيح داده شده است.
هنگام انتخاب يك محصول داده كاوي بايد توجه داشت كه اين محصولات پياده سازيهاي مختلفي از يك الگوريتم خاص دارند حتي اگر اين الگوريتم براي همه آنها نام يكساني داشته باشد.اين تفاوتها در پياده سازي مي تواند بر روي مشخصه هاي قابل استفاده مانند استفاده از حافظه و ذخيره داده و همچنين بر روي مشخصه هاي كارايي مانند سرعت و دقت تاثير بگذارند.
بسياري از اهداف تجاري به بهترين شكل به وسيله ساخت انواع مختلفي از مدلها با استفاده از الگوريتمهاي مختلف به دست مي آيند. شما ممكن است تا زماني كه راه هاي مختلفي را امتحان نكنيد قادر نباشيد تعيين كنيد كدام نوع مدل بهترين است.[1]
طبقه بندي
مسائل طبقه بندي به شناسايي خصوصياتي منجر مي شوند كه مشخص مي نمايند هر مورد به كدام گروه تعلق دارد.اين الگو هم مي تواند براي فهم داده موجود و هم براي پيش بيني اينکه هر نمونه جديد چگونه کار مي کند استفاده شود. براي مثال شما ممکن است بخواهيد پيش بيني کنيد که آيا اشخاص براي پاسخگويي به درخواست يک ميل مستقيم که ممکن است به يک دستگاه تلفن با مسافت زياد آسيب برساند مي توانند گروه بندي شوند يا براي يک عمل جراحي بايد گروه بندي شوند.
داده کاوي مدلهاي طبقه بندي را بوسيله امتحان کردن داده طبقه بندي شده(موارد) و نهايتا يافتن يک الگوي پيش گو ايجاد مي کند.اين موارد موجود مي تواند از يك پايگاه داده تاريخي ناشي شود مانند اطلاعات افرادي كه تحت معالجه دارويي خاصي هستند و يا به سمت يك خدمت با مسافت دور جذب شده اند.يا اينكه از تجربه هايي كه طي آن يك نمونه از تمام پايگاه داده در جهان واقعي تست شده باشد و نتايج آن براي ايجاد يك گروه بند استفاده شده باشند منتج شود. براي مثال يك نمونه از ليستي از پيامها به عنوان پيشنهاد فرستاده خواهد شد و نتايج پيام رساني براي ساخت يك مدل طبقه بندي جهت بكار گرفته شدن در تمام پايگاه داده استفاده خواهد شد.
حدس بازگشتي
حدس بازگشتي از داده هاي موجود براي پيش بيني اين كه مقادير داده هاي ديگر چه خواهد بود استفاده مي كند. در ساده ترين حالت حدس مذكور از تكنيكهاي آماري مانند حدس خطي استفاده مي كند. متاسفانه بسياري از مسائل جهان واقع تصويري خطي از مقادير قبلي نيستند. براي نمونه مقادير فروش, ارزش فروش, ارزش سهام و نرخ ورشكستگي محصول براي پيش بيني سخت مي باشد زيرا آنها ممكن است بر فعل و انفعالات پيچيده حاصل از چندين متغير پيش بيني كننده متكي باشند. بنابراين تكنيكهاي پيچيده تري ممكن است براي پيش بيني متغيرهاي آينده ضروري باشند. انواع مدل يكسان اغلب مي توانند هم براي حدس بازگشتي وهم براي طبقه بندي استفاده شوند. براي مثال الگوريتم درخت تصميم CART (درختهاي حدس وطبقه بندي )هم براي ساخت درختهاي حدس و هم براي ساخت درختهاي طبقه بندي به كار مي رود. شبكه هاي عصبي هم مي توانند هر دو نوع مدل نام برده شده را ايجاد نمايند.
سري هاي زماني
سري هاي زماني پيش بيني كننده مقاديري را كه هنوز مقدارشان مشخص نيست بر اساس يك سري از پيشگوهاي متغير با زمان پيش بيني مي كنند. مانند حدس بازگشتي اين روش هم از نتايج معلوم قبلي براي اعمال پيشگويي هاي بعدي اش بهره مي برد. مدلها بايد خواص منحصر بفرد زمان علي الخصوص سلسله مراتب دوره هاي زماني مانند دوره هاي فصلي تاثيرات تقويمي مانند تعطيلات محاسبات تاريخي و ملاحظات خاص مانند تطبيق گذشته با حال را ذخيره نمايند.
مدلها و الگوريتمهاي داده كاوي
حال بياييد برخي از الگوريتمها و مدلهايي را كه براي كاوش داده استفاده مي شود را بررسي كنيم. اغلب محصولات از انواع گوناگوني از الگوريتمها كه در علم كامپيوتر يا مقالات آماري ارائه شده به همراه پياده سازي خاص آنها كه جهت رسيدن به هدف فروشنده مي باشد استفاده مي نمايند. براي مثال بسياري از فروشندگان نسخه هايي از درختهاي تصميم CARTيا CHAIDرا به همراه امكاناتي براي كار بر روي كامپيوترهاي موازي مي فروشند. برخي از فروشندگان الگوريتمهاي مختص خود دارند كه گرچه ممكن است وابستگي ها يا امكانات اضافي نداشته باشد اما مي تواند خوب كار كند.
شايد مهمترين نكنه اي باشد كه هيچ مدل يا الگوريتمي نمي تواند و نبايد به تنهايي استفاده شود. براي هر مساله داده شده طبيعت داده استفاده شده بر روي انتخاب مدلها و الگوريتمهايي كه شما بر مي گزينيد تاثير خواهد گذاشت. نمي توان هيچ مدل يا الگوريتمي را در اين زمينه بهترين ناميد. نتيجتا شما به يك سري ابزار و تكنولوژي جهت يافتن بهترين مدل ممكنه نياز خواهيد داشت.[3]
شبكه هاي عصبي
شبكه هاي عصبي به طور خاصي مورد استفاده اند چرا كه آنها ابزاري موثر براي مدلسازي مسائل بزرگ و پيچيده كه ممكن است در آنها صدها متغير پيش بيني كننده كه فعل و انفعالات زيادي دارند وجود داشته باشد.(شبكه هاي عصبي زيستي بطور غير قابل مقايسه اي پيچيده تر هستند.)شبكه هاي عصبي مي توانند در مسائل طبقه بندي يا حدسهاي بازگشتي(كه در آنها متغير خروجي پيوسته است) استفاده شوند.
يك شبكه عصبي با يك لايه داخلي شروع مي شود كه در آن هر گره به يك متغير پيشگو منسوب مي گردد. اين گره هاي ورودي به يك تعداد از گره ها در لايه پنهان متصل مي شوند.گره ها در لايه پنهان مي توانند به گره هايي در يك لايه پنهان ديگر يا به يك لايه خروجي متصل شود. لايه خروجي خود شامل يك يا بيشتر متغيرهاي جواب مي باشد.
يك شبكه عصبي با يك لايه پنهان
درخت هاي انتخاب
درخت هاي انتخاب راهي براي نمايش يك سري از قوانين كه به يك كلاس يا مقدار منجر مي شود مي باشند. براي مثال شما ممكن است بخواهيد درخواستهاي وام را برحسب ريسك اعتبار خوب يا بد طبقه بندي كنيد. شكل بعد يك مدل ساده از يك درخت انتخاب به همراه توضيح در مورد تمام بسته هاي پايه آن يعني گره انتخاب, شاخه ها و برگهاي آن كه اين مساله را حل مي كند نشان مي دهد.
اولين بسته گره بالايي تصميم يا ريشه مي باشد كه يك بررسي جهت برقراري شرط خاصي مي نمايد. گره ريشه در اين مثال “Income>$40,000” مي باشد. نتايج اين بررسي منجر مي شود كه درخت به دوشاخه تقسيم گرددكه هر يك نشان دهنده جوابهاي ممكن است.در اين مورد بررسي شرط مذكور مي تواند داراي جواب خير يا بله باشد در نتيجه دو شاخه داريم.
براساس نوع الگوريتم هر گره مي تواند دو يا تعداد بيشتري شاخه داشته باشد. براي مثال CARTدرختهايي با تنها دوشاخه در هر گره توليد مي كند.چنين درختي يك درخت دودويي مي باشد.
مدلهاي مختلف درخت تصميم بطور عمومي در داده كاوي براي كاوش داده و براي استنتاج درخت و قوانين آن كه براي پيش بيني مورد استفاده قرار مي گيرد استفاده مي شوند. يك تعداد از الگوريتمهاي مختلف مي توانند براي ساخت درختهاي تصميم شامل CHAID, CART,Quest وC5.0بكار روند.
اندازه درخت مي تواند از طريق قوانين متوقف شونده كه رشد درخت را محدود مي كنند كنترل شود.[3]
استنتاج قانون
استنتاج قانون روشي براي بدست آوردن يك سري از قوانين براي طبقه بندي موارد مي باشد. اگرچه درختهاي تصميم مي توانند يك سري قوانين توليد كنند روشهاي استنتاج قانون يك مجموعه از قوانين وابسته كه ضرورتا درختي تشكيل نمي دهند را توليد مي نمايد. چون استنتاج كننده قوانين لزوما انشعابي در هر سطح قرار نمي دهد و مي تواند گام بعدي را تشخيص دهد گاهي اوقات مي تواند الگوهاي مختلف و بهتري را براي طبقه بندي بيابد. برخلاف درختان قوانين توليدي ممكن است تمام حالتهاي ممكن را پوشش ندهند.
الگوريتمهاي ژنتيك
الگوريتمهاي ژنتيك براي يافت الگوها استفاده نمي شود بلكه بيشتر به منظور راهنمايي در مورد فرآيند يادگيري الگوريتمهاي داده كاوي مانند شبكه هاي عصبي مورد استفاده قرار مي گيرد.الگوريتمهاي ژنتيك به عنوان يك متد جهت انجام يك جستجوي هدايت شده براي مدلهاي خوب در فضاي حل مساله عمل مي كند.
اين الگوريتمها, الگوريتمهاي ژنتيك ناميده مي شوند چون بطور بي قاعده اي الگوي تكامل زيستي كه در آن اعضاي يك نسل بر سر انتقال خصوصيات خود به نسل بعد رقابت مي كنند تا نهايتا بهترين مدل يافت شود را دنبال مي كنند. اطلاعاتي كه بايد انتقال داده شود در قالب كروموزمها كه شامل پارامترهايي براي ساختن مدل مي باشد قرار مي گيرد.
فرآيند داده كاوي
مدلهاي فرآيند
با توجه به اينكه يك فرآيند سيستماتيك براي داده كاوي موفق ضروري است بسياري از فروشندگان و همفكران مشاور آنها يك مدل فرآيند براي راهنمايي كاربر خود كه از طريق يك سري مراحل مشخص او را به نتايج خوبي هدايت خواهد كرد طراحي كردند. براي مثال SPSSاز مراحل پنجگانه تشخيص دسترسي تحليل عمل و اتوماسيون و SASاز مراحل نمونه گيري, جستجو, تغيير و بهبود, مدل سازي و تعيين استفاده مي نمايد.
اخيرا ائتلاف فروشندگان وكاربران شامل سيستمهاي مهندسي NCRكپنهاك, راه حلهاي جامعSPSS و بانك OHRAدر حال ساختن يك فرآيند خاص كه به فرآيند استاندارد صنعتي داده كاوي (CRISP-DM) موسوم است مي باشند. اين فرآيند براي پردازش مدلهاي شركتهاي ديگر كه يك كاره يا دو كاره هستند يكسان مي باشد. اين فرآيند شروع خوبي براي كمك به مردم جهت فهم مراحل ضروري در داده كاوي موفق مي باشد.[1]
مدل فرآيند دو سويه
مدل فرآيند دو سويه كه در زير توضيح داده شده است برخي از موارد پيش بيني را از مدل CRISP-DMبه ارث مي برد.
گامهاي اصلي داده كاوي جهت كشف دانش عبارتند از:
1- تعريف مساله
2- ساختن پايگاه داده مربوط به داده كاوي
3- جستجوي داده
4- آماده ساختن داده براي مدل سازي
5- ساختن مدل
6- ارزيابي مدل
7- ساخت مدل ونتايج
به سراغ اين گامها مي رويم تا فرآيند كشف دانش را بهتر متوجه شويم.
1- تعريف مساله
در ابتداي امر پيش زمينه كشف دانش فهم درست داده و مساله مي باشد. بدون اين فهم درست هيچ الگوريتمي صرف نظر از خبره بودن آن نمي تواند نتيجه مطمئني براي شما حاصل نمايد و همچنين شما قادر نخواهيد بود كه مسائلي را كه سعي در حل آن داريد تعريف كرده و همچنين داده را جهت كاوش آماده نموده و يا نتايج را به طور صحيح تفسير نمائيد.براي استفاده بهتر از داده كاوي شما بايد يك بيان واضح از هدف خود داشته باشيد.[1]
ساختن يك پايگاه داده داده كاوي
اين گام به همراه دو گام بعدي هسته آماده سازي داده را تشكيل مي دهند. در مجموع گامهاي گفته شده وقت و كار بيشتري از ساير گامها مي برند. ممكن است شما گامهاي تكراري در آماده سازي داده و ساختن مدل داشته باشيد چرا كه در هر مرحله ممكن است به نكته اي برسيد كه شما را بر آن دارد داده خود را بهبود بخشيد. اين گامهاي آماده سازي داده مي تواند 50% تا 90% وقت و كار از تمام فرآيند كشف دانش را به خود اختصاص دهد.
داده اي كه مي خواهد كاوش شود بايد در يك پايگاه داده ذخيره شود. بر اساس مقدار داده, پيچيدگي داده و استفاده هايي كه قرار است از آن شود يك فايل معمولي و يا يك SpreadSheet براي اين كار كافي است.
به احتمال زياد شما مي خواهيد داده موجود در انباره داده را تغيير دهيد. به علاوه شما ممكن است بخواهيد فيلدهاي جديدي كه از فيلدهاي موجود محاسبه شده است را به انبار داده خود بيافزاييد.اين يكي از دلايل استفاده از يك پايگاه داده جداگانه است.
دليل ديگر براي اين كار آن است كه انبار داده هاي يكي شده ممكن است به آساني انواع جستجوهايي را كه شما براي فهم داده به آنها نياز داريد انجام ندهد. مانند پرس و جوهايي كه داده را خلاصه مي كند, گزارشات چند بعدي و بسياري از انواع ديگر از گرافها يا مصورات.
و دليل آخر اينكه شما ممكن است بخواهيد اين داده را در يك سيستم مديريت پايگاه داده به همراه يك طراحي فيزيكي متفاوت از انبار داده خود ذخيره كنيد. مردم به طور روز افزوني در حال انتخاب پايگاه داده هاي خاص منظوره اي هستند كه اين نيازهاي داده كاوي را به نحو مناسبي حمايت كند. به هرحال اگر داده موجود در انبار داده شما اجازه مي دهد كه مراكز منطقي داده اي ايجادكنيد و اگر شما مي توانيد تقاضاي داده كاوي را ارضا نماييد پايگاه داده شما به خوبي وظيفه خود را انجام مي دهد.[2]
مراحل لازم براي ساخت يك پايگاه داده داده كاوي به شكل زير مي باشد:
1- جمع آوري داده ها
2- توضيح داده ها
3- انتخاب داده ها
4- تعيين كيفيت داده ها و پاك كردن آن
5- تثبيت و يكپارچگي
6- ساختن فوق داده (داده هايي كه خود بيانگر توضيحي در مورد داده هاي موجود مي باشند.)
7- باركردن پايگاه داده مربوط به داده كاوي
8- نگهداري پايگاه داده مربوط به داده كاوي
اين كارها ممكن است لزوما به همين ترتيب گفته شده انجام نگردند.
جستجوي داده
به بخش توضيح داده براي داده كاوي كه توضيح مختصري راجع به اشكال, تجزيه و تحليل ارتباط و ديگر وسايل جستجوي داده مي باشد نگاهي بياندازيد.
هدف شناسايي مهمترين فيلدها در پيش بيني نتيجه و تعيين اينكه كدام يك از داده هاي بدست آمده مفيد مي باشد است.
در يك مجموعه داده اي با صدها يا حتي هزاران ستون جستجوي داده مي تواند كار و زمان بر باشد. يك واسط مناسب و جواب كامپيوتر سريع در اين فاز مهم و حياتي مي باشند زيرا هنگامي كه شما براي دريافت پاسخ برخي گراف ها مجبور باشيد 20 دقيقه صبر كنيد ماهيت جستجوي شما به كلي تغيير خواهد كرد.
آماده سازي داده براي مدل سازي
اين آخرين گام آماده سازي داده قبل از ساخت مدلهاست. چهار قسمت مهم در اين مرحله وجود دارد:
1- انتخاب متغيرها
2- انتخاب سطرها
3- ساختن متغيرهاي جديد
4- تغيير شكل متغيرها
ساختن مدل داده كاوي
مهمترين مساله براي يادآوري در مورد ساخت مدل آن است كه اين كار يك فرآيند تكراري است. شما براي جستجو به مدلهاي جايگزين جهت يافتن سودمندترين آنها جهت حل مسائلتان نياز داريد. آنچه كه شما در جستجوي يك مدل مناسب ياد مي گيريد مي تواند شما را به بازگشتن به عقب و انجام برخي تغييرات در داده مورد استفاده خود و حتي بهبود بيان ساله راهنمايي كند.
هنگامي كه شما در مورد نوع پيش بيني كه مي خواهيد انجام دهيد تصميم گرفتيد بايد يك نوع مدل براي ساخت تصميم خود انتخاب كنيد.
آماده سازي و آزمايش مدل داده كاوي احتياج به اين دارد كه داده به حداقل دو گروه شكسته شود: يكي براي آماده كردن مدل و ديگري جهت تست مدل مربوطه. اگر شما از آماده سازي و تست متفاوتي استفاده ننمائيد دقت مدل خواهد بود.[1]
تائيد اعتبارساده
پايه اي ترين روش تست داده تاييد اعتبار ساده مي باشد. براي انجام اين كار چون درصدي از پايگاه داده را به عنوان يك تست پايگاه داده كنار بگذاريد و به هر صورت از آن در برآورد و ساخت مدل استفاده ننمائيد. اين درصد معمولا بين 5 تا 33 مي باشد.
ارزيابي و تفسير
تاييد اعتبار مدل
بعد از ساخت يك مدل شما بايد نتايج آن را ارزيابي نموده و همچنين اهميت آن را نيز توضيح دهيد.
ماتريسهاي پيچيدگي
براي مسائل طبقه بندي يك ماتريس پيچيدگي ابزار مفيدي براي فهم نتايج مي باشد. يك ماتريس پيچيدگي تعداد مقادير كلاس (گروه)مجازي را در مقايسه با تعداد مقادير كلاس(گروه) پيش بيني شده نشان مي دهد. نه تنها چگونگي پيش بيني مدل توسط اين ماتريس نشان داده مي شود بلكه نشان دهنده جزئياتي است كه براي نشان دادن موارد اشتباه ضروري است. ستونها كلاسهاي مجازي و سطرها كلاسهاي پيش بيني شده را نشان مي دهند. بنابراين قطرهاي اين ماتريس بيانگر تمام پيش بيني هاي درست مي باشند. در ماتريس پيچيدگي مي بينيد كه مدل ما 38 تا از 46 تا كلاس Bرا به درستي پيش بيني كرده است اما 8 تا از آنها اشتباها كلاس بندي شده اند. 2 تا به عنوان كلاسAو6 تا به عنوان كلاس C مي باشند.
در حالات خاص اگر قيمت هاي گوناگون با اشتباهات مختلفي در ارتباط باشند يك مدل با دقت كمتر ممكن است بر يك مدل با دقت بيشتر و در ضمن قيمت بيشتر به خاطر انواع اشتباهاتي كه ايجاد مي كند ترجيح داده شود. براي مثال فرض كنيد در ماتريس بالا هر جواب درست قيمتي معادل 10 دلار و هر جواب نادرست براي كلاس A 5دلار , براي كلاس B 10 دلار و براي كلاس C 20 دلار داشته باشد. بنابراين هزينه شبكه اي ماتريس معادل:
خواهد داشت.
اما ماتريس شكل بعد را در نظر بگيريد. دقت تا 79% كاهش پيدا كرده است هنگامي كه همان قيمتهاي قبلي را بر روي اين ماتريس اعمال كنيم هزينه كل برابر:
بنابراين اگر بخواهيد مقدار ارزشي مدل را بيشينه كنيد بهتر است كه مدلي با دقت كمتر ولي در عوض با ارزش شبكه اي بيشتر انتخاب نمائيد.[4]
ايجاد معماري مدل و نتايج
هنگامي كه يك مدل ساخته و تاييد اعتبار مي شود مي تواند در دو راه اصلي مورد استفاده قرار گيرد. راه اول براي تحليل گر است كه اعمالي را بر اساس ديد ساده از مدل و نتايج آن معرفي مي كند. راه دوم بكاربردن مدلها در مجموعه داده اي مختلف است. اين مدل مي تواند براي مشخص نمودن ركوردها بر اساس گروه بنديشان و يا مقدار دهي يك امتياز مثلا احتمال انجام يك عمل استفاده گردد.
هنگام به دست آوردن يك كاربرد پيچيده داده كاوي اغلب اگر چه بخش بحراني اما كوچك پروژه نهايي به حساب مي آيد. براي مثال دانشي كه از داده كاوي كشف مي شود مي تواند با دانش متخصصان داده و تراكنشهاي ورودي تركيب شود. در يك سيستم تشخيص فرآيند الگوهاي موجود فرآيند مي توانند با الگوهاي كشف شده تلفيق شوند. هنگامي كه موارد مفروض اين فرآيند براي ارزيابي به بررسي كنندگان فرستاده مي شوند بررسي كنندگان ممكن است نياز داشته باشند كه به ركوردهايي در پايگاه داده كه مربوط به قسمتهاي ادعا شده توسط يك سازنده است دسترسي پيدا كنند.
به طور كلي مراحلي كه توضيح داده شد براي انجام هر فرآيند داده كاوي لازم به نظر مي رسد.
منابع و مراجع:
[2] Jeffery W. Seifert , Analyst in information science and Technology Policy, ‘Data Mining : An Overview ‘ December 2004.
[3] David J. HAND , Data Mining: Statistics and More? , December 2002.
[4] Eamonn Keogh , Stefano Lonardi , Chotirat Ann Ratanamahatana , ‘Towards Parameter-Free Data Mining ‘ Semtember 2005.
[3] Exploratory Data Analysis
[6] Knowledge Discovery From Database
[7] Decision Support System
[17] Association Discovery
[18] Sequential Pattern Discovery
[19] Similar time Sequences