sklearn.multiclass
.OutputCodeClassifier¶
- class sklearn.multiclass.OutputCodeClassifier¶
(Corrección de errores) Estrategia de código de salida (Output-Code) multiclase
Las estrategias basadas en el código de salida (Output-Code) consisten en representar cada clase con un código binario (un arreglo de 0s y 1s). En el momento del ajuste, se ajusta un clasificador binario por cada bit del libro de códigos (code book). En el momento de la predicción, los clasificadores se utilizan para proyectar nuevos puntos en el espacio de clases y se elige la clase más cercana a los puntos. La principal ventaja de estas estrategias es que el número de clasificadores utilizados puede ser controlado por el usuario, ya sea para comprimir el modelo (0 < code_size < 1) o para hacer el modelo más robusto a los errores (code_size > 1). Consulta la documentación para obtener más detalles.
Más información en el Manual de usuario.
- Parámetros
- estimatorestimator object
Un objeto estimador que implementa fit y uno de decision_function o predict_proba.
- code_sizefloat
Porcentaje del número de clases que se utilizará para crear el libro de códigos. Un número entre 0 y 1 requerirá menos clasificadores que uno contra el resto (one-vs-the-rest). Un número mayor que 1 requerirá más clasificadores que uno contra el resto.
- random_stateentero, instancia de RandomState, default=None
El generador utilizado para inicializar el libro de códigos (code_book). Pasa un int para una salida reproducible a través de múltiples llamadas a la función. Ver Glosario.
- n_jobsint, default=None
El número de trabajos a utilizar para el cómputo: los problemas multiclase se calculan en paralelo.
None
significa 1 a menos que esté en un contextojoblib.parallel_backend
.-1
significa que se utilizan todos los procesadores. Consulta Glosario para más detalles.
- Atributos
- estimators_ : lista de
int(n_classes * code_size)
estimadoreslista de Estimadores usados para predicciones.
- classes_arreglo de numpy de forma [n_classes]
Arreglo que contiene etiquetas.
- code_book_arreglo de numpy de forma [n_classes, code_size]
Arreglo binario que contiene el código de cada clase.
- estimators_ : lista de
Referencias
- 1
«Solving multiclass learning problems via error-correcting output codes», Dietterich T., Bakiri G., Journal of Artificial Intelligence Research 2, 1995.
- 2
«The error coding method and PICTs», James G., Hastie T., Journal of Computational and Graphical statistics 7, 1998.
- 3
«The Elements of Statistical Learning», Hastie T., Tibshirani R., Friedman J., page 606 (second-edition) 2008.
Ejemplos
>>> from sklearn.multiclass import OutputCodeClassifier >>> from sklearn.ensemble import RandomForestClassifier >>> from sklearn.datasets import make_classification >>> X, y = make_classification(n_samples=100, n_features=4, ... n_informative=2, n_redundant=0, ... random_state=0, shuffle=False) >>> clf = OutputCodeClassifier( ... estimator=RandomForestClassifier(random_state=0), ... random_state=0).fit(X, y) >>> clf.predict([[0, 0, 0, 0]]) array([1])
Métodos
Ajustar estimadores subyacentes.
Obtener los parámetros de este estimador.
Predecir objetivos multiclase utilizando estimadores subyacentes.
Devuelve la precisión media en los datos y etiquetas de prueba dados.
Establece los parámetros de este estimador.
- fit()¶
Ajustar estimadores subyacentes.
- Parámetros
- X(sparse) array-like de forma (n_samples, n_features)
Datos.
- yarreglo de numpy de forma [n_samples]
Objetivos multiclase.
- Devuelve
- self
- get_params()¶
Obtener los parámetros de 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.
- predict()¶
Predecir objetivos multiclase utilizando estimadores subyacentes.
- Parámetros
- X(sparse) array-like de forma (n_samples, n_features)
Datos.
- Devuelve
- yarreglo de numpy de forma [n_samples]
Objetivos multiclase predichos.
- score()¶
Devuelve la precisión media en los datos y etiquetas de prueba dados.
En la clasificación multietiqueta, se trata de la precisión del subconjunto, que es una métrica rigurosa, ya que se requiere para cada muestra que cada conjunto de etiquetas sea predicho correctamente.
- Parámetros
- Xarray-like de forma (n_samples_X, n_features)
Muestras de prueba.
- yarray-like de forma (n_samples,) o (n_samples, n_outputs)
Etiquetas True para
X
.- sample_weightarray-like de forma (n_samples,), default=None
Ponderaciones de la muestra.
- Devuelve
- scorefloat
Precisión media de
self.predict(X)
con respecto ay
.
- 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.