طبقه بندی در داده کاوی با پایتون

طبقه بندی در داده کاوی با پایتون، قسمت دیگری از این آموزش و موضوع مقاله امروز ما است. با دانستن اینکه classification چیست، می توان به طبقه بندی اطلاعات پرداخت. میتوانید با مطالعه ی مقاله ی داده کاوی با پایتون اطلاعات بیشتری در مورد Datamining کسب کنید.

طبقه بندی چیست؟

طبقه بندی(Classification) یک تابع داده کاوی است که نمونه هایی را در یک مجموعه داده به کلاس های هدف اختصاص می دهد. مدل هایی که این تابع را پیاده سازی می کنند طبقه بندی کننده(classifier) نامیده می شوند. دو مرحله اساسی برای استفاده از یک طبقه بندی وجود دارد:

  • آموزش (training): فرآیند جمع‌آوری داده‌هایی است که مشخص است به کلاس‌های مشخصی تعلق دارند و بر اساس آن داده‌های شناخته شده، طبقه‌بندی‌کننده ایجاد می‌شود.
  • طبقه بندی (classification): فرآیندی است که یک طبقه بندی کننده ساخته شده با چنین مجموعه داده آموزشی و اجرای آن بر روی داده های ناشناخته برای تعیین عضویت کلاس برای نمونه های ناشناخته است.

انواع طبقه‌بندی

دو نوع اصلی طبقه بندی وجود دارد:

  • طبقه بندی باینری : داده ها را بر اساس مقادیر گسسته یا غیر پیوسته (معمولاً دو مقدار) مرتب می کند. به عنوان مثال، یک آزمایش پزشکی ممکن است بیماران را به گروه‌هایی تقسیم کند که بیماری خاصی دارند در مقابل آنهایی که ندارند.
  • طبقه بندی چند کلاسه : داده ها را به سه یا چند کلاس مرتب می کند. به عنوان مثال، پروفایل پزشکی که بیماران را به افراد دارای علائم عفونت کلیه، کبد، ریه یا مثانه دسته بندی می کند.

طبقه بندی در داده کاوی با پایتون

مدل طبقه بندی یادگیری ماشین در سایر زبان های برنامه نویسی نیز نیز ساخته میشود. اما در این آموزش، به دلیل تطبیق پذیری و سهولت استفاده، بر طبقه بندی در داده کاوی با پایتون تمرکز می کنیم.

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

بدون این کتابخانه‌ها، برای انجام وظیفه‌ای که می‌خواهید، باید برای کدنویسی توابع مختلف وقت بگذارید. اما با این کتابخانه ها فقط باید چند خط کد بنویسید و کار انجام می شود.

 

کتابخانه sklearn – طبقه بندی

کتابخانه sklearn شامل اجرای بسیاری از مدل ها برای طبقه بندی است و در این بخش، نحوه استفاده از Bayes Naive Gauss را برای شناسایی گل های iris به صورت Setosa، Versicolor یا Virginica  خواهیم دید. برای این منظور، بردار رشته هایی را که شامل کلاس است را به اعداد صحیح ، تبدیل می کنیم:

t = zeros(len(target))
t[target == 'setosa'] = 1
t[target == 'versicolor'] = 2
t[target == 'virginica'] = 3
print t
[1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.
۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫
۱٫ ۱٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫
۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫
۲٫ ۲٫ ۲٫ ۲٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫
۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫
۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫]

از این جا به بعد طبقه بند را کشف کرده و آموزش میدهیم.

from sklearn.naive_bayes import GaussianNB
classifier = GaussianNB()
classifier.fit(data,t) # آموزش دیتاست iris
GaussianNB(priors=None)

طبقه بندی را می توان با متد predict (پیش بینی)،  انجام داد و آن را با یکی از نمونه ها،  آسان،  تست کرد:


print (classifier.predict(data[[0]]))
print t[0]
[1.]
۱٫۰
print classifier.predict(data[[1]])
[1.]
۱٫۰
print classifier.predict(data[[100]])

print t[100]
[3.]
۳٫۰


2 دیدگاه مقاله ی "طبقه بندی در داده کاوی با پایتون"

  1. زهره گفت:

    سلام
    با تشکر
    لطفاً مینی پروژه داده کاوی با پایتون برای یادگیری بیشتر قرار دهید قرار دهید.

دیدگاهتان را بنویسید

We are glad you have chosen to leave a comment. Please keep in mind that comments are moderated according to our comment policy.