操作指南
分析训练好的模型
拟合后访问和解释模型
数据设置
| unique_id | ds | y | |
|---|---|---|---|
| 0 | id_0 | 2000-01-01 | 0.322947 | 
| 1 | id_0 | 2000-01-02 | 1.218794 | 
| 2 | id_0 | 2000-01-03 | 2.445887 | 
| 3 | id_0 | 2000-01-04 | 3.481831 | 
| 4 | id_0 | 2000-01-05 | 4.191721 | 
训练
假设您想使用星期几和 lag1 作为特征来训练一个线性回归模型。
MLForecast.fit 的作用是保存预测步骤所需的数据,并训练模型(在本例中是线性回归)。训练好的模型可以在 MLForecast.models_ 属性中找到,这是一个字典,其中键是模型名称,值是模型本身。
检查参数
我们可以通过以下方式访问线性回归系数
SHAP
训练集
如果您需要生成训练数据,可以使用 MLForecast.preprocess。
| unique_id | ds | y | lag1 | dayofweek | |
|---|---|---|---|---|---|
| 1 | id_0 | 2000-01-02 | 1.218794 | 0.322947 | 6 | 
| 2 | id_0 | 2000-01-03 | 2.445887 | 1.218794 | 0 | 
| 3 | id_0 | 2000-01-04 | 3.481831 | 2.445887 | 1 | 
| 4 | id_0 | 2000-01-05 | 4.191721 | 3.481831 | 2 | 
| 5 | id_0 | 2000-01-06 | 5.395863 | 4.191721 | 3 | 
我们提取 X,这包括删除信息列 (id + 时间) 和目标
| lag1 | dayofweek | |
|---|---|---|
| 1 | 0.322947 | 6 | 
| 2 | 1.218794 | 0 | 
| 3 | 2.445887 | 1 | 
| 4 | 3.481831 | 2 | 
| 5 | 4.191721 | 3 | 
我们现在可以计算 SHAP 值
并对其进行可视化
预测
有时您想确定模型给出特定预测的原因。为此,您需要输入特征,这些特征默认情况下不会返回,但您可以使用回调来检索它们。
| unique_id | ds | lr | |
|---|---|---|---|
| 0 | id_0 | 2000-08-10 | 3.468643 | 
| 1 | id_1 | 2000-04-07 | 3.016877 | 
| 2 | id_2 | 2000-06-16 | 2.815249 | 
| 3 | id_3 | 2000-08-30 | 4.048894 | 
| 4 | id_4 | 2001-01-08 | 3.524532 | 
您现在可以使用 SaveFeatures.get_features 来检索特征
| lag1 | dayofweek | |
|---|---|---|
| 0 | 4.343744 | 3 | 
| 1 | 3.150799 | 4 | 
| 2 | 2.137412 | 4 | 
| 3 | 6.182456 | 2 | 
| 4 | 1.391698 | 0 | 
并使用这些特征来计算 SHAP 值。
我们现在可以分析哪些因素影响了 'id_4' 的预测。

