k-NN分类器的优化与性能考量
1. 无关属性与缩放问题
1.1 无关属性的影响
在机器学习中,并非所有属性都对分类同等重要。有些属性的值与示例的类别无关,但却会影响向量间的几何距离。例如,在一个以体温和鞋码为属性的训练集中,鞋码对于判断一个人是否健康并无关联,但在计算欧几里得距离时,它却会对结果产生影响,可能导致分类错误。
若仅使用第一个属性(体温),两个示例间的欧几里得距离为 (d_E(x, y) = \sqrt{(x_1 - y_1)^2} = |x_1 - y_1|);若同时使用两个属性,则距离为 (d_E(x, y) = \sqrt{(x_1 - y_1)^2 + (x_2 - y_2)^2})。当第二个属性(鞋码)无关时,((x_2 - y_2)^2) 这一项就是多余的,却会对 k - NN 的相似度概念产生不利影响。
无关属性造成的损害程度取决于用于描述示例的无关属性数量。在有数百个属性的领域中,若只有一个无关属性,通常不会对距离值产生显著影响;但随着无关属性比例的增加,几何距离可能变得几乎毫无意义,分类器的性能也会大幅下降。
1.2 属性值的缩放问题
属性值的尺度也会对 k - NN 分类器的行为产生重大影响。例如,对于示例 (x = (t, 0.2, 254)) 和 (y = (f, 0.1, 194)),在计算距离时,第三个属性(取值范围为 ([0, 1000]))会完全主导结果,使其他两个属性几乎失去意义。
此外,属性的度量单位也会影响分类结果。例如,当第二个属性表示温度时,使用不同的温度单位(摄氏度或华氏度)会导致向量发生变化,从而改变分类器的判断。
超级会员免费看
订阅专栏 解锁全文
784

被折叠的 条评论
为什么被折叠?



