我正在构建一个交互式预测工具(使用python),以帮助组织中进行预测。迄今为止,预报过程很大程度上是由人为驱动的,预报员将其自然神经网络中的数据同化并利用他们学到的内脏感觉进行预报。通过长期的预测验证和预测建模研究,我发现了您可能期望的结果;不同的预测器表现出不同的偏差,某些预测器的作用似乎被夸大了,而其他重要预测器的作用似乎被忽略了,总的来说,与相对简单的经验模型相比,预测性能中等。
预测将继续是手动的,但我正在尝试构建一个有用的工具,以为预测者更好地量化预测者的相对影响。我还希望工具向用户强调一些重要的影响,例如季节性影响,这些影响经常被忽略。我期望一些“经验丰富”的预测人员(其中许多人对统计数据缺乏正式知识)会对建模过程产生一定程度的抵制和怀疑,因此,沟通至少同样重要,而模型性能本身在预测准确性方面取得可衡量的提高。
我正在开发的模型具有很强的自回归成分,有时会因事件而显着地对其进行修改,这些事件在某些预测变量中显示为测量值,在非事件时间内,这些值接近于零。这符合预报员使用的心理模型。关键部分是能够证明对于任何给定的预测而言,哪些“事件”度量值在使预测偏离自回归值时最有影响力。我以这种方式对过程进行成像;预报员认为他们的最佳猜测值是正确的,模型提出了一个不同的猜测值,预报员问为什么。该模型的回答是:“请参见此处,此预测变量的值将增加夏季的预测值。如果是冬季,它将以其他方式移动。我知道还有其他度量,
现在,假设模型是简单的线性回归。可以想象通过将值乘以模型系数并显示为简单的条形图来显示基于事件的预测变量的相对“效果”。来自不同预测变量的所有条形加起来与AR值的总偏差,这简洁明了地显示了在这种情况下具有很大影响力的那些。
问题在于,被预测的过程在预测变量中显示出高度的非线性,或者至少,对于使用黑盒非线性机器学习算法(随机森林和GBM),我的成功要比用于GLM的更多。此数据集。理想情况下,我希望能够在不改变用户体验的情况下无缝更改“在幕后”工作的模型,因此我需要一种通用的方式来以简单的方式展示不同测量的重要性,而无需使用某些特定于算法的方法。我当前的方法是通过将除一个预测变量以外的所有值都设置为零来准线性化效果,记录预测的偏差,然后对所有预测变量重复,在上述条形图中显示结果。在存在强非线性的情况下,这可能无法很好地工作。