Apache Spark con Amazon SageMaker AI - 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.

Apache Spark con Amazon SageMaker AI

Amazon SageMaker AI Spark es una biblioteca de Spark de código abierto que te ayuda a crear canalizaciones de aprendizaje automático (ML) de Spark con SageMaker IA. Esto simplifica la integración de las etapas de ML de Spark con las etapas de SageMaker IA, como la formación de modelos y el alojamiento. Para obtener información sobre SageMaker AI Spark, consulta el GitHub repositorio de SageMaker AI Spark. En los siguientes temas se proporciona información para aprender a usar Apache Spark con SageMaker IA.

La biblioteca SageMaker AI Spark está disponible en Python y Scala. Puedes usar SageMaker AI Spark para entrenar modelos en SageMaker IA utilizando marcos de org.apache.spark.sql.DataFrame datos en tus clústeres de Spark. Tras el entrenamiento del modelo, también puedes alojar el modelo mediante los servicios de alojamiento de SageMaker IA.

La biblioteca SageMaker AI Spark proporcionacom.amazonaws.services.sagemaker.sparksdk, entre otras, las siguientes clases:

  • SageMakerEstimator: amplía la interfaz org.apache.spark.ml.Estimator. Puedes usar este estimador para el entrenamiento de modelos en SageMaker IA.

  • KMeansSageMakerEstimator, PCASageMakerEstimator y XGBoostSageMakerEstimator: amplía la clase SageMakerEstimator.

  • SageMakerModel: amplía la clase org.apache.spark.ml.Model. Puedes usarlo SageMakerModel para alojar modelos y obtener inferencias en IA. SageMaker

Puedes descargar el código fuente de las bibliotecas Python Spark (PySpark) y Scala desde el GitHub repositorio de SageMaker AI Spark.

Para ver la instalación y ver ejemplos de la biblioteca SageMaker AI Spark, consulta SageMaker Ejemplos de AI Spark para Scala oEjemplos de recursos para usar SageMaker AI Spark para Python (PySpark).

Si usa Amazon EMR AWS para administrar los clústeres de Spark, consulte Apache Spark. Para obtener más información sobre el uso de Amazon EMR en la SageMaker IA, consulte. Preparación de datos con Amazon EMR

Integre su aplicación Apache Spark con la IA SageMaker

El siguiente es un resumen de alto nivel de los pasos para integrar su aplicación Apache Spark con la SageMaker IA.

  1. Siga con el preprocesamiento de datos mediante la biblioteca de Apache Spark con la que está familiarizado. Su conjunto de datos sigue siendo un DataFrame en el clúster de Spark. Cargue sus datos en un DataFrame. Preprocéselos de manera que disponga de una columna features con org.apache.spark.ml.linalg.Vector de Doubles y una columna label opcional con valores de tipo ​Double.

  2. Usa el estimador de la biblioteca SageMaker AI Spark para entrenar tu modelo. Por ejemplo, si eliges el algoritmo k-means que proporciona la SageMaker IA para el entrenamiento de modelos, llama al método. KMeansSageMakerEstimator.fit

    Proporcione DataFrame como entrada. El estimador devuelve un objeto SageMakerModel.

    nota

    SageMakerModel amplía org.apache.spark.ml.Model.

    El método fit realiza lo siguiente:

    1. Convierte la entrada DataFrame al formato protobuf. Para ello, se seleccionan las columnas features y label de la entrada DataFrame. A continuación, se cargan los datos del protobuf en un bucket de Amazon S3. El formato protobuf es eficaz para el entrenamiento de modelos en IA. SageMaker

    2. Inicia el entrenamiento de modelos en SageMaker IA enviando una solicitud de SageMaker IA CreateTrainingJob. Una vez finalizado el entrenamiento del modelo, la SageMaker IA guarda los artefactos del modelo en un depósito de S3.

      SageMaker La IA asume la función de IAM que especificó para el entrenamiento de modelos para realizar tareas en su nombre. Por ejemplo, usa el rol para leer los datos de capacitación desde un bucket de S3 y escribir artefactos de modelos en un bucket.

    3. Crea y devuelve un objeto SageMakerModel. El constructor realiza las siguientes tareas, relacionadas con la implementación del modelo en la SageMaker IA.

      1. Envía una CreateModelsolicitud a SageMaker AI.

      2. Envía una CreateEndpointConfigsolicitud a SageMaker AI.

      3. Envía una CreateEndpointsolicitud a la SageMaker IA, que luego lanza los recursos especificados y aloja el modelo en ellos.

  3. Puede obtener inferencias de su modelo alojado en SageMaker IA con elSageMakerModel.transform.

    Proporcione una entrada DataFrame con características como entrada. El método transform lo transforma en un DataFrame que contiene inferencias. Internamente, el transform método envía una solicitud a la InvokeEndpoint SageMaker API para obtener inferencias. El método transform anexa las inferencias a la entrada DataFrame.