Acelera Tu Ciclo de Vida de ML Usando el Nuevo y Mejorado Amazon SageMaker Python SDK – Parte 1: ModelTrainer

0
130
Accelerate your ML lifecycle using the new and improved Amazon SageMaker Python SDK – Part 1: ModelTrainer

Amazon SageMaker ha sido renovado con un nuevo SDK de Python que promete mejorar la interacción con sus servicios mediante una interfaz unificada y orientada a objetos. Este cambio introduce un enfoque escalonado de la experiencia del usuario, ofreciendo a los ingenieros de aprendizaje automático acceso completo a las características y configuraciones de SageMaker a través del nuevo SDK de bajo nivel, SageMaker Core. Al mismo tiempo, proporciona una capa de abstracción superior para científicos de datos con experiencia limitada en AWS, simplificando el uso al ocultar complejidades de infraestructura.

El rediseño está dividido en dos partes: la primera se enfoca en la nueva clase ModelTrainer, que optimiza el proceso de entrenamiento de modelos. Esta nueva clase mejora significativamente la experiencia del usuario en comparación con la clase Estimator usada previamente, al consolidar configuraciones en unos pocos parámetros esenciales, reduciendo la sobrecarga cognitiva y permitiendo a los usuarios concentrarse en el entrenamiento del modelo.

Entre los beneficios del nuevo enfoque destacan su facilidad de uso y la transición fluida del desarrollo local al entrenamiento en la nube. Además, ModelTrainer apoya estrategias de entrenamiento distribuido más flexibles al permitir comandos personalizados en contenedores a través del parámetro command en SourceCode. Este sistema desacopla las estrategias de entrenamiento distribuido de las herramientas de entrenamiento y estimadores específicos de cada marco, introduciendo mejoras en la gestión de hiperparámetros pasando estos como una única variable de entorno.

ModelTrainer facilita el inicio de trabajos de entrenamiento ofreciendo pre-configuraciones, como la URI de la imagen de entrenamiento, y la detección automática de sesiones de SageMaker y roles IAM. Además, se admiten trabajos de entrenamiento locales para experimentación ligera, simplemente ajustando un parámetro de modo de entrenamiento.

Para emplear estos beneficios en la práctica, el usuario puede iniciar trabajos de entrenamiento con soluciones personalizadas, usar objetos de configuración para crear múltiples trabajos de entrenamiento y modificar parámetros de hiperparámetros sin redefine todos los ajustes. Asimismo, ModelTrainer permite lanzar trabajos de entrenamiento distribuido con facilidad, apoyando estrategias como torchrun y MPI, cruciales para tareas complejas en aprendizaje profundo.

El uso de ModelTrainer está diseñado para mejorar notablemente la experiencia del desarrollador al simplificar configuraciones y soportar configuraciones complejas como usar contenedores propios y entrenamientos distribuidos. Se invita a los usuarios a explorar estas capacidades utilizando la documentación del SDK y ejemplos de cuadernos disponibles en GitHub.

La serie de artículos continuará en una segunda parte, donde se abordará la construcción y el despliegue de modelos mediante la clase mejorada ModelBuilder. Según Shweta Singh, Gerente de Producto Sénior en el equipo de SageMaker en AWS, la nueva versión del SDK de Python para SageMaker está diseñada no solo para mejorar la eficiencia de los procesos de AI/ML, sino también para simplificar la experiencia de los usuarios con características avanzadas sin costos adicionales.

vía: AWS machine learning blog