Edamame
- Edamame
- Funcionalidades
- Módulo EDA
- Módulo de regresor
- Módulo clasificador
- Diádico
Edamame se inspira en paquetes como Pandas-Profiling, Pycaret y Yellowbrick. El objetivo de Edamame es proporcionar funciones amigables con el usuario para realizar análisis de datos exploratorios (EDA) en conjuntos de datos, así como para capacitar y analizar baterías de modelos para problemas de regresión o clasificación.
Para instalar el paquete,
El paquete Edamame funciona correctamente dentro de un Jupyter-Notebook. Puede encontrar la documentación del paquete en la página Edamame-Documation.
Funcionalidades
El paquete consta de tres módulos: EDA, que realiza un análisis de datos exploratorios; y regresor y clasificador, que manejan la capacitación de modelos de aprendizaje automático para la regresión y la clasificación, respectivamente. Para ver ejemplos de los usos del paquete Edamame, puede consultar la carpeta de ejemplos en el repositorio.
Módulo EDA
import edamame . eda as eda
El módulo EDA proporciona una amplia gama de funciones para realizar el análisis de datos exploratorios (EDA) en los conjuntos de datos. Con este módulo, puede explorar y manipular fácilmente sus datos, realizar estadísticas descriptivas, análisis de correlación y preparar sus datos para el aprendizaje automático. El módulo "EDA" ofrece las siguientes funcionalidades:
Funciones de exploración y manipulación de datos:
- Dimensiones : la función muestra el número de filas y columnas de un marco de datos PANDAS aprobado.
- Idention_types : identifique los tipos de datos de cada columna.
- Ver_Cardinity : Vea el número de valores únicos en cada columna categórica.
- Modify_Cardinity : Modifique el número de valores únicos en una columna.
- Falta : verifique si hay datos faltantes presentes en el conjunto de datos.
- Handling_missing : reemplace o elimine los valores faltantes en el conjunto de datos.
- Drop_Columns : eliminar columnas específicas del conjunto de datos.
- num_to_categorical : la función devuelve un marco de datos con las columnas transformadas en un "objeto".
- Interacción : la función muestra una gráfica interactiva para analizar las relaciones entre columnas numéricas con un diagrama de dispersión.
- Inspección : la función muestra una gráfica interactiva para analizar la distribución de una variable basada en las cardinalidades distintas de la variable objetivo.
- split_and_scaling : la función devuelve dos marcos de datos PANDAS: la matriz de regresor X contiene todos los predictores para el modelo, la serie Y contiene los valores de la variable de respuesta.
Funciones de estadísticas descriptivas:
- Describe_Distribution : la función muestra el resultado del método DRUCT () aplicado a un marco de datos PANDAS, dividido por columnas numéricas y de objetos.
- Plot_categorical : la función devuelve una secuencia de tablas y gráficos para las variables categóricas.
- Plot_numerical : la función devuelve una secuencia de tablas y gráficos para las variables numéricas.
- num_variable_study : HE FUNTY Muestra las siguientes transformaciones de la variable Col Passing: LOG (X), SQRT (X), X^2, Box-Cox, 1/X.
Funciones de análisis de correlación:
- Correlation_Pearson : la función realiza la correlación de Pearson entre los pares de columnas.
- Correlation_Categorical : la función realiza la prueba de independencia de chi-cuadrado entre variables categóricas del conjunto de datos.
- Correlation_phik : Calcule el coeficiente de correlación Phik entre todos los pares de columnas (enlace de papel).
Funciones útiles:
- Load_model : la función Cargue el modelo guardado en el formato Pickle.
- Configuración : la función Devuelve los siguientes elementos: x_train, y_train, x_test, y_test.
- Escala : la función devuelve la matriz normalizada/estandarizada.
- OHE : La función devuelve la matriz Numpy pasada como entrada, convertida utilizando una codificación única.
Módulo de regresor
from edamame . regressor import TrainRegressor , regression_metrics
La clase de TrainReghersor está diseñada para ser utilizada como una tubería para los modelos de regresión de entrenamiento y manejo.
La clase proporciona varios métodos para ajustar diferentes modelos de regresión, calcular métricas del modelo, modelos de ahorro y carga, y usar AUTOML para seleccionar el mejor modelo basado en las métricas de rendimiento. Estos métodos incluyen:
- Lineal : se adapta a un modelo de regresión lineal a los datos de entrenamiento.
- LASSO : se adapta a un modelo de regresión de lazo a los datos de entrenamiento.
- Ridge : se adapta a un modelo de regresión de cresta a los datos de capacitación.
- Árbol : se ajusta a un modelo de regresión del árbol de decisión a los datos de capacitación.
- Random_forest : se adapta a un modelo de regresión forestal aleatoria a los datos de entrenamiento.
- XGBOOST : se ajusta a un modelo de regresión XGBOost a los datos de entrenamiento.
- Auto_ML : usa AUTOML para seleccionar el mejor modelo basado en las métricas de rendimiento.
- Model_metrics : calcula e imprime las métricas de rendimiento para cada modelo capacitado.
- save_model : guarda el modelo entrenado en un archivo.
Después de guardar un modelo con el método save_model , podemos cargar el modelo utilizando la función load_model del módulo EDA y evaluar su rendimiento en nuevos datos utilizando la función regresion_metrics .
from edamame . regressor import RegressorDiagnose
La clase Regressordiagnose está diseñada para diagnosticar modelos de regresión y analizar su rendimiento. La clase proporciona varios métodos para diagnosticar y analizar el rendimiento de los modelos de regresión. Estos métodos incluyen:
- Coeficientes : calcula e imprime los coeficientes del modelo de regresión.
- Random_forest_fi : muestra la gráfica de importancia de la característica para el modelo de regresión del bosque aleatorio.
- Random_forest_fi : muestra el gráfico de importancia de la función para el modelo de regresión XGBOOST.
- Predicción_error : calcula e imprime el error de predicción del modelo de regresión en los datos de prueba.
- residual_plot : crea y muestra una gráfica residual para el modelo de regresión.
- QQPLOT : Crea y muestra una gráfica QQ para el modelo de regresión.
Ejemplo:
from sklearn . datasets import make_regression
from edamame . regressor import TrainRegressor
import pandas as pd
import edamame . eda as eda
from edamame . regressor import RegressorDiagnose
X , y = make_regression ( n_samples = 1000 , n_features = 5 , n_targets = 1 , random_state = 42 )
X = pd . DataFrame ( X , columns = [ "f1" , "f2" , "f3" , "f4" , "f5" ])
y = pd . DataFrame ( y , columns = [ "y" ])
X_train , y_train , X_test , y_test = eda . setup ( X , y )
X_train_s = eda . scaling ( X_train )
X_test_s = eda . scaling ( X_test )
regressor = TrainRegressor ( X_train_s , y_train , X_test_s , y_test )
rf = regressor . random_forest ()
regressor . model_metrics ()
diagnose = RegressorDiagnose ( X_train_s , y_train , X_test_s , y_test )
diagnose . random_forest_fi ( model = rf )
diagnose . prediction_error ( model = rf )
Módulo clasificador
from edamame . classifier import TrainClassifier
La clase TrainClassifier está diseñada para usarse como una tubería para entrenamiento y manejo de modelos de clasificación.
La clase proporciona varios métodos para ajustar diferentes modelos de regresión, calcular métricas del modelo, modelos de ahorro y carga, y usar AUTOML para seleccionar el mejor modelo basado en las métricas de rendimiento. Estos métodos incluyen:
- Logística : se ajusta a un modelo logístico a los datos de entrenamiento.
- Gaussian_NB : se adapta a un modelo de Gaussina Naive Bayes a los datos de entrenamiento.
- KNN : se ajusta a un modelo de clasificación de vecinos K-Nears más a los datos de capacitación.
- Árbol : se ajusta a un modelo de clasificación de árbol de decisión a los datos de capacitación.
- Random_forest : se adapta a un modelo de clasificación forestal aleatorio a los datos de entrenamiento.
- XGBOOST : se adapta a un modelo de clasificación XGBOost a los datos de entrenamiento.
- SVM : se adapta a un modelo de clasificación de vectores de soporte a los datos de capacitación.
- Auto_ML : usa AUTOML para seleccionar el mejor modelo basado en las métricas de rendimiento.
- Model_metrics : calcula e imprime las métricas de rendimiento para cada modelo capacitado.
- save_model : guarda el modelo entrenado en un archivo.
Después de guardar un modelo con el método save_model , podemos cargar el modelo utilizando la función load_model del módulo EDA y evaluar su rendimiento en nuevos datos utilizando la función clasificadora_metrics .
from edamame . classifier import classifier_metrics
Ejemplo:
from edamame . classifier import TrainClassifier
from sklearn import datasets
import edamame . eda as eda
iris = datasets . load_iris ()
X = iris . data
X = pd . DataFrame ( X , columns = iris . feature_names )
y = iris . target
y = pd . DataFrame ( y , columns = [ 'y' ])
X_train , y_train , X_test , y_test = eda . setup ( X , y )
X_train_s = eda . scaling ( X_train )
X_test_s = eda . scaling ( X_test )
classifier = TrainClassifier ( X_train_s , y_train , X_test_s , y_test )
models = classifier . auto_ml ()
svm = classifier . svm ()
classifier . model_metrics ( model_name = "svm" )
classifier . save_model ( model_name = "svm" )
svm_upload = eda . load_model ( path = "svm.pkl" )
classifier_metrics ( svm_upload , X_train_s , y_train )
Diádico
- Agregue el cuaderno para EDA en un problema de clasificación al repositorio de Notebook Edamame.
- Agregue el cuaderno para capacitar/diagnosticar modelos de clasificación al repositorio de Notebook Edamame.
- Agregue el método Rocauc a la clase Classifierdiagnose.
- Actualizar cuadernos de ejemplo.