Integración de dependencias personalizadas en los flujos de trabajo de Amazon SageMaker Canvas
Las organizaciones que emplean Amazon SageMaker Canvas para implementar flujos de trabajo de aprendizaje automático se enfrentan frecuentemente a la […]

Las organizaciones que emplean Amazon SageMaker Canvas para implementar flujos de trabajo de aprendizaje automático se enfrentan frecuentemente a la necesidad de integrar dependencias externas para abordar casos de uso particulares. Aunque SageMaker Canvas proporciona capacidades de experimentación rápida sin necesidad de código o con bajo nivel de codificación, ciertos proyectos necesitan de bibliotecas especializadas que la plataforma no ofrece de forma predefinida. Un ejemplo reciente ilustra cómo se pueden integrar códigos que dependen de estas bibliotecas externas dentro de los flujos de trabajo de SageMaker Canvas.
Amazon SageMaker Canvas es una plataforma de aprendizaje automático de bajo código diseñada para guiar a sus usuarios a través de cada etapa del proceso de aprendizaje automático, desde la preparación inicial hasta el despliegue del modelo final. Esta herramienta permite a los usuarios explorar conjuntos de datos, transformarlos, construir modelos y generar predicciones sin la necesidad de escribir una sola línea de código.
SageMaker Canvas ofrece avanzadas capacidades de manipulación de datos, incluyendo más de 300 pasos de transformación prediseñados, ingeniería de características, normalización y limpieza de datos, además de un editor de código personalizado compatible con Python, PySpark y SparkSQL.
Un caso práctico destaca cómo se pueden integrar scripts personalizados y sus dependencias desde Amazon Simple Storage Service (Amazon S3) dentro de un flujo de SageMaker Data Wrangler. Esta integración posibilita la ejecución de scripts personalizados que requieren módulos no soportados inicialmente por SageMaker Canvas.
El proceso se estructura en tres pasos fundamentales: primero, se deben subir los scripts personalizados y sus dependencias a Amazon S3; segundo, se utiliza SageMaker Data Wrangler en SageMaker Canvas para transformar los datos empleando el código subido; y tercero, se entrena y se exporta el modelo.
A modo de ilustración, se manipularon dos conjuntos de datos complementarios que contenían información sobre envíos de pantallas de computadora. Al combinarlos, se logró un conjunto de datos completo que captura diversas métricas y resultados de entrega, con el objetivo de desarrollar un modelo predictivo que determine si los envíos futuros llegarán a tiempo basado en patrones históricos de envío.
Inicialmente, es necesario contar con acceso a Amazon S3 y a Amazon SageMaker AI. Luego, se debe acceder a la consola de Amazon SageMaker AI, abrir Canvas y crear un flujo de datos seleccionando conjuntos de datos específicos. Una vez cargados los datos y realizadas las transformaciones, es posible añadir cálculos personalizados empleando funciones que dependen de bibliotecas como mpmath.
Para utilizar funciones que dependan de módulos no soportados, se debe empaquetar el script junto con sus dependencias en un archivo .zip y subirlo a un bucket de Amazon S3. Luego, este archivo puede ser accedido desde SageMaker Canvas para ejecutar el script, integrando así la funcionalidad deseada dentro del flujo de trabajo.
Una vez culminado el flujo de datos y realizadas las transformaciones necesarias, los usuarios pueden entrenar un modelo predictivo seleccionando las características y objetivos adecuados. En los ejemplos presentados, el modelo alcanzó una precisión del 94.5% durante una construcción estándar, demostrando así la efectividad del proceso.
Una vez completado el modelo, este puede ser utilizado de varias maneras, incluyendo su implementación directa, adición al registro de modelos de SageMaker o exportación a un notebook de Jupyter. Para optimizar el uso de los recursos de SageMaker y controlar costos, se recomienda cerrar sesión tras finalizar o configurar el entorno para que se apague automáticamente cuando no esté en uso.
Este enfoque permite a los científicos de datos y analistas ampliar las capacidades de SageMaker Canvas más allá de las funciones por defecto, integrando herramientas personalizadas que pueden ser cruciales para el éxito de sus proyectos de aprendizaje automático.