一个在单次回测中看起来极为出色的方法,往往是在利用某种无法经受住未来检验的东西:一个泄漏的特征、一次幸运的数据划分,或是一条悄悄向结果倾斜的评估规则。我们已经学会将异常优秀的初步结果视为需要更多审视、而非更少审视的理由。
在对被测方法而言具有科学合理性的情况下,我们的检查可能包括一次刻意引入泄漏的对照运行:如果一个被刻意破坏、允许泄漏的实验版本,其表现与干净版本可疑地接近,这就是一个信号,表明干净流水线中某些环节可能并不像假设的那样干净。这是一种有针对性的诊断手段,而不是我们在每个研究周期都会执行的步骤。
我们还要求全程按时间顺序进行评估 —— 训练过程相对于被测对象,始终只能看到过去 —— 并在结果被看到之前就冻结评估规则,这样评估标准就无法被调整以迎合数据碰巧产生的结果。
最后,一个经受住上述一切考验的方法,仍然必须在稳健性测试中站得住脚:水平与尺度的变化、加入的噪声、数据缺失,以及要求在其构建所依据的确切条件之外进行泛化。大多数通过初步检查的方法,在这一步都会失去部分光彩 —— 而这正是问题的关键所在。