一、KNN算法(K最邻进分类算法)

用距离最近的一类来预测未知的类别,到底属于哪个类

例子:假设统计了几个人的身高数据,并且知道这几个人的性别,这时候来了一个人:知道身高但不知道性别,现在来预测一下这个人的性别

通过距离来进行算法分类:

在一维数轴上,找到每个人和新来的这个人的身高,通过寻找3个身高与新人相差最小的人(k=3)来预测新来的人到底是男性还是女性。计算每个人与新来的人的身高差(出现负数预测不靠谱),则将身高差先平方后开方,其中身高差最小的三个人也就是与新来的人距离最近的人,其中三个人中有两个人为女性,则预测新来的人为女性。

若在数据中增加一个体重数据,则建立二维平面图,同上根据距离进行算法分类

若在数据中再增加一个腰维数据,则建立平面直角坐标系,同上根据距离进行算法分类

二、计算距离的几种距离公式

1.曼哈顿距离

常用在汽车导航(比较两个目的地的距离哪个更长),计算机视觉领域(识别两个相似的图像或者物体)

2.欧氏距离

常用在推荐算法,欺诈检测,图像识别当中

3.切比雪夫距离(国王距离)

计算两个数据点之间任意维度上差的最大距离

4.闵可夫斯基距离(距离度量的统一框架)

三、距离,范数,正则化的关系

距离:定义在空间上任意两点之间,衡量空间上两点之间的间隔或者差异

范数:计算向量的长度,来衡量一个向量的大小(必须为非负的实数)

正则化:解决过拟合问题

距离的度量是范数的几何应用,而正则化则是范数的算法约束应用

更多推荐