La ejecución de experimentos de aprendizaje automático (ML) en la nube puede abarcar muchos servicios y componentes. La capacidad de estructurar, automatizar y rastrear experimentos de ML es esencial para permitir el desarrollo rápido de modelos de ML. Con los últimos avances en el campo del aprendizaje automático automatizado (AutoML), es decir, el área de ML dedicada a la automatización de procesos de ML, puede crear modelos de toma de decisiones precisos sin necesidad de un conocimiento profundo de ML. En esta publicación, vemos AutoGluon, un marco AutoML de código abierto que le permite crear modelos ML precisos con solo unas pocas líneas de Python.
AWS ofrece una amplia gama de servicios para administrar y ejecutar flujos de trabajo de ML, lo que le permite seleccionar una solución en función de sus habilidades y aplicación. Por ejemplo, si ya usa Funciones de paso de AWS para orquestar los componentes de las aplicaciones distribuidas, puede usar el mismo servicio para crear y automatizar sus flujos de trabajo de ML. Otras herramientas de MLOps que ofrece AWS incluyen Canalizaciones de Amazon SageMaker, que le permite crear modelos ML en Estudio Amazon SageMaker con capacidades MLOps (como compatibilidad CI/CD, monitoreo de modelos y aprobaciones de modelos). Herramientas de código abierto, como Flujo de aire Apache—disponible en AWS a través de Flujos de trabajo administrados por Amazon para Apache Airflow-y Flujo de Kube, así como soluciones híbridas, también son compatibles. Por ejemplo, puede administrar la ingesta y el procesamiento de datos con Step Functions mientras entrena e implementa sus modelos ML con SageMaker Pipelines.
En esta publicación, mostramos cómo incluso los desarrolladores sin experiencia en ML pueden crear y mantener fácilmente modelos de ML de última generación utilizando AutoGluon en Amazon SageMaker y Step Functions para organizar los componentes del flujo de trabajo.
Después de una descripción general del algoritmo AutoGluon, presentamos las definiciones de flujo de trabajo junto con ejemplos y una tutorial de código que puede aplicar a sus propios datos.
AutoGluón
AutoGluon es un marco AutoML de código abierto que acelera la adopción de ML al entrenar modelos ML precisos con solo unas pocas líneas de código Python. Aunque esta publicación se enfoca en datos tabulares, AutoGluon también le permite entrenar modelos de última generación para clasificación de imágenes, detección de objetos y clasificación de texto. AutoGluon tabular crea y combina diferentes modelos para encontrar la solución óptima.
El equipo de AutoGluon en AWS lanzó un que presenta los principios que estructuran la biblioteca:
- Sencillez – Puede crear modelos de clasificación y regresión directamente a partir de datos sin procesar sin tener que analizar los datos o realizar ingeniería de características
- Robustez – El proceso general de capacitación debe tener éxito incluso si fallan algunos de los modelos individuales.
- Tiempo predecible – Puede obtener resultados óptimos dentro del tiempo que desea invertir para el entrenamiento
- Tolerancia a fallos – Puede detener el entrenamiento y reanudarlo en cualquier momento, lo que optimiza los costos si el proceso se ejecuta en imágenes puntuales en la nube
Para obtener más detalles sobre el algoritmo, consulte el publicado por el equipo de AutoGluon en AWS.
Después de instalar Paquete AutoGluon y sus dependencias, entrenar un modelo es tan fácil como escribir tres líneas de código:
El equipo de AutoGluon demostró la fortaleza del marco al llegar a la tabla de clasificación de los 10 primeros en múltiples competencias de Kaggle.
Resumen de la solución
Usamos Step Functions para implementar un flujo de trabajo de ML que cubre capacitación, evaluación e implementación. El diseño de canalización permite experimentos rápidos y configurables mediante la modificación de los parámetros de entrada que introduce en la canalización en tiempo de ejecución.
Puede configurar la canalización para implementar diferentes flujos de trabajo, como los siguientes:
- Entrene un nuevo modelo de ML y guárdelo en el registro del modelo de SageMaker, si no se necesita una implementación en este momento.
- Implemente un modelo de aprendizaje automático preentrenado, ya sea en línea (Punto final de SageMaker) o sin conexión (Transformación por lotes de SageMaker) inferencia
- Ejecute una canalización completa para entrenar, evaluar e implementar un modelo de ML desde cero
Las soluciones consisten en un general máquina estatal (consulte el siguiente diagrama) que orquesta el conjunto de acciones que se ejecutarán en función de un conjunto de parámetros de entrada.
Los pasos de la máquina de estado son los siguientes:
- El primer paso
IsTraining
decide si estamos usando un modelo previamente entrenado o entrenando un modelo desde cero. Si usa un modelo previamente entrenado, la máquina de estado salta al Paso 7. - Cuando se requiere un nuevo modelo de ML,
TrainSteps
activa una segunda máquina de estado que realiza todas las acciones necesarias y devuelve el resultado a la máquina de estado actual. Entramos en más detalles de la máquina de estado de entrenamiento en la siguiente sección. - Cuando termine el entrenamiento,
PassModelName
almacena el nombre del trabajo de entrenamiento en una ubicación específica del contexto de la máquina de estado para ser reutilizado en los siguientes estados. - Si se selecciona una fase de evaluación,
IsEvaluation
redirige la máquina de estado hacia la rama de evaluación. De lo contrario, salta al Paso 7. - A continuación, se implementa la fase de evaluación utilizando un AWS Lambda función invocada por el
ModelValidation
paso. La función Lambda recupera el rendimiento del modelo en un conjunto de prueba y lo compara con un umbral configurable por el usuario especificado en los parámetros de entrada. El siguiente código es un ejemplo de los resultados de la evaluación: - Si la evaluación del modelo en
EvaluationResults
tiene éxito, la máquina de estado continúa con los pasos de implementación eventuales. Si el modelo está funcionando por debajo de los criterios definidos por el usuario, la máquina de estado se detiene y se omite la implementación. - Si se selecciona la implementación,
IsDeploy
inicia una tercera máquina de estado a través deDeploySteps
, que describimos más adelante en este post. Si no se necesita implementación, la máquina de estado se detiene aquí.
Un conjunto de muestras de parámetros de entrada está disponible en el Repositorio GitHub.
Máquina de estado de entrenamiento
La máquina de estado para entrenar un nuevo modelo de ML mediante AutoGluon se compone de dos pasos, como se ilustra en el siguiente diagrama. El primer paso es un trabajo de entrenamiento de SageMaker que crea el modelo. El segundo guarda las entradas en el registro del modelo de SageMaker.
Puede ejecutar estos pasos automáticamente como parte de la máquina de estado principal o como un proceso independiente.
Máquina de estado de implementación
Veamos ahora la máquina de estado dedicada a la fase de implementación (ver el siguiente diagrama). Como se mencionó anteriormente, la arquitectura admite la implementación tanto en línea como fuera de línea. El primero consiste en implementar un punto final de SageMaker, mientras que el segundo ejecuta un trabajo de transformación por lotes de SageMaker.
Los pasos de implementación son los siguientes:
ChoiceDeploymentMode
analiza los parámetros de entrada para definir qué modo de implementación se necesita y dirige la máquina de estado hacia la rama correspondiente.- Si se elige un punto final, el
EndpointConfig
step define su configuración, mientras queCreateEndpoint
inicia el proceso de asignación de los recursos informáticos necesarios. Esta asignación puede tardar varios minutos, por lo que la máquina de estado se detiene enWaitForEndpoint
y usa una función Lambda para sondear el estado del punto final. - Mientras se configura el punto final,
ChoiceEndpointStatus
vuelve a laWaitForEndpoint
estado, de lo contrario continúa a cualquieraDeploymentFailed
orDeploymentSucceeded
. - Si se selecciona la implementación fuera de línea, la máquina de estado ejecuta un trabajo de transformación por lotes de SageMaker, después de lo cual la máquina de estado se detiene.
Conclusión
Esta publicación presenta una canalización fácil de usar para organizar los flujos de trabajo de AutoML y permitir experimentos rápidos en la nube, lo que permite soluciones de ML precisas sin necesidad de conocimientos avanzados de ML.
Proporcionamos una canalización general, así como dos modulares que le permiten realizar la capacitación y la implementación por separado si es necesario. Además, la solución está completamente integrada con SageMaker, beneficiándose de sus características y recursos computacionales.
Comience ahora con esto tutorial de código para implementar los recursos presentados en esta publicación en su cuenta de AWS y ejecutar sus primeros experimentos de AutoML.
Acerca de los autores
federico piccinini es un arquitecto de aprendizaje profundo para el laboratorio de soluciones de aprendizaje automático de Amazon. Le apasiona el aprendizaje automático, la IA explicable y MLOps. Se enfoca en diseñar canalizaciones de ML para clientes de AWS. Fuera del trabajo, disfruta de los deportes y la pizza.
Pablo Irrera es científico de datos en el laboratorio de soluciones de aprendizaje automático de Amazon, donde ayuda a los clientes a abordar problemas comerciales con capacidades de nube y aprendizaje automático. Tiene un doctorado en Visión por Computador de Telecom ParisTech, París.
- Coinsmart. El mejor intercambio de Bitcoin y criptografía de Europa.
- Platoblockchain. Inteligencia del Metaverso Web3. Conocimiento amplificado. ACCESO LIBRE.
- CriptoHawk. Radar de altcoins. Prueba gratis.
- Fuente: https://aws.amazon.com/blogs/machine-learning/manage-automl-workflows-with-aws-step-functions-and-autogluon-on-amazon-sagemaker/
- "
- 10
- 100
- 7
- a
- capacidad
- Sobre
- Mi Cuenta
- preciso
- a través de
- acciones
- dirección
- Adopción
- avanzado
- avances
- AI
- algoritmo
- Todos
- asignación
- Permitir
- permite
- ya haya utilizado
- Aunque
- Amazon
- analizar
- Aplicación
- aplicaciones
- Aplicá
- arquitectura
- Reservada
- automatizado
- Confirmación de Viaje
- automáticamente
- Automatización
- Hoy Disponibles
- AWS
- "Ser"
- a continuación
- build
- Puede conseguir
- capacidades
- elegido
- clasificación
- Soluciones
- código
- compatibilidad
- Competiciones
- completar
- componentes
- computadora
- informática
- Configuración
- continúa
- Correspondiente
- Precio
- Para crear
- crea
- criterios
- Current
- Estado actual
- Clientes
- datos
- científico de datos
- a dedicados
- profundo
- desplegar
- Desplegando
- despliegue
- describir
- Diseño
- diseño
- detalle
- detalles
- Detección
- desarrolladores
- Desarrollo
- una experiencia diferente
- directamente
- distribuidos
- pasan fácilmente
- fácil de usar
- habilitar
- permite
- Punto final
- esencial
- evaluar
- evaluación
- ejemplo
- ejemplos
- Experiencia
- RÁPIDO
- Feature
- Caracteristicas
- Nombre
- se centra
- siguiendo
- siguiente
- Marco conceptual
- en
- función
- funciones
- General
- es
- ayuda
- esta página
- mantiene
- Cómo
- HTTPS
- Híbrido
- imagen
- imágenes
- implementar
- implementación
- implementado
- incluir
- INSTRUMENTO individual
- Las opciones de entrada
- instalar
- COMPLETAMENTE
- IT
- Trabajos
- especialistas
- el lab
- más reciente
- aprendizaje
- Biblioteca
- líneas
- Ubicación
- Mira
- máquina
- máquina de aprendizaje
- mantener
- gestionan
- gestionado
- mencionado
- ML
- modelo
- modelos
- modulares
- monitoreo
- más,
- múltiples
- a saber
- necesario
- necesidad
- Next
- Ofrecido
- Ofertas
- digital fuera de línea.
- en línea
- Otro
- de otra manera
- total
- EL DESARROLLADOR
- París
- parte
- apasionado
- actuaciones
- realizar
- fase
- Pizza
- encuesta
- presente
- regalos
- problemas
- en costes
- tratamiento
- proporcionar
- distancia
- Crudo
- liberado
- Requisitos
- Recursos
- Resultados
- currículum
- devoluciones
- Ejecutar
- mismo
- Científico
- seleccionado
- de coches
- Servicios
- set
- Varios
- Mostrar
- habilidades
- So
- a medida
- Soluciones
- algo
- Deportes
- Spot
- independiente
- fundó
- comienza
- Estado
- el estado de la técnica
- Zonas
- Estado
- tienda
- tiendas
- fuerza
- exitosos
- Soportado
- soportes
- equipo
- telecom
- test
- El
- Tres
- umbral
- A través de esta formación, el personal docente y administrativo de escuelas y universidades estará preparado para manejar los recursos disponibles que derivan de la diversidad cultural de sus estudiantes. Además, un mejor y mayor entendimiento sobre estas diferencias y similitudes culturales permitirá alcanzar los objetivos de inclusión previstos.
- equipo
- parte superior
- hacia
- seguir
- Entrenar
- Formación
- Transformar
- utilizan el
- visión
- sean
- mientras
- dentro de
- sin
- Actividades:
- flujos de trabajo
- la escritura
- tú