sklearn.metrics.make_scorer

sklearn.metrics.make_scorer()

Hace un puntuador (scorer) a partir de una métrica de rendimiento o una función de pérdida.

Esta función de fábrica envuelve (wraps) funciones de puntuación para su uso en GridSearchCV y cross_val_score. Toma una función de puntuación, como accuracy_score, mean_squared_error, adjusted_rand_index o average_precision y devuelve un invocable (callable) que puntúa la salida de un estimador. La firma de la llamada es (estimator, X, y) donde estimator es el modelo a evaluar, X son los datos y y es el etiquetado real (o None en el caso de modelos no supervisados).

Leer más en el Manual de Usuario.

Parámetros
score_funccallable o invocable

Función de puntuación (o función de pérdida) con la firma score_func(y, y_pred, **kwargs).

greater_is_betterbool, default=True

Si score_func es una función de puntuación (predeterminado), lo que significa que alto es bueno, o una función de pérdida, lo que significa que bajo es bueno. En este último caso, el objeto puntuador invertirá el signo del resultado de score_func.

needs_probabool, default=False

Si score_func requiere predict_proba para obtener estimaciones de probabilidad de un clasificador.

Si es True, para el binario y_true, se supone que la función de puntuación acepta un y_pred 1D (es decir, la probabilidad de la clase positiva, forma (n_samples,)).

needs_thresholdbool, default=False

Si score_func toma una certeza de decisión continua. Esto sólo funciona para la clasificación binaria utilizando estimadores que tienen un método decision_function o predict_proba.

Si es True, para el binario y_true, se supone que la función de puntuación acepta un y_pred 1D (es decir, la probabilidad de la clase positiva o la función de decisión, forma (n_samples,)).

Por ejemplo, average_precision o el área bajo la curva roc no pueden calcularse sólo con predicciones discretas.

**kwargsargumentos adicionales

Parámetros adicionales que se pasan a score_func.

Devuelve
scorercallable o invocable

Objeto invocable que devuelve una puntuación escalar; cuanto mayor sea, mejor.

Notas

Si needs_proba=False y needs_threshold=False, se supone que la función de puntuación acepta la salida de predict. Si needs_proba=True, se supone que la función de puntuación acepta la salida de predict_proba (Para el binario y_true, la función de puntuación se supone que acepta la probabilidad de la clase positiva). Si needs_threshold=True, se supone que la función de puntuación acepta la salida de decision_function.

Ejemplos

>>> from sklearn.metrics import fbeta_score, make_scorer
>>> ftwo_scorer = make_scorer(fbeta_score, beta=2)
>>> ftwo_scorer
make_scorer(fbeta_score, beta=2)
>>> from sklearn.model_selection import GridSearchCV
>>> from sklearn.svm import LinearSVC
>>> grid = GridSearchCV(LinearSVC(), param_grid={'C': [1, 10]},
...                     scoring=ftwo_scorer)

Ejemplos utilizando sklearn.metrics.make_scorer