sklearn.pipeline
.Pipeline¶
- class sklearn.pipeline.Pipeline¶
Pipeline de transformaciones con un estimador final.
Aplica secuencialmente una lista de transformaciones y un estimador final. Los pasos intermedios del pipeline deben ser “transforms”, es decir, deben implementar los métodos fit y transform. El estimador final sólo necesita implementar fit. Los transformadores en el pipeline pueden ser almacenados en caché usando el argumento
memory
.El propósito del pipeline es ensamblar varios pasos que puedan ser validados de forma cruzada juntos mientras se establecen diferentes parámetros. Para ello, permite establecer los parámetros de los distintos pasos utilizando sus nombres y el nombre del parámetro separado por un “__”, como en el ejemplo más abajo. El estimador de un paso puede ser sustituido por completo estableciendo el parámetro con su nombre a otro estimador, o un transformador eliminado estableciéndolo como “passthrough” o
None
.Leer más en el Manual de Usuario.
Nuevo en la versión 0.5.
- Parámetros
- stepslist
Lista de tuplas (nombre, transformación) (implementando fit/transform) que están encadenadas, en el orden en que se encadenan, siendo el último objeto un estimador.
- memorystr u object con la interfaz joblib.Memory, default=None
Se utiliza para almacenar en caché los transformadores ajustados del pipeline. Por defecto, no se realiza ningún almacenamiento en caché. Si se da una cadena, es la ruta del directorio de caché. La activación del almacenamiento en caché provoca un clon de los transformadores antes del ajuste. Por lo tanto, la instancia del transformador dada al pipeline no puede ser inspeccionada directamente. Utiliza el atributo
named_steps
osteps
para inspeccionar los estimadores dentro del pipeline. El almacenamiento en caché de los transformadores es ventajoso cuando el ajuste requiere mucho tiempo.- verbosebooleano, default=False
Si es True, el tiempo transcurrido durante el ajuste de cada paso se imprimirá a medida que se complete.
- Atributos
- named_stepsPuñado o Bunch
Objeto dictionary-like, con los siguientes atributos. Atributo de sólo lectura para acceder a cualquier parámetro del paso por el nombre dado por el usuario. Las claves son los nombres de los pasos y los valores son los parámetros de los pasos.
Ver también
make_pipeline
Función de conveniencia para la construcción simplificada de pipelines.
Ejemplos
>>> from sklearn.svm import SVC >>> from sklearn.preprocessing import StandardScaler >>> from sklearn.datasets import make_classification >>> from sklearn.model_selection import train_test_split >>> from sklearn.pipeline import Pipeline >>> X, y = make_classification(random_state=0) >>> X_train, X_test, y_train, y_test = train_test_split(X, y, ... random_state=0) >>> pipe = Pipeline([('scaler', StandardScaler()), ('svc', SVC())]) >>> # The pipeline can be used as any other estimator >>> # and avoids leaking the test set into the train set >>> pipe.fit(X_train, y_train) Pipeline(steps=[('scaler', StandardScaler()), ('svc', SVC())]) >>> pipe.score(X_test, y_test) 0.88
Métodos
Aplica transformaciones, y decision_function del estimador final
Ajusta el modelo
Aplica fit_predict del último paso en el pipeline después de las transformaciones.
Ajusta el modelo y transforma mediante el estimador final
Obtiene los parámetros para este estimador.
Aplica transformaciones a los datos y predice con el estimador final
Aplica transformaciones, y predict_log_proba del estimador final
Aplica transformaciones, y predict_proba del estimador final
Aplica transformaciones, y puntúa con el estimador final
Aplica transformaciones, y score_samples del estimador final.
Establece los parámetros de este estimador.
- decision_function()¶
Aplica transformaciones, y decision_function del estimador final
- Parámetros
- Xiterable
Datos para predecir. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- Devuelve
- y_scorearray-like de forma (n_samples, n_classes)
- fit()¶
Ajusta el modelo
Ajusta todas las transformaciones una tras otra y transforma los datos, luego ajusta los datos transformados utilizando el estimador final.
- Parámetros
- Xiterable
Datos para entrenar. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- yiterable, default=None
Objetivos para entrenar. Debe cumplir con los requisitos de etiqueta para todos los pasos del pipeline.
- **fit_paramsdict de string -> object
Parámetros pasados al método
fit
de cada paso, donde cada nombre de parámetro tiene un prefijo tal que el parámetrop
para el pasos
tiene la claves__p
.
- Devuelve
- selfPipeline
Este estimador
- fit_predict()¶
Aplica fit_predict del último paso en el pipeline después de las transformaciones.
Aplica fit_transforms de un pipeline a los datos, seguido del método fit_predict del estimador final en el pipeline. Sólo es válido si el estimador final implementa fit_predict.
- Parámetros
- Xiterable
Datos para entrenar. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- yiterable, default=None
Objetivos para entrenar. Debe cumplir con los requisitos de etiqueta para todos los pasos del pipeline.
- **fit_paramsdict de string -> object
Parámetros pasados al método
fit
de cada paso, donde cada nombre de parámetro tiene un prefijo tal que el parámetrop
para el pasos
tiene la claves__p
.
- Devuelve
- y_predarray-like
- fit_transform()¶
Ajusta el modelo y transforma mediante el estimador final
Ajusta todas las transformaciones una tras otra y transforma los datos, luego utiliza fit_transform en los datos transformados con el estimador final.
- Parámetros
- Xiterable
Datos para entrenar. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- yiterable, default=None
Objetivos para entrenar. Debe cumplir con los requisitos de etiqueta para todos los pasos del pipeline.
- **fit_paramsdict de string -> object
Parámetros pasados al método
fit
de cada paso, donde cada nombre de parámetro tiene un prefijo tal que el parámetrop
para el pasos
tiene la claves__p
.
- Devuelve
- Xtarray-like de forma (n_samples, n_transformed_features)
Muestras transformadas
- get_params()¶
Obtiene los parámetros para este estimador.
Devuelve los parámetros dados en el constructor, así como los estimadores contenidos en los
steps
delPipeline
.- Parámetros
- deepbooleano, default=True
Si es True, devolverá los parámetros para este estimador y los subobjetos contenidos que son estimadores.
- Devuelve
- paramsmapeo de string a cualquiera
Nombres de parámetros mapeados a sus valores.
- property inverse_transform¶
Aplica transformaciones inversas en orden reverso
Todos los estimadores en el pipeline deben soportar
inverse_transform
.- Parámetros
- Xtarray-like de forma (n_samples, n_transformed_features)
Muestras de datos, donde
n_samples
es el número de muestras yn_features
es el número de características. Debe cumplir con los requisitos de entrada del último paso del métodoinverse_transform
del pipeline.
- Devuelve
- Xtarray-like de forma (n_samples, n_features)
- predict()¶
Aplica transformaciones a los datos y predice con el estimador final
- Parámetros
- Xiterable
Datos para predecir. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- **predict_paramsdict de string -> object
Parámetros para el
predict
llamado al final de todas las transformaciones en el pipeline. Ten en cuenta que aunque esto puede ser utilizado para devolver las incertidumbres de algunos modelos con return_std o return_cov, las incertidumbres que son generadas por las transformaciones en el pipeline no se propagan al estimador final.Nuevo en la versión 0.20.
- Devuelve
- y_predarray-like
- predict_log_proba()¶
Aplica transformaciones, y predict_log_proba del estimador final
- Parámetros
- Xiterable
Datos para predecir. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- Devuelve
- y_scorearray-like de forma (n_samples, n_classes)
- predict_proba()¶
Aplica transformaciones, y predict_proba del estimador final
- Parámetros
- Xiterable
Datos para predecir. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- Devuelve
- y_probaarray-like de forma (n_samples, n_classes)
- score()¶
Aplica transformaciones, y puntúa con el estimador final
- Parámetros
- Xiterable
Datos para predecir. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- yiterable, default=None
Objetivos utilizados para la puntuación. Deben cumplir con los requisitos de etiquetas para todos los pasos del pipeline.
- sample_weightarray-like, default=None
Si no es None, este argumento se pasa como argumento de palabra clave
sample_weight
al métodoscore
del estimador final.
- Devuelve
- scorefloat
- score_samples()¶
Aplica transformaciones, y score_samples del estimador final.
- Parámetros
- Xiterable
Datos para predecir. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- Devuelve
- y_scorendarray de forma (n_samples,)
- set_params()¶
Establece los parámetros de este estimador.
Las claves de parámetros válidos se pueden listar con
get_params()
. Ten en cuenta que puedes establecer directamente los parámetros de los estimadores contenidos ensteps
.- Devuelve
- self
- property transform¶
Aplica transformaciones, y transforma mediante el estimador final
Esto también funciona cuando el estimador final es
None
: se aplican todas las transformaciones previas.- Parámetros
- Xiterable
Datos para transformar. Debe cumplir con los requisitos de entrada del primer paso del pipeline.
- Devuelve
- Xtarray-like de forma (n_samples, n_transformed_features)