无监督学习

Unsupervised Learning

我正在做最后一年的项目,该项目必须使用无监督学习(KMeans 算法)进行编码。这是根据他们的认知技能水平从各种游戏中预测合适的游戏。技能是专注力、反应时间、记忆力和注意力。

第一个问题是我找不到包含技能和游戏的合适数据集。然后我不确定如何找出集群。有没有可能找到合适的数据集以及如何对它们进行聚类的方法?

此外,如果没有数据集(不使用强化学习)怎么办?

提前致谢

首先,我对你的问题有点困惑。但我会尽力回答。 K 均值聚类是一种基于数据彼此之间的距离(通常为欧氏距离)的无监督聚类方法。具有相似特征的数据点之间的距离会更近,然后聚类到同一个簇中。

我假设您正在尝试构建一个算法,在给定个人注意力、响应时间、记忆力和注意力技能的情况下输出推荐游戏。

The first problem is I cannot find a proper dataset that contains the skills and games.

对于数据集,您可以直接构建自己的数据集,如下所示:

标签=[游戏]

特点=[专注力、反应时间、记忆力、注意力]

Labels 是一个 n x 1 向量,其中 n 是游戏的数量。 Features 是一个 n x 4 向量,每个技能的范围是 1 - 5,5 是最高的。然后用你最喜欢的经典游戏填充它。

例如,俄罗斯方块可以是您的第一个游戏,您可以像这样将它添加到您的数据集中:

label = [俄罗斯方块]

特征 = [5, 2, 1, 4]

玩俄罗斯方块需要集中注意力,但不需要很好的反应时间,因为方块很慢,你不需要记住任何东西。

Then I am not sure about how to find out clusters.

您首先必须确定要使用的距离,例如Manhattan、Euclidean 等。然后您需要确定集群的数量。 k-means算法很简单,看下面的视频就可以学了:https://www.youtube.com/watch?v=_aWzGGNrcic

Furthermore, how can I do it without a dataset (Without using reinforcement learning)?

这个问题的意义为0,因为首先,如果你没有数据,你如何对它们进行聚类?想象一下你的朋友要你把所有的青苹果和红苹果分开。但是他们从来没有给过你任何苹果……你怎么可能把它们聚在一起?不可能的。

其次,我不确定你在这种情况下所说的强化学习是什么意思。强化学习是关于存在于环境中的代理,并学习如何在该环境中表现最佳以最大化其内部奖励。例如,一个人进入赌场并试图赚到最多的钱。与数据集无关