为什么C语言代码中的label值不唯一?
这段代码中,c = -1 初始化了一个变量 c,用来存储距离最近的训练样本的标签。for 循环遍历训练数据,计算测试样本与每个训练样本的欧氏距离,并更新 c 的值。最后,代码打印了 f['label'] 的值。
代码显示 f['label'] 的值为 [4 8 9 4],这意味着标签值不唯一。这可能是因为以下几个原因:
ds_train中包含多个数据集,每个数据集的标签可能不同。在遍历训练数据时,f['label']可能取自不同的数据集,导致标签值不唯一。- 输出的标签值也可能是多个样本的标签值。因为
print语句在循环内部,每次循环都会输出一个标签值,最终导致输出多个标签值。
为了进一步分析问题,需要查看 ds_train 的具体结构,以及代码中 face 的定义,才能确定造成标签值不唯一的具体原因。
原文地址: https://www.cveoy.top/t/topic/mUNl 著作权归作者所有。请勿转载和采集!