- Notas relacionadas
- Requisitos
- Instalación
- Primeros pasos
- Proyectos
- Conjuntos de datos
- Paquetes ML
- Procesos
- Habilidades ML
- Logs de ML
- Document Understanding en AI Fabric
- Guía básica de resolución de problemas
AI Center
Clasificación TPOT AutoML
Paquetes del SO > Datos tabulares > TPOTAutoMLClassification
Este modelo es un modelo de clasificación genérico de datos tabulares (solo valores numéricos) que debe reentrenarse antes de utilizarse para las predicciones. Depende de TPOT para encontrar automáticamente el mejor modelo.
TPOT es una herramienta de aprendizaje automático automatizado de Python que optimiza los procesos de aprendizaje automático utilizando programación genética. TPOT automatiza la parte más tediosa del aprendizaje automático explorando de forma inteligente miles de procesos posibles para encontrar el mejor para tus datos. Una vez que TPOT haya terminado de buscar (o te canses de esperar), te proporciona el código Python para el mejor proceso encontrado para que puedas retocar el proceso a partir de ahí. TPOT está desarrollado sobre scikit-learn, por lo que todo el código que genera debe ser familiar para los usuarios de scikit-learn.
Características que utiliza el modelo para hacer predicciones. Por ejemplo: { “Feature1”: 12, “Feature2”: 222, ..., “FeatureN”: 110}
JSON con la clase predecida, la confianza asociada a esa predicción de clase (entre 0-1) y el nombre de la etiqueta. Los nombres de etiqueta solo se muestran si la codificación de la etiqueta fue realizada por el proceso, en AI Fabric. Algunos modelos de scikit-learn no admiten puntuaciones de confianza. Si el output del proceso de optimización es un modelo de scikit-learn que no admite puntuaciones de confianza, el output solo contendrá la clase predecida.
Ejemplo:
{
"predictions": 0,
"confidences": 0.6,
"labels": "yes"
}
{
"predictions": 0,
"confidences": 0.6,
"labels": "yes"
}
O, si se ha realizado la codificación de etiquetas fuera del modelo:
{
"predictions": 0,
"confidences": 0.6
}
{
"predictions": 0,
"confidences": 0.6
}
Procesos
Este paquete es compatible con los tres tipos de procesos (entrenamiento completo, entrenamiento y evaluación).
Mientras entrenas el modelo por primera vez, se inferirán clases viendo todo el conjunto de datos proporcionado.
Este paquete ML buscará archivos .csv en tu conjunto de datos (no en los subdirectorios).
Los archivos .csv deben seguir estas dos reglas:
- La primera fila de los datos debe contener los nombres de encabezado/columna.
- Todas las columnas, excepto la de target_column, deben ser numéricas (int, float). El modelo no es capaz de realizar la codificación de características; sin embargo, puede realizar la codificación del target. Si el modelo lleva a cabo la codificación del target, en el momento de la predicción, el modelo también devuelve la etiqueta de la variable de destino.
- max_time_mins: tiempo de ejecución del proceso (en minutos). Cuanto mayor sea el tiempo de entrenamiento, mayores serán las posibilidades de que TPOT encuentre un buen modelo. (valor predeterminado: 2).
- target_column: nombre de la columna de destino (valor predeterminado: "target").
- scoring: TPOT hace uso de sklearn.model_selection.cross_val_score para la evaluación de procesos, y como tal ofrece el mismo support para las funciones de puntuación (valor predeterminado: "accuracy"). Utiliza los indicadores de puntuación estándar de scikit-learn (https://scikit-learn.org/stable/modules/model_evaluation.html)
- keep_training: las ejecuciones de TPOT típicas tardarán de horas a días en terminar (a menos que se trate de un conjunto de datos pequeño), pero siempre puedes interrumpir la ejecución en medio y ver los mejores resultados hasta el momento. Si keep_training está establecido en True, TPOT continuará el entrenamiento en el punto en el que se quedó.
TPOT exporta el código Python correspondiente para el proceso optimizado a un archivo python llamado "TPOT_pipeline.py". Una vez que el código haya terminado de ejecutarse, "TPOT_pipeline.py." contendrá el código Python para el proceso optimizado.
Papel
El modelo se basa en dos publicaciones:
- "Scaling tree-based automated machine learning to biomedical big data with a feature set selector." de Trang T. Le, Weixuan Fu y Jason H. Moore (2020)
- "Evaluation of a Tree-based Pipeline Optimization Tool for Automating Data Science." de Randal S. Olson, Nathan Bartley, Ryan J. Urbanowicz, y Jason H. Moore