基于KNN的数字识别

2024-06-15 17:23:53 发布

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

我是这个机器学习概念的新手! 我制作了一个模型,并使用KNN分类器将其训练到98%的精度,但我无法使用图像作为输入来测试模型。 每个数据点包含一个相当于8X8的数字图像。当我将其转换为numpy数组时,它会给出一个介于0.0到16.0之间的整数列表(dtype=float64)。 但问题是,我无法将输入图像分解为日期集对应的图像。 以下是executed in CMD prompt , Python version - 3x


Tags: 数据模型图像numpy机器概念列表分类器
2条回答

要将阵列打印为图像,请使用:

import matplotlib.pyplot as plt
import numpy as np

array = np.array([0,0,0,10,9,0,0,0,0,0,5,15,0,0,9,5,0,0,14,10,0,7,16,4,0,5,16,7,5,16,6,0,0,11,16,16,16,14,0,0,0,3,4,11,16,8,0,0,0,0,0,7,16,2,0,0,0,0,0,12,12,0,0,0])
plt.imshow(array.reshape(8,8))
plt.show()

下一次,请确保您的数据可以轻松复制和粘贴,图片是不受欢迎的

根据你提供的信息,不可能知道哪里出了问题。另外,0.0和16.0不是整数,它们是浮点。在训练ML算法之前,最好将图像规格化为最大值1.0,如numpy_Image = numpy_Image/np.max(numpy_Image)。对于KNN(以及几乎所有其他内容),训练和测试图像必须具有相同的大小。“但问题是,我无法将输入图像分解为日期集对应的图像。”-请在终端中发布代码和错误消息

相关问题 更多 >