SageMaker Compilador de formación FAQ - Amazon SageMaker

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.

SageMaker Compilador de formación FAQ

importante

Amazon Web Services (AWS) anuncia que no habrá nuevas versiones o versiones de SageMaker Training Compiler. Puede seguir utilizando SageMaker Training Compiler a través de los AWS Deep Learning Containers (DLCs) existentes para SageMaker formación. Es importante tener en cuenta que, si bien los existentes DLCs permanecen accesibles, ya no recibirán parches ni actualizaciones de ellos AWS, de acuerdo con la Política de soporte de AWS Deep Learning Containers Framework.

Utilice los siguientes FAQ elementos para encontrar respuestas a las preguntas más frecuentes sobre SageMaker Training Compiler.

P: ¿Cómo sé que SageMaker Training Compiler funciona?

Si ha iniciado correctamente su trabajo de formación con SageMaker Training Compiler, recibirá los siguientes mensajes de registro:

  • Con TrainingCompilerConfig(debug=False)

    Found configuration for Training Compiler Configuring SM Training Compiler...
  • Con TrainingCompilerConfig(debug=True)

    Found configuration for Training Compiler Configuring SM Training Compiler... Training Compiler set to debug mode

P: ¿Qué modelos acelera SageMaker Training Compiler?

SageMaker Training Compiler es compatible con los modelos de aprendizaje profundo más populares de la biblioteca de transformadores Hugging Face. Con la mayoría de los operadores compatibles con el compilador, estos modelos se pueden entrenar más rápido con Training Compiler. SageMaker Los modelos compilables incluyen, entre otros, los siguientes: bert-base-cased, bert-base-chinese, bert-base-uncased, distilbert-base-uncased, distilbert-base-uncased-finetuned-sst-2-english, gpt2, roberta-base, roberta-large, t5-base y xlm-roberta-base. El compilador funciona con la mayoría de los operadores y estructuras de datos de DL y puede acelerar muchos otros modelos de DL además de los que se han probado.

P: ¿Qué sucede si habilito SageMaker Training Compiler con un modelo que no se ha probado?

En el caso de un modelo no probado, es posible que primero deba modificar el script de entrenamiento para que sea compatible con SageMaker Training Compiler. Para obtener más información, consulte Usar un modelo de aprendizaje profundo propio y siga las instrucciones sobre cómo preparar el script de entrenamiento.

Una vez que haya actualizado el script de entrenamiento, podrá iniciar el trabajo de entrenamiento. El compilador procede a compilar el modelo. Sin embargo, es posible que la velocidad de entrenamiento no aumente e incluso disminuya en relación con la línea base con un modelo no probado. Es posible que tengas que volver a ajustar los parámetros del entrenamiento, por ejemplo, batch_size y learning_rate para conseguir algún beneficio de aceleración.

Si la compilación del modelo no probado falla, el compilador devuelve un error. Consulte SageMaker Solución de problemas con Training Compiler para obtener información detallada sobre los tipos de errores y los mensajes de error.

P: ¿Podré conseguir siempre un trabajo de formación más rápido con Training Compiler SageMaker ?

No necesariamente. En primer lugar, SageMaker Training Compiler añade algunos gastos de compilación antes de poder acelerar el proceso de formación continua. El trabajo de entrenamiento optimizado debe durar lo suficiente como para amortizar y compensar esta sobrecarga de compilación incremental al principio del trabajo de entrenamiento.

Además, como ocurre con cualquier modelo de proceso de entrenamiento, el entrenamiento con parámetros subóptimos puede aumentar el tiempo de entrenamiento. SageMaker Training Compiler puede cambiar las características del trabajo de formación, por ejemplo, cambiando el espacio de memoria del trabajo. Debido a estas diferencias, es posible que tenga que volver a ajustar los parámetros de su trabajo de entrenamiento para acelerar el entrenamiento. Puede encontrar una tabla de referencia en la que se especifican los parámetros de mejor rendimiento para los trabajos de entrenamiento con distintos tipos y modelos de instancias enModelos probados.

Por último, parte del código de un script de entrenamiento puede añadir una sobrecarga adicional o interrumpir el gráfico de cálculo compilado y ralentizar el entrenamiento. Si trabaja con un modelo personalizado o no probado, consulte las instrucciones en Mejores prácticas para usar Training Compiler con /XLA SageMaker PyTorch.

P: ¿Puedo usar siempre un tamaño de lote mayor con SageMaker Training Compiler?

El tamaño del lote aumenta en la mayoría de los casos, pero no en todos. Las optimizaciones realizadas por SageMaker Training Compiler pueden cambiar las características de su trabajo de formación, como el consumo de memoria. Normalmente, un trabajo del compilador de entrenamiento ocupa menos memoria que un trabajo de entrenamiento sin compilar con el marco nativo, lo que permite un tamaño de lote mayor durante el entrenamiento. Un tamaño de lote mayor y el correspondiente ajuste de la velocidad de aprendizaje aumentan el rendimiento del entrenamiento y pueden reducir el tiempo total de entrenamiento.

Sin embargo, puede haber casos en los que SageMaker Training Compiler aumente el consumo de memoria en función de su esquema de optimización. El compilador utiliza un modelo de costes analíticos para predecir el programa de ejecución con el coste de ejecución más bajo para cualquier operador que haga un uso intensivo de recursos de computación. Este modelo podría encontrar una línea de tiempo óptima que aumente el uso de la memoria. En este caso, no podrá aumentar el tamaño de los lotes, pero el rendimiento de la muestra es aún mayor.

P: ¿ SageMaker Training Compiler funciona con otras funciones de SageMaker formación, como las bibliotecas de formación SageMaker distribuidas y SageMaker Debugger?

SageMaker Actualmente, Training Compiler no es compatible con las bibliotecas SageMaker de formación distribuidas.

SageMaker Training Compiler es compatible con SageMaker Debugger, pero Debugger podría degradar el rendimiento computacional al aumentar la sobrecarga.

P: ¿ SageMaker Training Compiler admite contenedores personalizados (traiga su propio contenedor)?

SageMaker Training Compiler se proporciona a través de AWS Deep Learning Containers y puede ampliar un subconjunto de contenedores para personalizarlos según su caso de uso. Training Compiler admite los contenedores que AWS DLCs se extienden desde. SageMaker Para obtener más información, consulte Marcos compatibles y Uso del SDK de SageMaker Python y Extending SageMaker Framework Deep Learning Containers. Si necesitas más ayuda, ponte en contacto con el SageMaker equipo a través de AWS Support o AWS Developer Forums de Amazon SageMaker.