前提・実現したいこと
Pythonで始める機械学習を読んでみて、自分の持っているデータで
k-近傍法を行いましたが画像を見ると、散布図は正しく打たれていますが、
領域がおかしく、うまく学習できていないようです。
どのような可能性があるのでしょうか。
発生している問題・エラーメッセージ
該当のソースコード
from sklearn.neighbors import KNeighborsClassifier
fig, axes=plt.subplots(1,3,figsize=(10,3))
for n_neighbors,ax in zip([1,2,20],axes):
clf=KNeighborsClassifier(n_neighbors=n_neighbors)
clf.fit(X,y)
mglearn.plots.plot_2d_separator(clf,X,fill=True,eps=0.5,ax=ax,alpha=.4)
mglearn.discrete_scatter(X[:,0],X[:,1],y,ax=ax)
ax.set_title("{} neighbor(s)".format(n_neighbors))
ax.set_xlabel("feature 0")
ax.set_ylabel("feature 1")
axes[0].legend(loc=3)
試したこと
補足情報(FW/ツールのバージョンなど)
print(X.shape)
print(y.shape)
print(X[0:5])
print(y[0:5]) を実行すると以下のようになります。
(50, 2)
(50,)
[[ 438 187]
[ 564 153]
[ 688 185]
[ 418 166]
[1068 162]]
[0 0 1 0 1]
回答1件
あなたの回答
tips
プレビュー