首页 > 解决方案 > 使用强化学习的数学测验应用程序

问题描述

我想使用强化学习开发一个数学测验程序。假设我们手头有 1000 个问题,每个测验要问 25 个问题。程序不是随机提问,而是必须从用户回答的方式中学习并提出下一个问题。

测验程序应该是一个强化学习代理。如何设计解决方案以及要使用哪些强化学习技术?示例: BoT:什么是 5+ 1:用户:3(错误答案) Bot:问简单的问题,或者如果正确答案问了一个困难的问题。

标签: pythonrecommendation-engine

解决方案


PPO 是 edTech 空间中此类 RL 应用的一种非常常见的技术。你可以从这篇文章中得到很多启发。他们使用 RLgraph 包和 PPO 算法。

您首先必须定义您的目标/奖励函数。在您的情况下,我会将奖励函数定义为与正确回答的先前问题的百分比有关。如果此百分比为 0% 或 100%,则奖励很低(太难/太容易)。如果接近 50%,您可能会选择高奖励。

这样,算法将转向正确率达到 50% 的问题(中等难度)。您可以使用范围(最后 2 个 q 或最后 10 个 q)。

作为状态空间,您还可以包括正确回答的问题,也许是年龄等特征,以帮助在用户尚未使用太多时启动算法。

作为行动空间,您可以提出所有问题。您还可以根据您的直觉对问题进行聚类(例如困难/容易,或几何/代数)并进行聚类动作,以减少动作空间。


推荐阅读