首先,我对你的问题有点困惑。但我会尽力回答。 K-means 聚类是一种基于数据彼此距离(通常是欧几里得)的无监督聚类方法。具有相似特征的数据点距离更近,然后会被聚类到同一个簇中。
我假设您正在尝试构建一个算法,根据个人的注意力、反应时间、记忆力和注意力技能,输出推荐的游戏。
第一个问题是我找不到包含技能和游戏的合适数据集。
对于数据集,您可以真正构建自己的数据集,如下所示:
标签 = [游戏]
特征 = [专注力、反应时间、记忆力、注意力]
标签是一个 n × 1 的向量,其中 n 是游戏数。特征是一个 n x 4 的向量,每个技能可以有 1 - 5 的范围,5 是最高的。然后用你最喜欢的经典游戏填充它。
例如,俄罗斯方块可能是您的第一个游戏,您可以像这样将它添加到您的数据集中:
标签 = [俄罗斯方块]
特征 = [5, 2, 1, 4]
在玩俄罗斯方块时你需要高度集中注意力,但你不需要很好的响应时间,因为方块很慢而且你不需要记住任何东西。
那我不知道如何找出集群。
您首先必须确定要使用的距离,例如曼哈顿、欧几里得等。然后你需要决定集群的数量。 k-means算法很简单,看下面的视频来学习吧:https://www.youtube.com/watch?v=_aWzGGNrcic
此外,如果没有数据集(不使用强化学习),我该怎么做?
这个问题的意义为 0,因为首先,如果你没有数据,你如何对它们进行聚类?想象一下你的朋友要求你把所有的青苹果和红苹果分开。但是他们从来没有给过你任何苹果……你怎么可能把它们聚在一起?这是不可能的。
其次,在这种情况下,我不确定您所说的强化学习是什么意思。强化学习是关于存在于环境中的代理,并学习如何在该环境中以最佳方式表现以最大化其内部奖励。例如,一个人进入赌场并试图赚到最多的钱。它与数据集无关。