使用一个标称比例对 3D 数据进行聚类
Clustering 3D data with one nominal scale
问题陈述
我有 2D pandas 数据框,其中包含有关用户工具使用特征的数据(例如,系统 A 的使用率为 88%,系统 B 的使用率为 11%,系统 C 的使用率为 1%:
A B C
Usage 0,88 0,11 0,01
假设存在三个用户(ID:1、2、3)存在以下矩阵:
ID:1 A B C ID:2 A B C ID:3 A B C
Usage 0,88 0,11 0,01 Usage 0,86 0,13 0,01 Usage 0,00 0,00 1,00
我考虑将单个 2D 矩阵聚合到 3D 矩阵以识别相似使用行为的集群。
目标
识别系统使用中的集群。在此示例中,ID1 和 ID2 应该聚类。我构建了一个工作 DBSCAN method 用于聚类随机二维数据。
但是,我遇到了在聚合 3D 矩阵中以固定顺序堆叠 2D 矩阵的问题。因此,不可能在仅查看一个固定的标称序列时识别相似性,因为基本上每个用户 2D 数据都必须与所有其他 2D 数据进行比较以找到相似的使用行为。
想法
我想到了在机器学习中为小数据集集成一个有点k折交叉验证的方法。但是我不知道如何将这种行为集成到聚类算法中。
另一个想法可能是模式识别或层次聚类(尽管聚类总数未知)
是更好的方法,因为聚合 3D 矩阵的第三个轴是标称比例(用户 ID)。但是,到目前为止,我在模式识别领域还没有经验。
也许有人有很好的方法来解决这个聚类问题。 :)
该示例使用 labels_true
仅用于评估,而不是作为 DBSCAN 本身的输入。 labels_true
派生自创建模拟数据集的函数。调用 dbscan 的正确方法是 db = DBSCAN(eps=0.3, min_samples=10).fit(X)
你的情况下的 x 是 [[valueA, valueB, valueC], [valueA, valueB, valueC], ...]
然后结果在 db.labels_
.
问题陈述
我有 2D pandas 数据框,其中包含有关用户工具使用特征的数据(例如,系统 A 的使用率为 88%,系统 B 的使用率为 11%,系统 C 的使用率为 1%:
A B C
Usage 0,88 0,11 0,01
假设存在三个用户(ID:1、2、3)存在以下矩阵:
ID:1 A B C ID:2 A B C ID:3 A B C
Usage 0,88 0,11 0,01 Usage 0,86 0,13 0,01 Usage 0,00 0,00 1,00
我考虑将单个 2D 矩阵聚合到 3D 矩阵以识别相似使用行为的集群。
目标
识别系统使用中的集群。在此示例中,ID1 和 ID2 应该聚类。我构建了一个工作 DBSCAN method 用于聚类随机二维数据。
但是,我遇到了在聚合 3D 矩阵中以固定顺序堆叠 2D 矩阵的问题。因此,不可能在仅查看一个固定的标称序列时识别相似性,因为基本上每个用户 2D 数据都必须与所有其他 2D 数据进行比较以找到相似的使用行为。
想法
我想到了在机器学习中为小数据集集成一个有点k折交叉验证的方法。但是我不知道如何将这种行为集成到聚类算法中。
另一个想法可能是模式识别或层次聚类(尽管聚类总数未知) 是更好的方法,因为聚合 3D 矩阵的第三个轴是标称比例(用户 ID)。但是,到目前为止,我在模式识别领域还没有经验。
也许有人有很好的方法来解决这个聚类问题。 :)
该示例使用 labels_true
仅用于评估,而不是作为 DBSCAN 本身的输入。 labels_true
派生自创建模拟数据集的函数。调用 dbscan 的正确方法是 db = DBSCAN(eps=0.3, min_samples=10).fit(X)
你的情况下的 x 是 [[valueA, valueB, valueC], [valueA, valueB, valueC], ...]
然后结果在 db.labels_
.