Implemente con Amazon SageMaker
Amazon SageMaker facilita la generación de predicciones, ya que proporciona todo lo que se necesita para implementar los modelos de aprendizaje automático en la etapa de producción y para monitorear la calidad de los modelos.
Características
Monitoreo de modelos
Por lo general, los modelos de aprendizaje automático se entrenan y evalúan con datos históricos, pero la calidad disminuye luego de su implementación en la producción. Esto se debe a que la distribución de los datos que se envían a los modelos para las predicciones puede diferir de la distribución de los datos utilizados para el entrenamiento. La validez de los resultados de las predicciones puede cambiar con el tiempo, y los errores se pueden introducir de manera ascendente, lo que puede afectar la calidad del modelo. Para evitar esto, es necesario monitorear la calidad de los modelos en producción, identificar los problemas rápidamente y tomar acciones correctivas, como auditar los modelos o volver a entrenarlos. Para lograr esto, debe crear herramientas para almacenar los datos relacionados con las predicciones de manera segura y, a continuación, debe implementar diferentes técnicas estadísticas a fin de analizar estos datos y evaluar la calidad del modelo. Finalmente, tiene que identificar las desviaciones en la calidad del modelo para tomar las acciones correctivas adecuadas. Como una alternativa a la creación de herramientas adicionales, se puede volver a entrenar los modelos con regularidad, aunque tal vez resulte costoso.
El monitor de modelos de Amazon SageMaker elimina la necesidad de crear herramientas para monitorear los modelos en producción y detectar cuándo se deben implementar acciones correctivas. Esta herramienta monitorea continuamente la calidad de los modelos de aprendizaje automático en la etapa de producción y le avisa cuando encuentra desviaciones en la calidad de los modelos.
Implementación con un solo clic
Amazon SageMaker facilita la implementación de su modelo entrenado en producción con un solo clic para comenzar a generar predicciones para datos en lotes o en tiempo real. Puede implementar su modelo con un clic en instancias de aprendizaje automático de Amazon con escalado automático en varias zonas de disponibilidad para lograr un mayor nivel de redundancia. Tan solo debe especificar el tipo de instancia y los valores máximo y mínimo, y SageMaker se encargará del resto. SageMaker lanzará las instancias, implementará el modelo y configurará el punto de enlace HTTPS seguro para la aplicación. La aplicación simplemente debe incluir una llamada de la API a este punto de conexión para lograr una inferencia con alto nivel de procesamiento y baja latencia. La arquitectura permite integrar modelos nuevos en la aplicación en cuestión de minutos, gracias a que los cambios realizados en el modelo ya no implican modificaciones en el código de la aplicación.
Transformación en lotes
La mayor parte del tiempo, el procesamiento de lotes de datos para realizar predicciones que no sean en tiempo real se lleva a cabo mediante el reajuste del tamaño de los grandes conjuntos de datos en fragmentos más pequeños y la administración de los puntos de enlace en tiempo real. Esto puede ser costoso y propenso a errores. Gracias a la característica de transformación por lotes de Amazon SageMaker, no es necesario de desglosar los conjuntos de datos en varios fragmentos ni administrar los puntos de enlace en tiempo real. La transformación por lotes le permite ejecutar predicciones en conjuntos de datos de lotes grandes o pequeños. Con una API simple, puede solicitar predicciones para una gran cantidad de registros de datos y transformarlos de manera rápida y sencilla. La cantidad de datos para ejecutar exploraciones puede ser tan grande como para ocupar petabytes o tan pequeña como para ocupar unos pocos bytes, o cualquier punto intermedio.
Un único entrenamiento para todo tipo de implementación
Para alcanzar un alto rendimiento en la inferencia de una variedad de dispositivos de borde, normalmente debe pasar semanas o meses ajustando a mano un modelo para cada dispositivo de destino, ya que cada una de las configuraciones de hardware tiene un único conjunto de capacidades y restricciones. Con Amazon SageMaker Neo, puede entrenar modelos de aprendizaje automático una única vez e implementarlos en cualquier lugar en la nube y en el borde.
Integración con Kubernetes
Kubernetes es un sistema de código abierto utilizado para automatizar la implementación, el escalado y la administración de aplicaciones en contenedores. Muchos clientes quieren utilizar las capacidades completamente administradas para aprendizaje automático de Amazon SageMaker, pero también quieren que los equipos de plataforma e infraestructura sigan utilizando Kubernetes para organizar y administrar las canalizaciones. SageMaker aborda estos requisitos dejando que los usuarios de Kubernetes entrenen e implementen modelos en SageMaker con las canalizaciones y las operaciones de SageMaker-Kubeflow. Con los operadores y las canalizaciones, los usuarios de Kubernetes pueden acceder de forma nativa desde Kubeflow a las herramientas y a los motores de aprendizaje automático completamente administrados de SageMaker. Esto elimina la necesidad de administrar y optimizar de forma manual la infraestructura de aprendizaje automático en Kubernetes, a la vez que se conserva el control de toda la organización a través de Kubernetes. Si utiliza los operadores y las canalizaciones de SageMaker para Kubernetes, puede acceder a los beneficios de un servicio completamente administrado de aprendizaje automático en Kubernetes, sin tener que migrar las cargas de trabajo.
Procesamiento de datos más allá del entrenamiento
Las cargas de trabajo de aprendizaje automático de la vida real normalmente requieren más que entrenamiento y predicciones. Los datos deben procesarse antes y después, y algunas veces en varios pasos. Es posible que se deban efectuar entrenamientos e implementaciones con una secuencia de algoritmos que deben colaborar en la entrega de predicciones generadas a partir de datos sin procesar. SageMaker le permite implementar canalizaciones de inferencia para poder transferir datos de entrada sin procesar y ejecutar procesamientos previos, predicciones y procesamientos posteriores en tiempo real, además de solicitudes de inferencia por lotes. Las canalizaciones de inferencia pueden constar de cualquier marco de aprendizaje automático, algoritmo integrado o contenedores personalizados que se puedan utilizar en Amazon SageMaker. Puede crear canalizaciones de procesamiento de datos de características y de ingeniería de características con una serie de transformadores de características disponibles en los contenedores de marco SparkML y Scikit-learn en Amazon SageMaker, e implementarlos como parte de las canalizaciones de inferencia para reutilizar el código de procesamiento de datos y facilitar la administración de los procesos de aprendizaje automático.
Puntos de enlace de varios modelos
Cada vez más, las empresas entrenan los modelos de aprendizaje automático en función de los datos de los usuarios individuales. Por ejemplo, un servicio de transmisión de música entrenará modelos personalizados según el historial de música de cada oyente, a fin de personalizar las recomendaciones musicales. Un servicio de taxis entrenará modelos personalizados en función de los patrones de tráfico de cada ciudad, con el fin de predecir los tiempos de espera de los pasajeros. La creación de modelos de aprendizaje automático personalizados para cada uno de los casos de uso da como resultado una mayor precisión en las inferencias, pero el costo de la implementación y la administración de los modelos aumenta de manera significativa. Estos desafíos se vuelven más complejos cuando no se accede a todos los modelos con la misma velocidad, pero igualmente deben estar disponibles en todo momento.
Los puntos de enlace de varios modelos de Amazon SageMaker brindan una manera escalable y rentable de implementar grandes cantidades de modelos personalizados de aprendizaje automático. Los puntos de enlace de varios modelos de SageMaker le permiten implementar múltiples modelos con un solo clic en un único punto de enlace y atenderlos con un solo contenedor como servidor. Tan solo debe especificar el tipo de instancia y los valores máximos y mínimos deseados, y SageMaker se encargará del resto. SageMaker lanzará las instancias, implementará el modelo y configurará el punto de enlace HTTPS seguro para la aplicación. La aplicación simplemente debe incluir una llamada a la API con el modelo de destino a este punto de enlace para lograr una inferencia con alto nivel de rendimiento y baja latencia.
Obtenga una inferencia de alto rendimiento y bajo costo en la nube
Con Amazon SageMaker, puede implementar sus modelos entrenados de aprendizaje automático en instancias Inf1 de Amazon, diseñadas con el chip AWS Inferentia, para obtener una inferencia de alto rendimiento y bajo costo. Con las instancias Inf1, usted puede ejecutar aplicaciones de inferencia de aprendizaje automático a gran escala, como el reconocimiento de imagen, el reconocimiento de voz, el procesamiento de lenguaje natural, la personalización y la detección de fraudes. Con Amazon SageMaker Neo, puede compilar sus modelos entrenados de aprendizaje automático para que se ejecuten de manera óptima en instancias Inf1 e implementar los modelos compilados en instancias Inf1 para una inferencia en tiempo real.
Contenido relacionado
Pase sus modelos de aprendizaje automático de la etapa de experimentación a la de producción
Aprenda a implementar modelos de aprendizaje automático en la etapa de producción con SageMaker.
Deploy trained Keras or TensorFlow models using Amazon SageMaker (Implemente modelos Keras o TensorFlow entrenados con Amazon SageMaker)
Aprenda a implementar un modelo Keras o TensorFlow entrenado con Amazon SageMaker.
Automatice los modelos de aprendizaje automático personalizados de Amazon SageMaker
Siga estos ejemplos de GitHub y automatice la creación, el entrenamiento y la implementación de modelos de aprendizaje automático personalizados.