首先计算初始聚类中心与每个样本点之间的曼哈顿距离:

  • 对于聚类中心'(0, 2)',样本点的距离依次为:2, 2, 2, 7, 4
  • 对于聚类中心'(0, 0)',样本点的距离依次为:2, 0, 1, 5, 2

根据距离最近的聚类中心将每个样本点分配到相应的簇中:

  • 第一簇:{'(0, 2)', '(-1, -1)'}
  • 第二簇:{'(0, 0)', '(1, 0)', '(5, 0)'}

计算每个簇的新聚类中心:

  • 第一簇:'(-0.5, 0.5)'
  • 第二簇:'(2, 0)'

重新计算每个样本点与新的聚类中心之间的距离:

  • 对于聚类中心'(-0.5, 0.5)',样本点的距离依次为:2.5, 1.5, 1.5, 6.5, 0.5
  • 对于聚类中心'(2, 0)',样本点的距离依次为:2, 2, 1, 3, 3

重新根据距离最近的聚类中心将每个样本点分配到相应的簇中:

  • 第一簇:{'(0, 2)', '(-1, -1)', '(0, 0)', '(1, 0)'}
  • 第二簇:{'(5, 0)'}

计算每个簇的新聚类中心:

  • 第一簇:'(0, 0.25)'
  • 第二簇:'(5, 0)'

重新计算每个样本点与新的聚类中心之间的距离:

  • 对于聚类中心'(0, 0.25)',样本点的距离依次为:2.25, 0.75, 0.5, 2.75, 1.75
  • 对于聚类中心'(5, 0)',样本点的距离依次为:5, 5, 4, 0, 6

重新根据距离最近的聚类中心将每个样本点分配到相应的簇中:

  • 第一簇:{'(0, 2)', '(-1, -1)', '(0, 0)', '(1, 0)', '(-1, -1)'}
  • 第二簇:{'(5, 0)'}

此时,两个簇已经不再改变,算法结束。最终聚类结果为:

  • 第一簇:{'(0, 2)', '(-1, -1)', '(0, 0)', '(1, 0)', '(-1, -1)'}
  • 第二簇:{'(5, 0)'}
K-Means 聚类算法示例:用曼哈顿距离将 5 个样本聚为两类

原文地址: https://www.cveoy.top/t/topic/ogGk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录