【问题标题】:What is a good approach to clustering multi-dimensional data?什么是聚类多维数据的好方法?
【发布时间】:2020-02-21 03:33:35
【问题描述】:

我创建了一个 k-means 聚类,用于基于 1 个多维特征(即许多客户的客户 24 小时用电量)对数据进行聚类,但我想找出一种好方法来获取假设来自比赛的数据玩家在游戏中尝试预测获胜概率。

应该是这样的:

Player A
Match 1
Match 2
.
.
.
Match N

每场比赛都会有该玩家的不同维度的统计数据,例如玩家在给定时间的 X/Y 坐标、玩家得分的时间等。例如,X/Y 将具有基于匹配长度的数据点,而分数可能介于 0 和 X 之间,而其他值可能只有 1 个维度,例如匹配的技能排名差异。

我想获取玩家的所有比赛并根据特征对它们进行聚类。

我的想法是对匹配的每个多维特征进行聚类,以将它们汇总为一个聚类,然后用一个聚类编号表示匹配的整个特征。

我将对所有多维特征重复此过程,直到每个匹配的行是一个标量值向量,然后在此汇总视图上运行最后一个集群以尝试查看是否最终获胜和失败在不同的集群中,并根据当前正在玩的游戏与集群匹配数据的相似度,计算与其他集群的相似度,并分配它可能会成为胜利或失败的概率。

这似乎是一个不错的方法,但有一些问题让我想看看是否有更好的方法

我看到的一个关键问题是构建模型似乎很慢 - 我想运行 PCA 并计算每个玩家的每个功能使用的最佳组件数量,并运行单独的计算以当我对这些单独的功能进行聚类时,确定为每个功能/玩家分配的最佳聚类数量。我认为假设将其扩展到具有数万亿场比赛的数千到数百万玩家将需要非常长时间来进行此计算以及使用新数据、特征和/或玩家更新模型。

所以我对你们所有 ML 工程师/数据科学家的问题是,我如何解决这个问题?

您会使用相同的方法并仅分配大量硬件来快速构建模型,还是有一些我错过的更好/更有效的方法来对此类数据进行聚类?

【问题讨论】:

  • 请注意,SO 是关于特定编码问题,而不是设计、推荐或讨论论坛;你的问题在这里太宽泛了。

标签: machine-learning cluster-analysis data-science pca


【解决方案1】:

这是一种完全随机的方法。

仅仅因为你用过一次并且听起来很酷就调用一堆函数并不是一个好主意。

相反,您首先应该将您的问题 形式化。你想做什么?

您似乎想预测胜负。那是分类而不是聚类。其次,k-means 最小化平方和。将数据最小化真的有意义吗?我怀疑是这样。最后,您开始担心将某些东西扩展到海量数据,这甚至还行不通……

【讨论】:

    猜你喜欢
    • 2016-10-08
    • 2020-07-11
    • 2013-05-17
    • 2010-10-25
    • 2018-10-11
    • 2016-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多