我正在尝试训练一个分类器来预测照片中的数字,我正在使用以下数据集: https://www.kaggle.com/ardamavi/sign-language-digits-dataset
但是当我使用.predict()函数时,它会将一些标签返回为[0,0,0,0,0,0,0,0],这不会预测任何内容。当我增加n_邻居时,问题也会增加
import datasetreader
from sklearn.neighbors import KNeighborsClassifier
X_train, X_test, y_train, y_test = datasetreader.get_dataset(
'/Sign-Language-Digits-Dataset-master/Dataset')
nsamples, nx, ny = X_train.shape
d2_X_train = X_train.reshape((nsamples,nx*ny))
nsamples, nx, ny = X_test.shape
d2_X_test = X_test.reshape((nsamples,nx*ny))
clf = KNeighborsClassifier(n_neighbors = 5).fit(d2_X_train, y_train)
y_pred = clf.predict(X_test)
# Predicting y
print("Amount of testdata to predict on: ", len(X_test)) # prints 413
print("Actual predicts: ", sum(sum(y_pred))) # prints only 270.0, should be 413
我能够通过将y_列重新排列成一个带有目标名称的向量来解决这个问题,然后将它作为一个矩阵,索引显示了正确的答案。仍然不明白为什么它只返回了一些空的答案
相关问题 更多 >
编程相关推荐