"KMedoids" (机器学习方法)

Details & Suboptions

  • "KMedoids" 方法,也称为围绕中心点的分区(PAM),是一种简单快速的基于中心点的方法. 当聚类的大小相似且局部分布在其中心点(又称 medoids)周围时,"KMedoids" 效果很好. 当聚类的大小差异很大、相互交织或存在异常值时,"KMedoids" 可能会产生较差的结果.
  • 下图展示了将 "KMedoids" 方法应用于玩具数据集的结果:
  • "KMedoids" 方法旨在找到定义 k 个聚类的 k 个中心点. 每个数据点被分配给其最近的中心点. 所有分配给特定中心点的点形成一个聚类.
  • 寻找最佳 k 个中心点的过程与 "KMeans" 相同,只是中心点不是定义为聚类的平均值. 相反,聚类中心点被定义为聚类中最中心的数据点,即与聚类中其他点的平均距离最小的数据点. 由于 "KMedoids" 不像 "KMedoids" 那样计算平均值,它可以在非数值空间中使用(只需要一个距离函数就足够了).
  • 由于初始中心点是随机选择的,运算结果可能会有所不同.
  • 子选项 "InitialCentroids" 可用于将初始中心点指定为数据点列表. 每个初始中心点必须与现有的数据点相匹配.
  • 可以给出以下子选项:
  • "InitialCentroids" Automatic初始中心点列表

范例

打开所有单元关闭所有单元

基本范例  (3)

使用 "KMedoids" 聚类方法找到恰好四个邻近值的聚类:

创建随机二维向量:

使用 "KMedoids" 方法找到 data 中的聚类:

在字符串列表上训练 ClassifierFunction

找到聚类分配并按聚类收集元素:

选项  (3)

"InitialCentroids"  (3)

通过指定 "InitialCentroids" 子选项查找聚类:

生成 100 种随机颜色的列表:

使用 "KMedoids" 方法对颜色进行聚类:

使用 "InitialCentroids" 子选项指定初始中心点:

创建随机二维向量:

使用 "KMedoids" 方法找到 data 中的聚类:

通过设置 "InitialCentroids" 查找数据聚类:

可能存在的问题  (1)

创建并可视化带噪声的二维月形训练和测试数据集:

使用 "KMedoids" 方法为两个聚类训练 ClassifierFunction,并在测试集中查找聚类:

可视化聚类表明,"KMedoids"在交织的聚类上表现不佳: