کنفرانس بین المللی داده کاوی IEEE در سال 2006، 10 الگوریتم برتر و پر استفاده در حوزه ی داده کاوی را معرفی کرد. در این مطلب ضمن معرفی مختصر الگوریتم ها ابزار های توسعه ی آن ها در پایتون معرفی می شود.

1- c4.5

c4.5 یک الگوریتم برای ایجاد درخت تصمیم و توسعه ای از الگوریتم ID3 است. در خت های تصمیم ابجاد شده با این الگوریتم می توانند برای رده بندی(classificatin) مورد استفاده قرار گیرند و به همین دلیل c4.5 اغلب به عنوان یک رده بند آماری شناخته می شود.

c4.5 درخت تصمیم را -مثل ID3- با استفاده از داده های آموزش و مفهوم آنتروپی اطلاعات می سازد. داده ی آموزش مجموعه ای از داده های رده بندی شده است. هر عضو از داده ی آموزش برداری است به طوری که هر عضو بردار نمایان کننده ی یک ویژگی از نمونه ی آموزش است.

این الگوریتم در ذیل کتابخانه scikit-learn  قابل دسترسی است.

2- k-means

این تکنیک برای خوشه بندی به کار می رود. خوشه بندی به معنای انتخاب نوع دسته بندی به صورت خودکار به وسیله ی ماشین و بر مبنای ویژگی های توصیف شده است. خوشه بندی k-means در کتابخانه های scipy و scikit-learn موجود است. هم چنین یک واسط برای  استفاده از پیاده سازی مبتنی بر C نیز وجود دارد.

3- support vector machines

SVM ها مدل های یادگیری با ناظری هستند که توانایی تشخیص الگو را داشته و در تحلیل های رگرسیونی و رده بندی مورد استفاده قرار می گیرند.

ابن تکنیک با استفاده از بسته ی scikit-learn و pyml قابل پیاده سازی است.

4- Apriori

این تکنیک برای پیدا کردن روابط مورد توجه و جالب بین متغیر های مختلف داده ها به کار می رود. و در پایتون یک پیاده سازی مختص خود را دارد.

5- Expectation Maximization

این الگوریتم برای تخمین بیشترین شباهت(maximum likelihood estimation) در مدل های آماری به کار می رود. کاربرد آن در مواقعی است که معادلات به صورت مستقیم قابل حل شدن نیستند. pymix یک پیاده سازی از تکنیک در پایتون است.

6- PageRank

شاید محبوب ترین تکنیک در لیست ما همین تکنیک است. این تکنیک، روشی است که بر مبنای تحلیل لینک ها و وزن دهی به آن ها به هر عنصر لینک در صفحه امتیاز می دهد تا اهمیت نسبی هر صفحه را اندازه گیری کند.

این جا یک پیاده سازی مبتنی بر پایتون ارائه شده است.

7- AdaBoost

یک روش برای به کارگیری چندین الگوریتم یادگیری و جمع بندی بر اساس خروجی همه ی آن ها است. این تکنیک هم در بسته ی مشهور scikit-learn موجود است.

8- k-Nearest Neighbors

یک الگوریتم که هم برای رده بندی و هم برای مسائل رگرسیونی به کار برده می شود. اگر برای مسائل رده بندی به کار برده شود خروجی آن عضویت یک داده در یک کلاس با توجه به بیشترین رایی که به وسیله ی k همسایه ی آن داده شده است خواهد بود و اگر برای مسایل رگرسیونی استفاده شود خروجی ن میانگین مقادیر k همسایه ی آن خواهد بود. این تکنیک هم در بسته ی scikit-learn قابل دسترسی است.

9-Naïve Bayes

رده بند های مبتنی بر این تکنیک خانواده ای از رده بند های آماری آماری مبتنی بر تئوری بیز هستند که مبنای آن ها وابستگی قوی بین ویژگی ها است. بسته ی scikit-learn حاوی پیاده سازی این تکنیک است.

10-CART

درخت هایی که برای رده بندی و رگرسیون استفاده می شوند. باز هم scikit-learn.

منبع : Data Science Central

فایل مقاله: Top 10 algorithms in data mining