为什么我的Kneighbors分类器返回一些空的预测?

2024-05-14 15:22:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试训练一个分类器来预测照片中的数字,我正在使用以下数据集: 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

Tags: testimportneighborstrainpredictdatasetd2nx
1条回答
网友
1楼 · 发布于 2024-05-14 15:22:53

我能够通过将y_列重新排列成一个带有目标名称的向量来解决这个问题,然后将它作为一个矩阵,索引显示了正确的答案。仍然不明白为什么它只返回了一些空的答案

相关问题 更多 >

    热门问题