国内工业设计网站,杭州网站建设制作公司,关于网站开发的外文翻译,中国建设银行巴黎分行网站问题说到k-means聚类算法#xff0c;想必大家已经对它很熟悉了#xff0c;它是基于距离计算的经典无监督算法#xff0c;但是有一次在我接受面试时#xff0c;面试官问了我一个问题#xff1a;“k-means为什么不能使用曼哈顿距离计算#xff0c;而使用欧式距离进行计算想必大家已经对它很熟悉了它是基于距离计算的经典无监督算法但是有一次在我接受面试时面试官问了我一个问题“k-means为什么不能使用曼哈顿距离计算而使用欧式距离进行计算”当时我顿时懵了心想‘难道不都可以吗’我只能说都可以然后面试官给了我一个眼神“你回去查查吧看看到底为什么”,然后我就回家啦。这是我后来在网上找到的回答如下图k-means基本思想1.在样本数据中随机设置n个聚类中心(Xi,Yi)假设数据只有二维2.计算样本数据距离聚类中心(Xi,Yi)距离Di并各自归属到距离自己最近的中心点3.各个汇聚到一起的簇计算各自的平均值将新的平均值作为新的中心点4.然后重复2、3两步直到中心点的移动范围小于阈值或达到循环最大次数。距离公式欧式距离也叫欧几里得距离也是最广泛使用的距离计算公式指n维空间中两点间的直线距离曼哈顿距离指同一坐标系下两点差的绝对值之和多说一个余弦距离指空间中原点与两点连线所夹角度的大小分析那到底k-means、knn能不能用曼哈顿计算呢如第一张图片所示这是别人的答案表示曼哈顿具有维度限制真的是这样吗我认为并不是这样的大家都知道曼哈顿距离可以计算二维空间两点距离那么尝试在三维空间进行计算由此可以推广到高维空间如下手画图所示一个2x2x2的立方体坐落在三维坐标轴上点A(220)点C(002)求AC的曼哈顿距离根据曼哈顿公式计算得|0-2||0-2||2-0|6显而易见实际距离也是6路线有很多条但结果都是一样的。结论综上所述曼哈顿距离适合k-means只是各种距离算法可能需要在不同业务场景或数据下选择使用。