همانطور که در اینجا گفته شد الگوریتم های داده کاوی به پنج دسته کلی تقسیم می شوند. در این مقاله هر یک از الگوریتم های داده کاوی را به صورت مختصر شرح میدهم.
الگوریتم وابستگی(Association algorithm)
الگوریتم وابستگی نوعی آنالیز پیوندی است که برای تشخیص رفتار یک رویداد و یا یک پروسهی خاص استفاده میشود. این الگوریتم از دو بخش شرط و نتیجه تشکیل شده. بخش شرط یک آیتم خاص از اطلاعات را کشف و در بخش نتیجه آیتمی دیگر از اطلاعات که وابسته به شرط است را پیدا میکند. در واقع شرحی از دو کلمهی "اگر" و "پس" ، برای کشف رابطههای ناشناخته میان اطلاعات است. برای مثال، میتوان گفت که "اگر" شخصی چکش بخرد "پس" به احتمال 80 درصد میخ هم خریداری میکند.
الگوریتم وابستگی بسیار مفید است چراکه توسط آن میتوانیم رفتار مشتریان را تجزیه و تحلیل و پیشبینی کنیم. بعلاوه این الگوریتم نقش مهمی در تحلیل اطلاعات سبد خرید و چیدمان محصولات دارد که در نتیجه سبب میشود تا کالاها را به صورت هدف دار به مشتریان پیشنهاد دهیم.
الگوریتم خوشهبندی(Clustering algorithm)
خوشهبندی از جمله الگوریتمهای دستهبندی دادهکاوی است. الگوریتم خوشهبندی اطلاعاتی را که ویژگیهای نزدیک به هم و مشابه دارند را در قطعههایی جداگانه که به آن خوشه گفته میشود قرار میدهد. به بیان دیگر خوشهبندی همان دستهبندیهای سادهای است که در کارهای روزانه انجام میدهیم. وقتی با یک مجموعه کوچک از صفات روبرو باشیم این دسته بندی به سادگی قابل اجراست، برای مثال در یک مجموعه از خودکارهای آبی، مشکی، قرمز و سبز به راحتی میتوانیم آنها را در 4 دسته قرار دهیم اما اگر در همین مجموعه ویژگیهای دیگری مثل سایز، شرکت سازنده، وزن، قیمت و... مطرح باشد کار کمی پیچیده میشود. حال فرض کنید در یک مجموعه متشکل از هزاران رکورد و صدها ویژگی قصد دسته بندی دارید، چگونه باید این کار را انجام دهید؟!
بخش بندی دادهها به گروهها یا خوشههای معنادار به طوری که محتویات هر خوشه ویژگیهای مشابه و در عین حال نسبت به اشیاء دیگر در سایر خوشهها غیر مشابه باشند را خوشهبندی میگویند. از این الگوریتم در مجموعه دادههای بزرگ و در مواردی که تعداد ویژگیهای داده زیاد باشد استفاده میشود.
گاهی اوقات ممکن است با مشاهده اولیه، خوشهبندی انجام شده منطقی به نظر نرسد اما با کمی تحلیل متوجهی دقت این الگوریتم میشوید.
الگوریتم درخت تصمیم(Decision Trees algorithm)
درخت تصمیم یکی از قویترین و پرکاربردترین الگوریتمهای دادهکاوی است که برای کاوش در دادهها و کشف دانش کاربرد دارد. این الگوریتم دادهها را به مجموعههای مشخصی تقسیم میکند. هر مجموعه شامل چندین زیر مجموعه از دادههای کم و بیش همگن که دارای ویژگیهای قابل پیش بینی هستند تقسیم میشود. برای مثال فرض کنید که اطلاعاتی از محصولات فروخته شده خود دارید. با بررسی این اطلاعات مشخص میشود که تعداد 9 فروش از 10 فروش محصول دوچرخه توسط افراد 15 تا 25 ساله انجام گرفته است و تنها یک فروش برای افراد بالای 25 سال داشتهاید. از این اطلاعات میتوان نتیجه گرفت که سن مشتری نقش مهمی در فروش دوچرخههای شما دارد.
الگوریتم درخت تصمیم نیز اینگونه عمل میکند، در مورد یک هدف خاص چندین ویژگی را تجزیه و تحلیل کرده و شرایط را برای پیشبینی و هدفمندی فروش فراهم میکند.
الگوریتم رگرسیون خطی(Linear Regression algorithm)
رگرسیون فن و تکنیکی آماری برای بررسی و مدل سازی روابط میان دادهها است. رگرسیون خطی از فرمولهای مناسبی جهت محاسبه مقادیر A و B برای رسیدن به پیش بینی C استفاده میکند.
رگرسیون در دادهکاوی تنوع دیگری از درخت تصمیم است به شکلی که به محاسبهی یک ارتباط خطی میان متغیرهای وابسته و غیر وابسته کمک میکند. محاسبههای انجام شده در پیش بینیها کاربرد دارند.
الگوریتم بیز(Naive Bayes Algorithm)
این الگوریتم بر پایهی قضیه بیز برای مدل سازی پیشگویانه ارائه شده است. قضیه بیز از روشی برای دستهبندی پدیدهها بر پایه احتمال وقوع یا عدم وقوع یک پدیده استفاده میکند و احتمال رخ دادن یک پدیده محاسبه و دسته بندی میشود. به مثال زیر توجه کنید:
بخش بازاریابی شرکت قصد دارد به عنوان یک استراتژی تبلیغاتی برای مشتریان بالقوه نامههای تبلیغاتی ارسال کند. از طرفی برای کاهش هزینهها قصد دارد فقط به مشتریانی که علاقهمند هستند و ممکن است واکنش مثبت نشان دهند نامهها را ارسال کند. در پایگاه داده شرکت اطلاعاتی از افرادی که به نامههای قبلی واکنش نشان داده بودند ذخیره شده است.
آنها میخواهند ببینند که به وسیله اطلاعات آماری مانند سن، موقعیت مکانی و به وسیله مقایسه پتانسیل مشتریان بالقوه با مشتریانی که مشخصات مشترک دارند و اینکه چه اشخاصی در گذشته از شرکت خریداری کرده است می توانند به واکنشها و پاسخهای دریافتی خود بی افزاییند.
به طور کلی می خواهند تفاوت مشتریانی که محصول خریداری کردهاند و مشتریانی که هیچ محصولی نخریدهاند را پیدا کنند.
با استفاده از الگوریتم بیز سازمانها برای بازاریابی میتوانند نتیجه را برای یک مشتری خاص به سرعت پیش بینی کنند، بنابراین مشخص می شود که کدام مشتری علاقه بیشتری به پاسخ دادن نامه دارد.
الگوریتم شبکههای عصبی(Neural Network Algorithm)
شبکه های عصبی از پرکاربردترین و عملی ترین روشهای مدلسازی مسائل پیچیده و بزرگ که شامل صدها متغیر هستند، میباشد. شبکه های عصبی میتوانند برای مسائل طبقهبندی (که خروجی یک کلاس است) یا مسائل رگرسیون (که خروجی یک مقدار عددی است) استفاده شوند.
هر شبکه عصبی شامل یک لایه ورودی است که هر گره در این لایه معادل یکی از متغیرهای پیش بینی میباشد. این الگوریتم برای تجزیه و تحلیل دادههای پیچیدهای که انجام آن توسط سایر الگوریتمها به سادگی انجام نمیگیرد کاربرد دارد.
الگوریتم شبکههای عصبی در موارد زیر پیشنهاد میشود:
بازاریابی، مانند رسیدن به موفقیت در ارسال نامههای تبلیغاتی
پیشبینی حرکت سهام، نوسانات نرخ ارز و یا سایر اطلاعات سیال مالی که دارای پیشینه هستند
تجزیه و تحلیل فرآیندهای تولیدی و صنعتی
متن کاوی و هر مدل پیشبینی که شامل تحلیلهای پیچیدهای از ورودیهای زیاد و خروجیهای نسبتا کم باشد.
الگوریتم رگرسیون منطقی یا لجستیک(Logistic regression algorithm)
رگرسیون منطقی یک روش آماری برای مدل سازیهایی که نتایج دودویی دارند، است. برای شرایطی که هدف برآورد مفاهیمی چون "رخ دادن" یا "رخ ندادن" است مانند نتیجهی یک مسابقه فینال که دو حالت بیشتر ندارد.
ممکن است مقادیر پیشبینی شده بی معنی باشد و یا در عمل تفسیر پذیر نباشند یا امکان مقایسه مقادیر پیشبینی با هم نباشد که ممکن است از نتایج الگوریتمهای درخت تصمیم و رگرسیون خطی باشد در چنین شرایطی برای رفع ابهامات از این الگوریتم استفاده میشود. از این مدل برای بدست آوردن نتایج بهینه پیشبینی استفاده میشود. از رگرسیون لجستیک میتوان به عنوان تنوع دیگری از الگوریتم شبکههای عصبی نام برد. رگرسیون منطقی یک مدل آماری رگرسیون برای متغیرهای باینری است.
الگوریتم خوشهبندی زنجیرهای(Sequence Clustering algorithm)
این الگوریتم شباهت زیادی به خوشهبندی دارد اما برخلاف الگوریتم خوشهبندی، خوشهها را بر پایه یک مدل جستجو میکند و نه بر اساس شباهت رکوردها. این مدل زنجیرهای رویدادها را بر اساس زنجیرهی مارکوف ایجاد میکند. در زنجیرهی مارکوف توزیع احتمال شرطی حالت بعدی تنها به حالت فعلی بستگی دارد و به وقایع قبل از آن وابسته نیست. زنجیره مارکوف ابتدا یک ماتریسی از ترکیب تمامی وضعیتهای شدنی(امکان پذیر) ایجاد میکند و سپس در هر خانهی ماتریس احتمالات حرکت از یک وضعیت به وضعیت دیگر را ثبت میکند. از طریق این احتمالات محاسباتی انجام میشود که در نتیجه یک مدل بر پایهی آن ایجاد میشود. به مثال زیر توجه کنید:
فرض کنید برای فروش اینترنتی محصولات خود یک وبسایت دارید که اطلاعات کاربران و صفحات بازدید شده ثبت میشود. هر مشتری برای خرید باید اطلاعاتی از خود در سایت ثبت کند و با هر کلیک مشتریان، اطلاعاتی از مشتری و صفحه ثبت میشود. با استفاده از الگوریتم خوشهبندی زنجیرهای بر روی این اطلاعات میتوانید مشتریانی که کلیکها و الگوهای مشابه داشتهاند را گروه بندی کنید. با تحلیل گروهبندیها میتوانید بفهمید که چه کاربرانی به سایت شما میآیند، کدام صفحات سایت شما پر بازدیدتر هستند و ارتباط بیشتری با فروشهای شما دارند و صفحهی بعدی از سایت شما که بازدید خواهد شد، کدام است.
هدف اصلی از جمع آوری دادههای سری زمانی پیشبینی و یا پیشگویی درباره مقادیر آینده است. به مثالهای زیر توجه کنید.
یک کارخانه به پیشبینی درخواستهای مشتریان در ماههای آینده جهت برنامه ریزی تولید نیاز دارد.
یک وب سایت باید رشد کاربری و ترافیک کاربران را به منظور استفاده از یک سخت افزار مناسب تخمین بزند.
یک فروشگاه باید فروش محصولات را به منظور بهینه سازی انبار، پیشبینی نماید.
مطالب بسیار زیبا و کارایی را بررسی میکنید. امیدوارم همیشه موفق و پیروز باشید و به همین منوال شاهد این نوع مطالب باشیم.
احسنت.این مبحث را بسیار عالی شرح دادید.احسنت
درود
وقت خوش
مطلب مفیدی بود زیرا اکثر الگوریتمها رو به طور مختصر معرفی کرده بودید. سپاس
سلام ممنون بابت مطالب خیلی مفید بودن: