使用新的维度集获得负 r2_score

数据挖掘 机器学习 Python scikit-学习 线性回归
2022-02-16 01:58:01

我正在尝试take off delay使用我当前的数据集来预测飞行。在这个时候,我只有四个维度。

scheduled_time_departure (A), flight_id, day_of_week actual_time_departure(B),take_off_delay(B-A)

当我尝试在 x 轴上使用 ( , , )actual_time_departure(B)使用 scikit 线性回归模型进行预测时,我会变得很好 但是当我尝试预测时(实际上是 和 之间的差异,在这种情况下我会变得消极scheduled_time_departure (A)flight_idday_of_weekr2_scoretake_off_delayactual_time_departurescheduled_time_departurer2_score

笔记:

  1. 转换stringinteger我正在使用LabelEncoder的 .
  2. scheduled_time_departure并且actual_time_departure以秒为单位不是时间戳,即一天中的第二个,86400 是它可以拥有的最大值。
  3. 我什至尝试normalizationscheduled_time_departure
  4. 我确保这take_off_delay总是积极的。
  5. 对于我预测的情况actual_time_departure,我尝试使用one hot encoder但加重了r2_score

PS:我是机器学习和数据科学的新手,如果我犯了愚蠢的错误,请告诉我 :) PPS:我知道如果 r2 分数为负数,模型可能最差,但是我想了解原因。

1个回答

一个负面的R2在您的训练集上通常意味着您不适合拦截。一个负面的R2在您的测试集上意味着该模型非常糟糕。事实上,航班 ID 不是一个有意义的标量值,不能处于线性回归中。