深度K近邻算法全面解析
1. 浅版本KNN算法
浅版本的KNN算法是后续各类变体和深度版本的基础。其核心步骤如下:
1. 计算相似度并排序 :计算新手向量 $\mathbf{x}$ 与训练示例 $\mathbf{x} 1, \mathbf{x}_2, \ldots, \mathbf{x}_N$ 的相似度,将训练示例按相似度降序排列,即 $\text{sim}(\mathbf{x}, \mathbf{x}_1) \geq \text{sim}(\mathbf{x}, \mathbf{x}_2) \geq \ldots \geq \text{sim}(\mathbf{x}, \mathbf{x}_N)$。
2. 选择最近邻 :从排序后的训练示例中选择 $K$ 个相似度最高的示例作为最近邻,其中 $K \ll N$。最近邻集合可表示为 $\text{Near}(\mathbf{x}, T_r) = {\mathbf{x}^{\text{near}}_1, \mathbf{x}^{\text{near}}_2, \ldots, \mathbf{x}^{\text{near}}_K}$,这里 $T_r = {\mathbf{x}_1, \mathbf{x}_2, \ldots, \mathbf{x}_N}$ 是训练集。
3. 投票决定标签 :预定义 $M$ 个类别 $c_1, c_2, \ldots, c_M$,统计最近邻中属于每个类别的数量 $\text{Count}(\text{Near}(\mathbf{x}, T_r), c_i)$。最终标签 $c {\te
超级会员免费看
订阅专栏 解锁全文
934

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



