美文网首页
一些聚类问题

一些聚类问题

作者: 胡拉哥 | 来源:发表于2020-02-05 14:58 被阅读0次

假设我们是一家大型零售公司, 客户分布在全国各地. 为了方便管理和提供更好的服务, 我们需要把客户按照地理位置进行分类, 例如按城市或街道的维度把客户划分成 区块, 每个区块是客户的集合. 主要考虑如下因素:

  • 区块包含客户的地理位置尽可能集中
  • 区块大小(客户数量)有限制
  • 客户有权重, 例如客户分为普通客户和VIP客户.

下文总结几个可能需要求解的聚类问题.

问题列表

1. 等量的聚类问题(Equal-size clustering or balanced clustering)

给定点集X=\{\boldsymbol{x_1}, \boldsymbol{x_2}, ..., \boldsymbol{x_n}\}, 其中每个点是一个d维实向量. 给定常数kn \mod k =0. 我们把X划分(Partition)成k个"等量"的子集S_1, S_2, ..., S_k. 令\boldsymbol{\mu_i}代表S_i的均值, 我们的目标是:
\min \sum_{i=1}^k\sum_{\boldsymbol{x}\in S_i}||\boldsymbol{x} - \boldsymbol{\mu_i}||^2.

2. 限容的聚类问题(Size-constrained clustering)

给定点集X=\{\boldsymbol{x_1}, \boldsymbol{x_2}, ..., \boldsymbol{x_n}\}, 其中每个点是一个d维实向量. 给定常数LB, UBLB\leq UB. 我们把X划分(Partition)成k个"满足容量限制"的子集S_1, S_2, ..., S_k, 即LB \leq |S_i|\leq UB, \forall i. (注意: k不是输入参数.) 令\boldsymbol{\mu_i}代表S_i的均值, 我们的目标是:
\min \sum_{i=1}^k\sum_{\boldsymbol{x}\in S_i}||\boldsymbol{x} - \boldsymbol{\mu_i}||^2.

3. 限权的聚类问题(Weight-constrained clustering)

给定点集X=\{\boldsymbol{x_1}, \boldsymbol{x_2}, ..., \boldsymbol{x_n}\}和权重w_1, w_2, ..., w_n, 其中每个点是一个d维实向量. 给定常数LB, UBLB\leq UB. 我们把X划分(Partition)成k个"满足容量限制"的子集S_1, S_2, ..., S_k, 即LB \leq w(S_i)\leq UB, \forall i, 其中w(S_i)代表S_i对应的权重之和. (注意: k不是输入参数.) 令\boldsymbol{\mu_i}代表S_i的均值, 我们的目标是:
\min \sum_{i=1}^k\sum_{\boldsymbol{x}\in S_i}||\boldsymbol{x} - \boldsymbol{\mu_i}||^2.

说明

1. 计算复杂性

  • 我们知道k-means是NP-hard. 甚至当k=2[1]以及平面上的k-means也是NP-hard[2]. 与k-means相比, 问题1要求每个聚类(cluster)的元素个数相同. 那么它的复杂性也是NP-hard吗?
  • 如果上述问题限制在 平面上的二维向量, 其计算复杂性是否NP-hard? 这是我们在实际应用中关心的问题.
  • 问题1是问题2的特殊情况: 令LB=UB=n/k.
  • 问题2是问题3的特殊情况: 令w_i=1, \forall i.

2. 优化目标

  • 上述3个问题的目标函数都是相同的,即最小化中心点到聚类点的距离(L_2范数)之和. 我们也可以考虑其它的优化目标, 例如最小化最大半径. 甚至也可以考虑用图的方式对上述问题建模(参考k-median, k-center).
  • 在实际应用中, 我们期望做到每个类尽量集中. 因此, 无论上述问题用什么优化目标, 我们真正期望的不一定是最优解, 而是让结果"看起来"可以接受. 从计算角度来看, 我们希望高效且解的质量可以接受的算法.
  • 从建模的角度来看, 我们是否有可能找到一种建模方式, 例如找到一种目标函数, 使得问题本身的计算复杂性可以降低成P问题? (且在实际中我们能接受这样的目标)

参考文献


  1. M. Garey, D. Johnson, H. Witsenhausen. The complexity of the generalized LIoyd - Max problem. IEEE Transactions on Information Theory. 28(2): 255-256, 1982.

  2. M. Mahajan, P. Nimbhorkar and K.Varadarajan. The planar k-means problem is NP-hard. Lecture Notes in Computer Science. 5431. pp.274-285, 2009.

相关文章

  • 一些聚类问题

    假设我们是一家大型零售公司, 客户分布在全国各地. 为了方便管理和提供更好的服务, 我们需要把客户按照地理位置进行...

  • 集成聚类回顾

    目录 一、介绍 二、集成聚类的问题 数据聚类和传统的方法 集成聚类的基础1)问题的公式2)集成生成策略3)集成的聚...

  • 聚类问题建模

    一、什么是聚类? 1、聚类的定义 将所有观测值通过相似度评价方法分成不同的类。 2、应用场景 给商品做分组,为用户...

  • Kmeans聚类

    kmeans是简单易懂又很常用的一种聚类方法。对于kmeans的聚类,我着力弄懂如下一些问题: 质心初始化的方式 ...

  • 聚类算法

    聚类算法 聚类的概念:无监督问题:我们手里没有标签了聚类:相似的东西分到一组,跟分类问题相似。刚开始的数据集上没有...

  • 简单聚类算法

    一些聚类算法 Birch层次聚类 ,KMeans原形算法 ,AGNES层次算法, DBSCAN密度算法, LVQ原...

  • 如何选取聚类算法

    “聚类算法的选取原则****” 01 — 问题背景 当遇到聚类分析问题的时候,机器学习领域中有很多聚类算法可供选择...

  • 聚类问题算法概述

    很难对聚类方法提出一个简洁的分类,因为这些类别可能重叠,从而使得一种方法具有几类的特征,尽管如此,对于各种不同的聚...

  • 问题汇总(4):聚类

    聚类说实话除了K-means,其他的我都不太懂,,,不懂也得写啊!!! 目录:机器学习常见面试问题汇总问题汇总(1...

  • 聚类:原型聚类、层次聚类、密度聚类

    首先介绍三种类型的聚类方法: 原型聚类:假设聚类结构能够通过一组原型求解。通常算法先对原型进行初始化,然后进行迭代...

网友评论

      本文标题:一些聚类问题

      本文链接:https://www.haomeiwen.com/subject/hgnjxhtx.html