Creación

Crear conjuntos de datos de entrenamiento de alta precisión

Amazon SageMaker Ground Truth ayuda a los clientes a crear conjuntos de datos de entrenamiento de alta precisión utilizando el aprendizaje automático y a reducir los costos de etiquetado de datos hasta un 70%. Los modelos de aprendizaje automático de éxito se forman utilizando datos que se han etiquetado para enseñar al modelo a tomar las decisiones correctas. Este proceso suele requerir meses y grandes equipos de personas para completarse. SageMaker Ground Truth ofrece una solución innovadora para reducir el costo y la complejidad, además de aumentar la precisión del etiquetado de datos aunando el aprendizaje automático con un proceso de etiquetado humano denominado aprendizaje activo. 

Más información

Blocs de notas administrados para modelos de escritura

Amazon SageMaker provee instancias completamente administradas que ejecutan blocs de notas de Jupyter para entrenar el análisis y el preprocesamiento de datos. Estos blocs de notas incluyen controladores CUDA y cuDNN para plataformas de aprendizaje profundo conocidas, paquetes de Anaconda y bibliotecas para TensorFlow, Apache MXNet, PyTorch y Chainer. 

Con un solo clic, puede obtener acceso a un entorno de bloc de notas de aprendizaje automático completamente administrado mediante el uso del conocido formato de bloc de notas de código abierto de Jupyter.

Estos espacios de trabajo de bloc de notas le permiten analizar y visualizar los datos, además de documentar los hallazgos en flujos de trabajo reutilizables mediante el uso de prácticamente todas las bibliotecas, los marcos de trabajo y las interfaces conocidas. Desde el interior del bloc de notas, puede incorporar sus datos ya almacenados en Amazon S3. También puede usar AWS Glue para migrar datos fácilmente desde Amazon RDS, Amazon DynamoDB y Amazon Redshift a S3 para realizar análisis. Puede escribir o importar su bloc de notas o usar uno de los muchos blocs de notas ya creados que se encuentran cargados en Amazon SageMaker. Los blocs de notas ya creados se encuentran disponibles para todos los algoritmos de aprendizaje automático integrados. Además, se encuentran disponibles plantillas de blocs de notas para ayudarlo a empezar a usar aplicaciones de aprendizaje automático comunes y funcionalidades de Amazon SageMaker más avanzadas. 

Algoritmos integrados de alto desempeño

Amazon SageMaker ofrece algoritmos de aprendizaje automático escalables y de alto desempeño que están optimizados para brindar velocidad, escala y precisión. Los algoritmos pueden realizar entrenamientos en conjuntos de datos con escala de petabytes y proveer un desempeño 10 veces superior al de otras implementaciones. Puede elegir algoritmos supervisados en los que las respuestas correctas se conocen durante el entrenamiento y enseñarle al modelo dónde cometió errores. Amazon SageMaker incluye algoritmos supervisados, como regresión lineal/logística y XGBoost, para resolver problemas de predicción de serie temporal y recomendaciones. Amazon SageMaker también admite el aprendizaje no supervisado (es decir, los algoritmos deben encontrar las respuestas correctas por sí mismos), como agrupación de clústeres k-means y análisis de componente principal (PCA), para resolver problemas como la identificación de agrupaciones de clientes en función de su comportamiento de compra.

Amazon SageMaker pone automáticamente a disposición los algoritmos de aprendizaje automático más comunes. Usted tan solo debe especificar el origen de los datos para poder comenzar a ejecutar de inmediato agrupaciones en clústeres k-means para la fragmentación de datos, máquinas de factorización para recomendaciones, previsión de serie temporal, regresión lineal o análisis de componente principal. 

BlazingText Word2Vec Implementación de BlazingText del algoritmo Word2Vec para ajustar la escala y agilizar la generación de inclusiones de palabras a partir de un gran número de documentos.
DeepAR Un algoritmo que genera previsiones precisas mediante el aprendizaje de patrones de muchas series temporales relacionadas a través de redes neuronales recurrentes (RNN).
Máquinas de factorización Un modelo con la capacidad de calcular todas las interacciones entre características inclusive con un volumen muy pequeño de datos.
Árboles con potenciación del gradiente (XGBoost) XGBoost, la abreviatura de árboles con potenciación del gradiente, es una biblioteca de potenciación del gradiente distribuida y optimizada.
Clasificación de imágenes (ResNet) Una red neuronal conocida para el desarrollo de sistemas de clasificación de imágenes.
Conocimientos de IP Un algoritmo para detectar usuarios malintencionados o aprender a utilizar patrones de direcciones IP.
Agrupación en clústeres K-means Uno de los algoritmos de aprendizaje automático más simples. Se utiliza para encontrar grupos en datos sin etiquetar.
Vecino k más próximo (k-NN) Un algoritmo basado en índice para tratar problemas basados en clasificación y regresión.

Asignación latente dirichlet (LDA)

Un modelo adecuado para la detección automática de temas principales presentes en un conjunto de archivos de texto.
Aprendizaje lineal (clasificación) La clasificación lineal usa las características de un objeto para identificar el grupo correcto al cual pertenece.
Aprendizaje lineal (regresión) La regresión lineal se utiliza para predecir la relación lineal entre dos variables.
Modelado de temas neuronal (NTM) Una estrategia basada en redes neuronales para temas de aprendizaje a partir de conjuntos de datos de imágenes y textos.
Object2Vec Un algoritmo integrado neural para calcular los vecinos más cercanos y para visualizar clústeres naturales.
Detección de objetos Detecta y clasifica varios objetos de una imagen, además de colocar recuadros que los rodean.
Análisis de componente principal (PCA) Este algoritmo, que se utiliza a menudo para el preprocesamiento de datos, toma una tabla o una matriz de muchas características y la reduce a un número menor de características representativas.
Bosque de corte aleatorio Un algoritmo de aprendizaje automático no supervisado para la detección de anomalías.
Segmentación semántica
Realiza particiones de una imagen para identificar lugares de interés asignando una etiqueta a los píxeles individuales de la imagen.
Seqence2Sequence Un codificador-decodificador de uso general para texto que se utiliza a menudo para traducción automática, resúmenes de textos, etc.

Estos algoritmos se optimizaron para que su desempeño sea 10 veces más rápido del que podría obtener con implementaciones tradicionales. Una de las estrategias que utilizamos para lograrlo es implementar los algoritmos de una manera tal que no deban regresar y analizar datos que ya observaron. Normalmente, los algoritmos suelen regresar a los conjuntos de datos varias veces para hacer referencia a datos anteriores. Este procedimiento es adecuado para conjuntos de datos pequeños, pero el impacto en el desempeño en el caso de los conjuntos de datos de mayor tamaño puede reducir la velocidad del entrenamiento de manera significativa. Al diseñarse para realizar una única pasada, podrá realizar entrenamientos de manera eficiente y rentable en conjuntos de datos con escala de petabytes. 

Amplio soporte de marcos de trabajo

Amazon SageMaker configura y optimiza automáticamente TensorFlow, Apache MXNet, Chainer, PyTorch, Scikit-learn y SparkML para que no deba realizar ninguna configuración para poder empezar a usar estos marcos de trabajo. Además, agregaremos otros marcos importantes en los meses venideros. Sin embargo, también puede incorporar cualquier marco que desee en Amazon SageMaker. Para ello, debe crearlo en un contenedor Docker que almacene en Amazon EC2 Container Registry.

Compatibilidad del aprendizaje mediante refuerzo con Amazon SageMaker RL

Amazon SageMaker admite el aprendizaje mediante refuerzo además del aprendizaje tradicional supervisado y no supervisado. SageMaker ahora dispone de algoritmos de aprendizaje reforzado integrados completamente administrados, incluidos algunos de los mejores y más recientes de la literatura académica. SageMaker admite el aprendizaje mediante refuerzo en varios marcos de trabajo (incluidos TensorFlow y MXNet), así como marcos más recientes, diseñados desde un principio para este tipo de aprendizaje, como Intel Coach y Ray RL. Se admiten diversos entornos de simulación de física 2D y 3D, incluidos entornos basados en la interfaz OpenGym de código abierto. Asimismo, SageMaker RL le permitirá entrenar con entornos 3D virtuales integrados en Amazon Sumerian y Amazon RoboMaker. Para ayudarle a empezar, SageMaker también proporciona una serie de blocs de notas y tutoriales de ejemplo. 

La mayor parte del aprendizaje automático entra en una categoría denominada aprendizaje supervisado. Este método requiere una gran cantidad de datos de entrenamiento etiquetados, pero los modelos que cree son capaces de tomar decisiones sofisticadas. Es el enfoque habitual en los modelos de visión, voz y lenguaje informático. Otra categoría habitual pero menos utilizada de aprendizaje automático se denomina aprendizaje no supervisado. En este caso, los algoritmos tratan de identificar una estructura oculta en datos sin etiquetar. El listón para entrenar un modelo no supervisado está mucho más bajo, pero la desventaja es que el modelo toma decisiones mucho menos sofisticadas. Los modelos no supervisados se suelen utilizar para identificar anomalías en los datos, tales como fluctuaciones anómalas de la temperatura o señales de intrusiones en la red.

El aprendizaje mediante refuerzo (RL) ha emergido como un tercer enfoque complementario al aprendizaje automático. El RL adopta un enfoque muy distinto de los modelos de entrenamiento. No necesita prácticamente datos de entrenamiento etiquetados, pero puede alcanzar (y en algunos caso superar) niveles de sofisticación humanos. Lo mejor del RL es que puede aprender a modelar una serie compleja de comportamientos para llegar a un resultado deseado, en lugar de tomar simplemente una decisión única. Una de las aplicaciones más comunes hoy día para RL es el entrenamiento de vehículos autónomos para desplazarse hasta un destino.

Una forma sencilla de entender cómo funciona el RL consiste en pensar en un videojuego sencillo donde un personaje tiene que avanzar por un laberinto recogiendo banderas y evitando a los enemigos. En lugar de un humano jugando, el algoritmo controla al personaje y juega millones de partidas. Todo lo que tiene que saber para empezar es que el personaje puede moverse hacia arriba, abajo, izquierda y derecha y que obtiene puntos como recompensa. El algoritmo aprenderá a continuación cómo jugar para conseguir la máxima puntuación posible. Aprenderá comportamientos que mejoran la puntuación (como, por ejemplo, recoger banderas o aprovechar los multiplicadores de puntuación) y a evitar las penalizaciones (por ejemplo, evitar los golpes del enemigo). Con el tiempo, los algoritmos de RL pueden aprender estrategias avanzadas para dominar el juego como, por ejemplo, limpiar primero la parte inferior del laberinto y cuándo utilizar poderes especiales y cómo explotar los comportamientos del enemigo.

RL puede ser una fuerza multiplicadora respecto a las técnicas de aprendizaje automático tradicionales. Por ejemplo, RL y el aprendizaje supervisado se han combinado para crear regímenes de tratamiento personalizado en sanidad, optimizar cadenas de suministro de fabricación, mejorar el rendimiento de turbinas eólicas, conducir vehículos autónomos, operar robots de forma segura e incluso crear clases personalizadas y planes de aprendizaje para alumnos.

Pruebas y prototipos en entornos locales

Los contenedores de Docker de código abierto Apache MXNet y Tensorflow que se usan en Amazon SageMaker están disponibles en Github. Puede descargarlos en su entorno local y usar el SDK para Python de Amazon SageMaker a fin de probar secuencias de comandos antes de la implementación en entornos de entrenamiento u hospedaje de Amazon SageMaker. Cuando esté listo para trasladarse de un entorno de pruebas local a uno de alojamiento o entrenamiento de producción, una modificación en una única línea de código es lo único que deberá hacer.

Entrenamiento

Entrenamiento con un clic

Cuando esté listo para realizar entrenamientos en Amazon SageMaker, solo debe especificar la ubicación de los datos en Amazon S3 e indicar el tipo y el número de instancias de aprendizaje automático de Amazon SageMaker que necesita. A continuación, puede comenzar a trabajar con un único clic en la consola. Amazon SageMaker configura un clúster de cómputo distribuido, realiza el entrenamiento, envía el resultado a Amazon S3 y desmantela el clúster cuando finaliza el proceso. 

Entrenar modelos con Amazon SageMaker es sencillo. Tan solo debe especificar la ubicación de los datos en S3 y Amazon SageMaker tomará su algoritmo y lo ejecutará en un clúster de entrenamiento aislado dentro de su propia red definida por software, que está configurada acorde a sus necesidades. Elija el tipo de instancia (incluidas las instancias con GPU P3, ideales para entrenamientos eficientes y ágiles) y Amazon SageMaker creará su clúster en un grupo de escalado automático; adjunte volúmenes de EBS a cada nodo; configure las canalizaciones de datos; y comience a realizar entrenamientos con el script de TensorFlow, MXNet, Chainer o PyTorch, los algoritmos de Amazon o los algoritmos provistos con su contenedor. Una vez finalizado el proceso, se enviarán los resultados a S3 y se desmantelará el clúster automáticamente.

Para simplificar la ejecución de entrenamientos a escala, hemos optimizado la manera en la que los datos de entrenamiento se transmiten desde S3. Mediante la API, puede especificar si desea que todos los datos se envíen a cada nodo del clúster o si le gustaría que Amazon SageMaker administrara la distribución de los datos entre los nodos en función de las necesidades del algoritmo.

Combinada con los algoritmos integrados, la escalabilidad del entrenamiento posible con Amazon SageMaker puede reducir radicalmente los plazos y el costo de las ejecuciones de entrenamientos. 

Ajuste de modelo automático

Amazon SageMaker puede ajustar automáticamente su modelo mediante la adecuación de miles de combinaciones diferentes de parámetros de algoritmos para lograr las predicciones más precisas que el modelo es capaz de producir. 

Cuando se encuentre ajustando el modelo para que sea más preciso, tendrá dos opciones principales: modificar los datos entrantes que suministra al modelo (por ejemplo, tomar el log de un número) y ajustar los parámetros del algoritmo. Estos se denominan hiperparámetros y encontrar los valores correctos puede ser una tarea ardua. Normalmente, comenzará al azar e iterará a través de los ajustes a medida que comience a ver las consecuencias de los cambios. Puede ser un ciclo prolongado en función de la cantidad de hiperparámetros que tenga el modelo.

Amazon SageMaker simplifica este proceso mediante el suministro del ajuste de modelo automático como una opción durante el entrenamiento. Amazon SageMaker usará aprendizaje automático para ajustar su modelo de aprendizaje automático. Funciona mediante el aprendizaje de las consecuencias que diferentes tipos de datos tienen en un modelo y la implementación de dicho conocimiento en varias copias del modelo para buscar rápidamente el mejor resultado posible. Como desarrollador o científico de datos, esto significa que lo único por lo cual deberá preocuparse es por los ajustes que desee realizar en los datos que incorpora al modelo, lo que reduce de manera significativa el número de factores de los cuales debe ocuparse durante el entrenamiento.

Cuando se inicie el ajuste de modelo automático, tan solo debe especificar el número de tareas de entrenamiento mediante la API y Amazon SageMaker se encargará del resto. 

Entrene una sola vez y ejecute en cualquier parte

Amazon SageMaker Neo permite que los modelos de aprendizaje automático entrenen una sola vez y se ejecuten en cualquier lugar, tanto en la nube como en el borde. Normalmente, la optimización de modelos de aprendizaje automático para ejecutarlos en varias plataformas resulta extremadamente difícil ya que los desarrolladores tienen que ajustar a mano los modelos para la configuración específica de hardware y software de cada plataforma. Neo elimina el tiempo y el esfuerzo necesarios para hacerlo optimizando automáticamente los modelos de TensorFlow, MXNet, PyTorch, ONNX y XGBoost para implementación en procesadores ARM, Intel y Nvidia actualmente, en breve se añadirá compatibilidad para hardware Cadence, Qualcomm y Xilinx. Puede acceder a SageMaker Neo desde la consola de SageMaker y con solo unos cuantos clics, crear un modelo optimizado para su instancia en la nube o dispositivo de borde. Los modelos optimizados se ejecutan hasta dos veces más rápido y consumen menos de una centésima parte del espacio de almacenamiento de los modelos tradicionales. 

Más información

Búsqueda de trabajo de entrenamiento

Amazon SageMaker Search le permite buscar y evaluar rápidamente las ejecuciones de entrenamiento de modelos más relevantes de entre cientos o miles de trabajos de entrenamiento de modelos potenciales de Amazon SageMaker. SageMaker Search está disponible actualmente en versión beta a través de la consola de administración de AWS y de las API de AWS SDK para Amazon SageMaker.

El desarrollo de un modelo de aprendizaje automático requiere una experimentación continua, probando nuevos algoritmos de aprendizaje y ajustando hiperparámetros, todo ello al tiempo que se observa el efecto sobre el rendimiento del modelo y la precisión. Este ejercicio iterativo suele dar lugar a la explosión de cientos de experimentos de entrenamiento de modelos y versiones de modelos, que ralentizan la convergencia y la detección del modelo ganador. Además, la explosión de información dificulta notablemente el rastreo del linaje de una versión de modelo, p. ej. la combinación única de conjuntos de datos, algoritmos y parámetros que alimentaron el modelo en primer lugar.

Con Amazon SageMaker Search puede organizar, rastrear y evaluar de forma rápida y sencilla sus trabajos de entrenamiento de modelos en Amazon SageMaker. Puede buscar en todos los atributos de definición a partir del algoritmo de aprendizaje utilizado, la configuración de hiperparámetros, los conjuntos de datos de entrenamiento utilizados para igualar las etiquetas que ha añadido en los trabajos de entrenamiento de modelos. También puede comparar y clasificar rápidamente las ejecuciones de entrenamiento en función de las métricas de rendimiento tales como la pérdida de entrenamiento y la precisión de validación, creando de este modo tablas de clasificación para elegir modelos "ganadores" para implementarlos en entornos de producción. Finalmente, con Amazon SageMaker Search, puede realizar un seguimiento rápido de todo el linaje de un modelo implementado en un entorno en vivo hasta el conjunto de datos utilizado en el entrenamiento o validación del modelo.

Implementación

Implementación con un clic

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 Amazon SageMaker se encargará del resto. 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 porque los cambios realizados en el modelo ya no implican modificaciones en el código de la aplicación. 

Pruebas A/B automáticas

Amazon SageMaker también puede administrar pruebas A/B automáticas. Puede configurar el punto de conexión para distribuir tráfico en hasta cinco modelos diferentes y definir el porcentaje de llamadas de inferencia que desea que cada uno controle. Es posible modificar estos parámetros sobre la marcha, lo que le ofrece una amplia flexibilidad para ejecutar pruebas y determinar qué modelo produce realmente los resultados más precisos. 

Hospedaje completamente administrado con Auto Scaling

Amazon SageMaker administra la infraestructura informática de producción por usted para realizar comprobaciones de estado, implementar parches de seguridad y realizar otros mantenimientos de rutina, todo con registros y monitoreo de Amazon CloudWatch integrados. 

Transformación en lotes

La transformación en lotes le permite ejecutar predicciones en lotes de datos grandes y pequeños. No es necesario desglosar el conjunto de datos en varios fragmentos ni administrar puntos de enlace en tiempo real. Con una API simple, puede solicitar predicciones para un gran número de registros de datos y transformar los datos de manera rápida y sencilla. 

 

Canalizaciones de inferencia

Amazon SageMaker le permite implementar canalizaciones de transferencia para poder transferir datos de entrada sin procesar y ejecutar solicitudes de preprocesado, predicciones, postprocesado en tiempo real y de inferencia por lotes Las canalizaciones de inferencia pueden constar de cualquier marco de aprendizaje automático, algoritmo integrado o contenedores personalizados utilizables 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.

 

Más información sobre los precios de Amazon SageMaker

Visite la página de precios
¿Listo para comenzar?
Inscribirse
¿Tiene más preguntas?
Contacte con nosotros