sklearn.multioutput.MultiOutputClassifier

class sklearn.multioutput.MultiOutputClassifier

Clasificación multiobjetivo (multi-target)

Esta estrategia consiste en ajustar un clasificador por objetivo. Se trata de una estrategia sencilla para ampliar los clasificadores que no admiten de forma nativa la clasificación multiobjetivo

Parámetros
estimatorobjeto estimador

Un objeto estimador que implementa fit, score y predict_proba.

n_jobsint o None, opcional (default=None)

El número de trabajos a ejecutar en paralelo. fit, predict y partial_fit (si lo soporta el estimador pasado) serán paralelizados para cada objetivo.

Cuando los estimadores individuales son rápidos de entrenar o predecir, el uso de n_jobs > 1 puede resultar en un rendimiento más lento debido a la sobrecarga de paralelismo.

None significa 1 a menos que esté en un contexto joblib.parallel_backend. -1 significa utilizar todos los procesos / hilos disponibles. Ver Glosario para más detalles.

Distinto en la versión 0.20: n_jobs por defecto cambiado de 1 a None

Atributos
classes_arreglo de forma (n_classes,)

Etiquetas de clase.

estimators_ : lista de estimadores n_outputlista de

Estimadores usados para predicciones.

Ejemplos

>>> import numpy as np
>>> from sklearn.datasets import make_multilabel_classification
>>> from sklearn.multioutput import MultiOutputClassifier
>>> from sklearn.neighbors import KNeighborsClassifier
>>> X, y = make_multilabel_classification(n_classes=3, random_state=0)
>>> clf = MultiOutputClassifier(KNeighborsClassifier()).fit(X, y)
>>> clf.predict(X[-2:])
array([[1, 1, 0], [1, 1, 1]])

Métodos

fit

Ajusta el modelo a la matriz de datos X y a los objetivos Y.

get_params

Obtiene los parámetros para este estimador.

partial_fit

Ajustar incrementalmente el modelo a los datos.

predict

Predecir variable de salida múltiple utilizando un modelo

score

Devuelve la precisión media en los datos de prueba y las etiquetas dadas.

set_params

Establece los parámetros de este estimador.

fit()

Ajusta el modelo a la matriz de datos X y a los objetivos Y.

Parámetros
X{array-like, sparse matrix} de forma (n_samples, n_features)

Los datos de entrada.

Yarray-like de forma (n_samples, n_classes)

Valores objetivo.

sample_weightarray-like de forma (n_samples,), default=None

Ponderación de las muestras. Si es None, las muestras se ponderan por igual. Sólo se admite si el clasificador subyacente admite ponderaciones de muestras.

**fit_paramsdict de str -> object

Parámetros pasados al método estimator.fit de cada paso.

Nuevo en la versión 0.23.

Devuelve
selfobject
get_params()

Obtiene los parámetros para este estimador.

Parámetros
deepbool, default=True

Si es True, devolverá los parámetros para este estimador y los sub objetos contenidos que son estimadores.

Devuelve
paramsdict

Nombres de parámetros mapeados a sus valores.

partial_fit()

Ajustar el modelo a los datos de forma incremental. Ajusta un modelo distinto para cada variable de salida.

Parámetros
X{array-like, sparse matrix} de forma (n_samples, n_features)

Datos.

y{array-like, sparse matrix} de forma (n_samples, n_outputs)

Objetivos de salida múltiple (multi-output targets).

classeslista de ndarray de forma (n_outputs,)

Cada matriz es clases únicas para una salida en str/int. Se puede obtener mediante [np.unique(y[:, i]) for i in range(y.shape[1])], donde y es la matriz objetivo del conjunto de datos. Este argumento es necesario para la primera invocación a partial_fit y puede omitirse en las siguientes. Tenga en cuenta que y no necesita contener todas las etiquetas de classes.

sample_weightarray-like de forma (n_samples,), default=None

Ponderación de las muestras. Si es None, las muestras se ponderan por igual. Sólo se admite si el regresor subyacente admite ponderaciones de muestras.

Devuelve
selfobject
predict()
Predecir variable de salida múltiple utilizando un modelo

entrenado para cada variable objetivo.

Parámetros
X{array-like, sparse matrix} de forma (n_samples, n_features)

Datos.

Devuelve
y{array-like, sparse matrix} de forma (n_samples, n_outputs)

Objetivos de salida múltiples predichos a través de múltiples predictores. Nota: se generan modelos separados para cada predictor.

property predict_proba

Estimaciones de probabilidad. Devuelve las probabilidades de predicción para cada clase de cada salida.

Este método lanzará un ValueError si alguno de los estimadores no tiene predict_proba.

Parámetros
Xarray-like de forma (n_samples_X, n_features)

Datos

Devuelve
parreglo de forma (n_samples, n_classes), o una lista de n_outputs tales arreglos si n_outputs > 1.

Las probabilidades de clase de las muestras de entrada. El orden de las clases corresponde a aquel en el atributo classes_.

Distinto en la versión 0.19: Esta función devuelve una lista de arreglos donde la longitud de la lista es n_outputs, y cada arreglo es (n_samples, n_classes) para esa salida en particular.

score()

Devuelve la precisión media en los datos de prueba y las etiquetas dadas.

Parámetros
Xarray-like de forma (n_samples_X, n_features)

Muestras de prueba

yarray-like de forma (n_samples, n_outputs)

Valores True para X

Devuelve
scoresfloat

accuracy_score de self.predict(X) versus y

set_params()

Establece los parámetros de este estimador.

El método funciona tanto con estimadores simples como en objetos anidados (como Pipeline). Estos últimos tienen parámetros de la forma <component>__<parameter> para que sea posible actualizar cada componente de un objeto anidado.

Parámetros
**paramsdict

Parámetros del estimador.

Devuelve
selfinstancia del estimador

Instancia de estimador.