View a markdown version of this page

Apache Spark com Amazon AI SageMaker - SageMaker IA da Amazon

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Apache Spark com Amazon AI SageMaker

O Amazon SageMaker AI Spark é uma biblioteca de código aberto do Spark que ajuda você a criar pipelines de aprendizado de máquina (ML) do Spark com IA. SageMaker Isso simplifica a integração dos estágios do Spark ML com os estágios de SageMaker IA, como treinamento e hospedagem de modelos. Para obter informações sobre o SageMaker AI Spark, consulte o repositório do SageMaker AI Spark GitHub . Os tópicos a seguir fornecem informações para aprender a usar o Apache Spark com SageMaker IA.

A biblioteca SageMaker AI Spark está disponível em Python e Scala. Você pode usar o SageMaker AI Spark para treinar modelos em SageMaker IA usando quadros de org.apache.spark.sql.DataFrame dados em seus clusters do Spark. Após o treinamento do modelo, você também pode hospedar o modelo usando serviços de hospedagem de SageMaker IA.

A biblioteca SageMaker AI Spark,com.amazonaws.services.sagemaker.sparksdk, fornece as seguintes classes, entre outras:

  • SageMakerEstimator: Estende a interface org.apache.spark.ml.Estimator. Você pode usar esse estimador para treinamento de modelos em SageMaker IA.

  • KMeansSageMakerEstimator, PCASageMakerEstimator e XGBoostSageMakerEstimator: Estendem a classe SageMakerEstimator.

  • SageMakerModel: Estende a classe org.apache.spark.ml.Model. Você pode usar isso SageMakerModel para hospedar modelos e obter inferências em SageMaker IA.

Você pode baixar o código-fonte das bibliotecas Python Spark (PySpark) e Scala no repositório SageMaker AI Spark. GitHub

Para ver a instalação e exemplos da biblioteca do SageMaker AI Spark, consulte SageMaker Exemplos do AI Spark para Scala ouExemplos de recursos para usar o SageMaker AI Spark para Python () PySpark.

Se você usa o Amazon EMR AWS para gerenciar clusters do Spark, consulte Apache Spark. Para obter mais informações sobre como usar o Amazon EMR em SageMaker IA, consultePreparação de dados usando o Amazon EMR.

Integre seu aplicativo Apache Spark com a IA SageMaker

A seguir, um resumo de alto nível das etapas para integrar seu aplicativo Apache Spark com a IA. SageMaker

  1. Continue o pré-processamento de dados usando a biblioteca Apache Spark que você já conhece. O conjunto de dados permanece como um DataFrame no seu cluster do Spark. Carregue seus dados em um DataFrame. Faça o pré-processamento deles para ter uma coluna features com org.apache.spark.ml.linalg.Vector de Doubles e uma coluna label opcional com valores do tipo Double.

  2. Use o estimador na biblioteca do SageMaker AI Spark para treinar seu modelo. Por exemplo, se você escolher o algoritmo k-means fornecido pela SageMaker IA para treinamento de modelos, chame o KMeansSageMakerEstimator.fit método.

    Forneça seu DataFrame como entrada. O estimador retorna um objeto SageMakerModel.

    nota

    SageMakerModel estende o org.apache.spark.ml.Model.

    O método train faz o seguinte:

    1. Converte a entrada DataFrame para o formato protobuf. Isso é feito selecionando as colunas features e label da entrada DataFrame. Em seguida, ele carrega upload dos dados do protobuf em um bucket do Amazon S3. O formato protobuf é eficiente para o treinamento de modelos em SageMaker IA.

    2. Inicia o treinamento de modelos em SageMaker IA enviando uma CreateTrainingJob solicitação de SageMaker IA. Depois que o treinamento do modelo for concluído, a SageMaker IA salva os artefatos do modelo em um bucket do S3.

      SageMaker A IA assume a função do IAM que você especificou para o treinamento de modelos para realizar tarefas em seu nome. Por exemplo, para ler dados de treinamento de um bucket do S3 e gravar artefatos de modelo em um bucket.

    3. Cria e retorna um objeto SageMakerModel. O construtor realiza as seguintes tarefas, relacionadas à implantação do seu modelo na IA. SageMaker

      1. Envia uma CreateModel solicitação para a SageMaker IA.

      2. Envia uma CreateEndpointConfig solicitação para a SageMaker IA.

      3. Envia uma CreateEndpoint solicitação para a SageMaker IA, que então inicia os recursos especificados e hospeda o modelo neles.

  3. Você pode obter inferências do seu modelo hospedado na SageMaker IA com o. SageMakerModel.transform

    Forneça uma entrada DataFrame com atributos como entrada. O método transform transforma-a em um DataFrame que contém inferências. Internamente, o transform método envia uma solicitação à InvokeEndpoint SageMaker API para obter inferências. O método transform anexa as inferências à entrada DataFrame.