使用支持向量机识别手写数字。
使用支持向量机识别手写数字。
根据使用支持向量机识别手写数字的问题,一些科学家声称它可以准确地预测 95% 的时间。我必须进行数据分析才能接受或拒绝这个假设。我已经做了三个测试用例来检查这个假设。
测试用例 1
起初,我从 sklearn 导入数据集、SVM 和指标。数据集是获取数字数据集。 SVM 是支持向量机。导入指标以计算 F1 分数、召回率、精度和准确度。
创建 SVC 类型的估计器,然后通过分配值 C 和 gamma 通用值来选择初始设置。
将创建数字变量并将数字数据集加载到其中。
要获取有关数字数据集的信息,请运行下图中的命令。
上面命令的输出如下所示。
在 digits.images 数组中包含数字的图像。
我们可以通过使用 matplotlib 库直观地看到数字的图像。
digits.target 包含我们想要预测的输出。
digits.target.size 用于确定数据集的大小。
要调整图像大小,我们使用下图中的命令。
数据是将用于预测的输入。
在预测数据之前,将使用以下命令完成训练和测试拆分。
对测试用例 1 进行了 60-40 的训练拆分。
使用 fit 命令训练模型。
使用 predict 命令预测模型。
创建分类器的分类报告,其中计算测试用例 1 的精度、召回率、f1 分数和准确度。
测试用例 1 的总准确度为 0.97,如果我们将 0.97 乘以 100%,则为 97%。在测试用例 1 中,我们接受 95% 的假设,因为我们的准确率为 97%。
测试用例 2
所有代码都是相同的,只是训练和测试拆分不同。
对于测试用例 2,数据分为 70-30。
创建分类器的分类报告并计算测试用例 2 的指标。
为测试用例 2 计算的总准确度为 0.97,即 97%。因此,该假设被接受。
测试用例 3
在测试用例 3 中,训练和测试的比例为 80-20。
创建分类报告并计算测试用例 3 的指标。
总准确率为 0.96,即测试用例 3 的 96%。我们可以说该假设被接受。
结论
通过运行三个测试用例,我们可以说假设被接受,因为机器的预测率超过 95%。
在结束这篇博客之前,我感谢导师 https://internship.suvenconsultants.com 提供了令人敬畏的问题陈述并为我们中的许多人提供了编码实习经验。谢谢 www.suvenconsultants.com .
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明