HeadlinesBriefing favicon HeadlinesBriefing.com

MSE欺骗你:第二部分

Towards Data Science •
×

在上一篇文章中,我们看到了为什么使用MSE训练会迫使模型仅报告条件均值,以及高斯NLL如何让它也能学习到诚实的每步不确定性σ。那是一个单步的故事。本文接着上一部分继续。我们在第一部分中构建的所有内容——高斯NLL、两项损失、证明模型同时学习条件均值和条件方差——都是关于单步预测:给定一个包含T个观测值的上下文窗口,预测下一个值x_{T+1}的分布。

在推理时,在任何实际应用中,这很少足够。你想知道接下来10步、100步或1000步会发生什么。你需要一个预测,而不是一个单一预测。如果你的模型是概率性的,你希望该预测在预测范围结束时仍然带有诚实的不确定性。本文就是关于如何正确做到这一点。

人们可能立即想到朴素方法,即重复应用模型,将其预测作为输入反馈回去,这实际上是一个确定性操作,丢弃了模型花费大量精力学习的不确定性。解决这个问题需要仔细思考未来值的联合分布究竟是什么,以及如何通过蒙特卡洛采样来近似它。这个修复方法比朴素版本多不了几行代码,但它提供了一个根本不同且更好的预测。

这里的所有内容都在配套的笔记本中构建和检查:两种展开方法,应用于同一个训练好的模型,同一个信号,并进行了覆盖率和PIT诊断(本文中都有解释)。