داده کاوی با پایتون_قسمت پنجم

کتابخانه 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
[۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫
 ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫ ۱٫
 ۱٫ ۱٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫
 ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫ ۲٫
 ۲٫ ۲٫ ۲٫ ۲٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫
 ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫
 ۳٫ ۳٫ ۳٫ ۳٫ ۳٫ ۳٫]

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

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]
[۱٫]
۱٫۰
print classifier.predict(data[[1]])
[۱٫]
۱٫۰
print classifier.predict(data[[100]])

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

داده کاوی با پایتون_قسمت چهارم

طبقه بندی(Classification)

طبقه بندی، یک تابع داده کاوی است که نمونه ها(samples ) را در یک مجموعه داده برای تعیین کلاس ها اختصاص می دهد.
مدل هایی که این تابع را اجرا می کنند، طبقه بند ، نامیده می شوند.
دو روش اساسی برای استفاده از طبقه بند وجود دارد: آموزش و طبقه بندی.
آموزش(Training ): مثلا من میام ۱۰۰ نمونه گل iris را انتخاب و با توجه به ویژگی های آنها ، آنها را به ۳ دسته(برچسب یا تارگت یا کلاس) تقسیم میکنم.
طبقه بندی(Classification ): حالا که ۱۰۰ نمونه را آموزش دادم که جزو کدام دسته باشند، نوبت به این میرسه که مثلا ۵۰ نمونه ناشناس ، توسط یک طبقه بند بررسی شوند که به کدام کلاس تعلق دارند.