分类器能否在不访问单一分类结果的情况下通过强化学习进行训练?

数据挖掘 机器学习 分类 随机森林 强化学习 训练
2022-02-18 11:38:57

问题:可以在不访问单一分类结果的情况下通过强化学习训练分类器吗?

我想使用强化学习训练分类器。但是,有一个很大的限制:程序无法定期访问分数,即使在每次分类后也无法访问。只有在完成许多分类后(例如,大约 40-200 个分类,我们称它们为一个批次),才能获得该批次的最终分数。一批可以相当快地执行:只需要大约一秒钟。因此,可以执行数千个批次,每个批次都返回其分类的分数。每次执行批处理时,都会将当前的 ML 模型作为输入供批处理使用。

当然,除此之外,特征向量是已知的(包含大约 60 个特征)并且标签是已知的(大约 6 个标签)。

我以前从未应用过强化学习,因此,我不知道这是否可行。从理论上讲,我认为应该:所有数据都可用。算法可以为模型选择一些参数值,试一试,得到一个分数。然后尝试不同的值并再次获得分数。这样应该可以逐步提高。

附加说明:虽然上面的文字应该足以理解问题并提供答案(可以是一般性的,而不是特定于具体用例),但我个人的用例和有关它的详细信息在此处进行了解释。这可能有助于更详细地理解问题。

编辑:之前,我使用“随机森林”作为可能使用的 ML 模型的示例。由于随机森林似乎需要与强化学习相反的监督学习,因此我已将其从文本中删除(不包括一些特殊用例,例如这个)。

2个回答

如果每个数据点都有一个真实标签(即六个标签之一),那么任何监督学习技术都可以工作,包括随机森林。如果标签是分批出现的,那么模型的参数可以随着每个新的批次而更新。使用截至当前时间点的数据完全重新训练模型,或者使用新数据增量更新模型参数。

除非必要,否则没有理由应用强化学习。

如果每个数据点都没有真实标签,那么强化学习可能是合适的。那么你就不能使用随机森林或任何其他监督学习技术。您需要选择一种可以处理稀疏标记数据的强化学习技术。

如果你想训练一个 AI 代理,那么你应该使用 RL,但前提是你的代理可以控制游戏。它应该能够玩游戏(即与环境交互)以优化其策略。奖励是否延迟并不重要,但互动至关重要。因此,基本上任何 RL 模型都需要两个要素:与环境的交互和获得奖励。该模型必须能够在改进过程中探索和利用其策略,这就是为什么它必须根据当前最佳策略而不是一些随机游戏来接收来自其行为的反馈。

如果您只想对从游戏中收集的一些游戏数据(在您的情况下为单位)进行分类,您应该尝试不同的分类算法,而不是 RL。我不会做 AI 代理,它只是一个分类模型,所以它不能玩这个游戏。

学习如何玩游戏而不实际为您的代理玩游戏的另一种选择是在每场比赛之后收集数据,但不仅是关于单位的数据(即游戏环境的状态),而且还包括每场比赛中可能的动作州和在这些州采取的行动。然后,您可以对一些启发式搜索算法进行硬编码,以在游戏的每个状态中寻找可能的最佳动作。但是话又说回来,除非您的代理可以与游戏交互,否则您将无法对其进行测试。而且它可能不会像 RL 训练的代理那样有效。因此,我建议为代理找到一种访问游戏的方法,然后尝试 RL 算法。