5.4 寻找最近邻 95
1
2
3
4
5
12
6
7
9
8
10
10
if item:
selected_features.append(count)
print "\nSelected features (0-indexed):", ', '.join([str(x) for x in
selected_features])
(11) 运行代码,可以在命令行工具中看到如图5-2所示的输出结果。
图 5-2
5.3.2 工作原理
选择k个最好的特征,其好处在于可以处理较小维度的数据,这对减小计算复杂度来说非常
有用。选择k个最佳特征的方式是基于单变量的特征选择,选择过程是先进行单变量统计测试,
然后从特征向量中抽取最优秀的特征。单变量统计测试是指只涉及一个变量的分析技术。
做了这些测试后,向量空间中的每个特征将有一个评价分数。基于这些评价分数,选择最好
的k个特征。我们在分类器流水线中执行这个预处理步骤。一旦抽取出k个特征,一个k维的特征
向量就形成了,可以将这个特征向量用于随机森林分类器的输入训练数据。
5.4 寻找最近邻
最近邻模型是指一个通用算法类,其目的是根据训练数据集中的最近邻数量来做决策。接下
来学习如何寻找最近邻。
详细步骤
(1) 创建一个Python文件,导入以下程序包:
import numpy as np
import matplotlib.pyplot as plt
from sklearn.neighbors import NearestNeighbors
(2) 创建一些示例的二维数据: