我正在使用R包附带的mnist
数据集。如您所知,它按以下方式划分:
- mnist $ train $ x:784列60,000行。我认为它是我们正在分析的图像。
- mnist $ train $ y:60列10列。每列代表我们尝试识别的数字之一的目标。如果一个 例如,某行是6,那么该行的第6列就是 a 1。
- mnist $ test $ x:10,000行乘784列。
- mnist $ test $ y:10,000行乘10列。
醇>
此数据集没有标签,只有这4个矩阵。我想知道是否可以对此数据集进行knn
,因为它是未标记的,而knn
是一种监督学习的技术。如果是这样,那么参数(训练,测试和cl =训练集的真实分类因素)是什么?
答案 0 :(得分:0)
我认为这里存在某种混淆。
数据集有标签(!!) - mnist $ train $ x是培训的28 * 28的展平图像,mnist $ train $ y是它们的对应标签。
正如你自己所说,在mnist $ train $ y中排i是mnist $ train $ x中图像i的单热编码标签。
所以数据被标记了。
KNN可以在这个数据集上完成(但它可能不会给你结果的状态)。
首先,将每个热门标签翻译成整数(使用行上的argmax)
然后在mnist $ train $ x上运行你的KNN算法为x,你的整数标签为y,用你的K(超参数)。