Funcionamiento de la selección inteligente de SageMaker - Amazon SageMaker AI

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Funcionamiento de la selección inteligente de SageMaker

El objetivo de la selección inteligente de SageMaker es seleccionar los datos de entrenamiento durante el proceso de entrenamiento y enviar solo las muestras más informativas al modelo. Durante un entrenamiento típico con PyTorch, DataLoader de PyTorch envía los datos de forma iterativa en lotes al ciclo de entrenamiento y a los dispositivos aceleradores (como las GPU o los chips Trainium). La selección inteligente de SageMaker se implementa en esta etapa de carga de datos y, por lo tanto, es independiente de cualquier procesamiento previo de datos ascendente en su proceso de entrenamiento. La selección inteligente de SageMaker utiliza su modelo y su función de pérdida especificada por el usuario para realizar una pasada hacia adelante evaluativa de cada muestra de datos a medida que se carga. Las muestras que devuelven valores de pérdida baja tienen un impacto menor en el aprendizaje del modelo y, por lo tanto, se excluyen del entrenamiento, dado que ya es fácil para el modelo hacer la predicción adecuada sobre ellas con una alta confianza. Mientras tanto, esas muestras con pérdidas relativamente altas son las que el modelo aún necesita aprender, por lo que se conservan para el entrenamiento. Una entrada clave que puede establecer para la selección inteligente de SageMaker es la proporción de datos que se excluirán. Por ejemplo, al establecer la proporción en un 25 %, se excluyen del entrenamiento las muestras distribuidas en el cuartil más bajo de la distribución de la pérdida (tomadas de un número de muestras anteriores especificado por el usuario). Las muestras con pérdida alta se acumulan en un lote de datos mejorado. El lote de datos mejorado se envía al ciclo de entrenamiento (pasada hacia adelante y hacia atrás), y el modelo aprende y se entrena sobre el lote de datos mejorado.

En el siguiente diagrama se muestra información general sobre cómo se diseña el algoritmo de selección inteligente de SageMaker.

Diagrama de arquitectura del funcionamiento de la selección inteligente de SageMaker durante el entrenamiento a medida que se cargan los datos.

En resumen, la selección inteligente de SageMaker funciona durante el entrenamiento a medida que se cargan los datos. El algoritmo de selección inteligente de SageMaker calcula las pérdidas en los lotes y refina los datos que no mejoran antes de la pasada hacia adelante y hacia atrás de cada iteración. A continuación, el lote de datos refinado se utiliza para la pasada hacia delante y hacia atrás.

nota

La selección inteligente de los datos en SageMaker AI utiliza pasadas hacia adelante adicionales para analizar y filtrar los datos de entrenamiento. A su vez, hay menos pasadas hacia atrás, ya que los datos menos impactantes se excluyen de su trabajo de entrenamiento. Por este motivo, los modelos que tienen pasadas hacia atrás largas o caras obtienen los mayores beneficios de eficiencia cuando utilizan la selección inteligente. Por otro lado, si la pasada hacia delante del modelo tarda más que la pasada hacia atrás, la sobrecarga podría aumentar el tiempo total de entrenamiento. Para medir el tiempo empleado en cada pasada, puede realizar un trabajo de entrenamiento de piloto y recopilar registros que registren el tiempo que tardan los procesos. Considere también la posibilidad de utilizar el Generador de perfiles de SageMaker, que proporciona herramientas de generación de perfiles y una aplicación de interfaz de usuario. Para obtener más información, consulte Generador de perfiles de Amazon SageMaker.

La selección inteligente de SageMaker funciona para trabajos de entrenamiento basados en PyTorch con el clásico paralelismo de datos distribuidos, que hace réplicas de modelos en cada nodo de trabajo de GPU y realiza la operación AllReduce. Funciona con DDP de PyTorch y con la biblioteca de paralelismo de datos distribuidos de SageMaker AI.