scikit-learn ile Supervised Learning
George Boorman
Core Curriculum Manager, DataCamp
Sınıflandırmada doğruluk yaygın bir metriktir
Doğruluk:

Doğruluğu nasıl ölçeriz?
Doğruluğu sınıflandırıcıyı eğittiğiniz veride hesaplayabilirsiniz
Ancak genelleme yetisini göstermez



from sklearn.model_selection import train_test_splitX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=21, stratify=y)knn = KNeighborsClassifier(n_neighbors=6)knn.fit(X_train, y_train)print(knn.score(X_test, y_test))
0.8800599700149925
Daha büyük k = daha az karmaşık model = eksik öğrenmeye yol açabilir
Daha küçük k = daha karmaşık model = aşırı öğrenmeye yol açabilir

train_accuracies = {} test_accuracies = {} neighbors = np.arange(1, 26)for neighbor in neighbors:knn = KNeighborsClassifier(n_neighbors=neighbor)knn.fit(X_train, y_train)train_accuracies[neighbor] = knn.score(X_train, y_train) test_accuracies[neighbor] = knn.score(X_test, y_test)
plt.figure(figsize=(8, 6))
plt.title("KNN: Komşu Sayısını Değiştirme")
plt.plot(neighbors, train_accuracies.values(), label="Eğitim doğruluğu")
plt.plot(neighbors, test_accuracies.values(), label="Test doğruluğu")
plt.legend()
plt.xlabel("Komşu sayısı")
plt.ylabel("Doğruluk")
plt.show()


scikit-learn ile Supervised Learning