Вычисление объясненной дисперсии в Spark отличается от scikit-learn - PullRequest
0 голосов
/ 26 мая 2020

Я пытаюсь вычислить метрики для задачи регрессии, и моя выигрышная оценка равна xgboost.

Теперь проблема, которую я вижу, заключается в том, что способ вычисления explained_variance в scikit-learn отличается от метода Spark mllib. В Spark, mllib, explained_variance вычисляется как:

explainedVariance = 1 - variance(y - y_hat) / variance(y)

С точки зрения sklearn, это верно:

R2 = 1 - [(Sum of Squared Residuals / n) / Variancey_actual]
    Explained Variance Score = 1 - [Variance(Ypredicted - Yactual) / Variancey_actual]

, что более точно, чем Spark наклоняется. в направлении FVU и который следует использовать.

Может ли explained_variance иметь значение больше 1?

...