具有离散和连续属性的聚类算法?
Posted
技术标签:
【中文标题】具有离散和连续属性的聚类算法?【英文标题】:Clustering Algorithm with discrete and continuous attributes? 【发布时间】:2010-10-24 04:46:32 【问题描述】:有人知道对离散属性和连续属性执行聚类的好算法吗?我正在解决识别一组相似客户的问题,每个客户都有离散和连续属性(想想客户的类型、该客户产生的收入金额、地理位置等)。
K-means 或 EM 等传统算法适用于连续属性,如果我们混合了连续属性和离散属性怎么办?
【问题讨论】:
【参考方案1】:如何将您的每个类别属性转换为一系列 N-1 二元指标属性(其中 N 是类别数)?
您不应该害怕高维,因为可以使用稀疏表示(例如 mahout 的SequentialAccessSparseVector
)。
完成此操作后,您可以使用经典的 K-means 或任何标准的纯数字聚类算法。
【讨论】:
【参考方案2】:R 是一个很好的聚类工具 - 标准方法是使用 daisy
在混合数据上计算相异矩阵,然后使用 agnes
与该矩阵进行聚类。
cba
module on CRAN 包含一个基于 ROCK 对二进制预测变量进行聚类的函数。
【讨论】:
【参考方案3】:我实际上会向用户呈现成对的离散属性,并要求他们定义他们的接近度。你会给他们呈现一个从[同义词..非常外国]或类似的尺度。让很多人这样做,您最终会得到一个广泛接受的非线性属性值的邻近函数。
【讨论】:
【参考方案4】:您也可以将affinity propagation 作为一种可能的解决方案。 但要克服连续/离散的困境,您需要定义一个对离散状态进行估值的函数。
【讨论】:
【参考方案5】:如果我没记错的话,COBWEB 算法可以处理离散属性。
您还可以对离散属性执行不同的“技巧”,以创建有意义的距离指标。
您可以在 google 上搜索分类/离散属性的聚类,这是最热门的之一:ROCK: A Robust Clustering Algorithm for Categorical Attributes。
【讨论】:
以上是关于具有离散和连续属性的聚类算法?的主要内容,如果未能解决你的问题,请参考以下文章