我正在建立一个预测模型,该模型可以预测学生在学期末的成功概率。我对学生是成功还是失败特别感兴趣,其中成功通常被定义为完成课程并获得总分的70%或更多。
当我部署模型时,随着更多信息的获得,成功概率的估计需要随着时间的推移而更新-理想的情况是发生某种事情后立即发生,例如学生提交作业或获得一项成绩时。这种更新对我来说听起来像是贝叶斯,但是考虑到我在教育统计方面的训练,这有点超出我的舒适范围。
到目前为止,我一直在使用逻辑回归(实际上是套索)与包含基于周快照的历史数据集。由于每个学生都有观察值,因此该数据集具有相关的观察值;一个学生的观察结果是相关的。我不是在特定学生的每周观察中专门建模相关性。我相信我只需要在推论环境中考虑一下,因为标准误会太小。我认为-但对此不确定-从相关观察得出的唯一问题是,当我交叉验证以将聚类观察保留在数据的一个子集中时,我需要格外小心,这样我就不会根据对模型已经见过的人的预测,人为地降低样本外错误率。
我正在使用R的glmnet程序包对逻辑模型进行套索处理,以生成成功/失败的可能性,并自动为特定课程选择预测变量。我一直使用周变量作为因素,与所有其他预测变量进行交互。我认为这与仅估计基于周的单个模型在总体上并没有什么不同,除了它可以使我们了解整个期间中可能存在一些通用模型,这些模型可以在不同星期通过各种风险调整因子进行调整。
我的主要问题是:是否有一种更好的方法来随时间更新分类概率,而不是将数据集分为每周(或其他基于间隔的)快照,引入与其他要素交互的时间周期因子变量,以及使用累积功能(累积的积分,上课的累积天数等)?
我的第二个问题是:我是否在这里缺少与相关观测值相关的预测建模的关键内容?
我的第三个问题是:考虑到我每周做快照,如何将其概括为实时更新?我正在计划仅在当前的每周时间间隔内插入变量,但这对我来说似乎很麻烦。
仅供参考,我受过应用教育统计方面的培训,但很早以前就拥有数学统计方面的知识。如果可以的话,我可以做一些更复杂的事情,但是我需要用相对容易理解的术语来解释。