《机器学习实战》笔记(二):Ch2 - k-邻近算法
2018-05-21 本文已影响226人
Lornatang
第二章 K-近邻算法(代码)
-
K-近邻算法优缺点
-. 优点:精度高,对异常值步敏感,无数据输入假定。
-
缺点:计算复杂度高,空间复杂度高。
-
范围:数值型和标称型。
-
-
测试分类器
错误率是常用的评估方法,完美评估器为0,最差的评估器为1.0
-
k-近邻算法的一般流程
-
收集数据:可以使用任何方法.
-
准备数据:距离计算所需要的数值,最好是结构化的数据格式.
-
分析数据:可以使用任何方法.
-
训练算法:此步骤不适用于 k-近邻算法.
-
测试算法:计算错误率.
-
使用算法:首先需要输入样本数据和结构化的输出结果,然后运行 k-近邻算法判定输入数据分别属于哪个分类,最后应用对计算出的分类执行后续的处理.
-
-
例子:使用k-近邻算法改进约会网站的配对效果
-
准备数据:从文本数据中解析出数据,用
numpy
转化文本为矩阵,同时进行归一化数值操作(将对数据有影响的数值归纳为0~1
之间)。 -
分析数据:使用
matplotlib
实现数据可视化。 -
测试数据:错误评估
训练数据/测试数据 = 90%/10%
。 -
使用算法:基于用户的输入,自动匹配。
-
-
例子:手写识别系统
-
准备数据:将图像分为
32*32
的二进制图像转化为1*1024
的数组,每次读取32
行,存入数组,并且返回数组。 -
分析数据:确保数据准确无误。
-
测试数据:随机选取数据测试。
-
使用数据:将评估错误率,选择
最低评估错误率
来作为首选算法。
-
-
小节
K-近邻算法是最简单的分类算法,如果数据量太大,会变得非常耗时。