我想使用强化学习来开发数学测验程序。 假设我们手头有1000个问题,每个测验中要问25个问题。程序必须随机学习用户回答并询问下一个问题的方式,而不是随意提问。
测验程序应该是强化学习代理。如何设计解决方案?将使用哪些强化学习技术? 范例: BoT:什么是5+ 1: 用户:3(错误答案) 机器人:问的是简单的问题,或者正确答案是否是一个困难的问题。
答案 0 :(得分:0)
PPO是edTech领域中此类RL应用程序的非常常用的技术。您可以从此article中获得很多启发。他们使用RLgraph软件包和PPO算法。
您首先必须定义您的目标/奖励功能。在您的情况下,我将奖励函数定义为与正确回答的先前问题的百分比有关。如果此百分比为0%或100%,则奖励较低(太难/容易)。如果接近50%,您可能会选择较高的奖励。
这样,算法将转向获得50%正确性(中等难度)的问题。您可以使用范围(最近2个q或最近10个q)玩。
作为状态空间,您还可以包含正确回答的问题,例如年龄等特征,以在用户未使用过多算法时帮助其启动算法。
作为操作空间,您可以提出所有问题。您还可以根据自己的直觉将问题(例如,困难/容易或几何/代数)进行聚类,并使聚类动作,以减少动作空间。