In [19]:
indeksi_trening = svi_indeksi[0: 120 ] # 120 = 0.80 * 150
X_trening = X[indeksi_trening,:]
y_trening = y [indeksi_trening]
In [20]:
indeksi_test = svi_indeksi [120:]
X_test = X[indeksi_test,:]
y_test = y [indeksi_test]
In [21]:
# Obučimo sada naš kNN klasifikator. Dogovorno uzimamo da je k = 5
In [22]:
kNN=KNeighborsClassifier(n_neighbors=5)
kNN.fit(X_trening,y_trening)
Out[22]:
KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',
           metric_params=None, n_jobs=1, n_neighbors=5, p=2,
           weights='uniform')
In [23]:
y_knn_predicted = kNN.predict(X_test)
In [24]:
sum(y_knn_predicted == y_test) / len(y_test)
Out[24]:
0.9666666666666667
In [25]:
plt.scatter(X_trening[:,0], X_trening[:,1], c=y_trening)
plt.scatter(X_test[:,0], X_test[:,1],marker = '^', c='r');
In [26]:
plt.scatter(X_trening[:,0], X_trening[:,1], c=y_trening)
plt.scatter(X_test[:,0], X_test[:,1],c=y_test)
# Elementi test skupa prikazani su kao trouglovi. 
plt.scatter(X_test[:,0]+0.2, X_test[:,1]+0.2,marker='^', c=y_test);