【scikit-learn 估计器】 距离方法

版权声明:转载请注明出处!喜欢就 关注一下 or 右上角点赞 鼓励一下呗^_^ https://blog.csdn.net/ImagineCode/article/details/83018949

估计器主要用于分类任务,主要有两个函数:

  • fit() : 训练算法。2个参数:训练数据集,类别。

  • predict() : 预测算法,用以预测测试集类别,返回类别数组。 1个参数:测试集。

邻近算法

对新个体分类时,需要查找训练集,找到与该新个体最相似的个体,然后根据该个体所属类别将新个体归类到该类别下。

例如:当我们要预测三角形类别时,先找到与它最近距离的是三个菱形和一个圆形,但是菱形的数量大于圆形,故预测三角形的类别时菱形。如下图所示:

举例-邻近算法

缺点: 不适合大数据集,且数据特征值呈离散分布。

距离度量

在讲到邻近算法时,我们说到距离。即,当你要对个体分类时,往往需要知道该个体与其他个体之间的距离。下面分别简要介绍三种距离方法。

欧氏距离

欧式距离,是利用勾股定理测量得到的真实距离,即两个特征向量长度平方和的平方根。

缺点: 如果特征值之间存在较大差异时,或者存在稀疏矩阵时,精确度就会明显的降低。

曼哈顿距离

两个特征在标准坐标系中绝对轴距之和。

异常值对曼哈顿距离的影响,小于欧式距离。

但是,如果数据集中某些特征值很大,这些特征会掩盖其他特征间的邻近关系。

余弦距离

指的是特征向量夹角的余弦值。

更适合处理异常值和稀疏数据的问题。

适用于特征向量很多的情况,但其也忽略了向量长度所包含的在某些场景下可能会有用的信息。

所以,距离问题的解决方法的选择,将直接影响到分类的结果。

下一节中,通过我们将讲解如何通过欧式距离进行分类。

猜你喜欢

转载自blog.csdn.net/ImagineCode/article/details/83018949