Automatize a preparação de dados no Canvas SageMaker - Amazon SageMaker

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á.

Automatize a preparação de dados no Canvas SageMaker

Depois de transformar seus dados em fluxo de dados, você pode exportar as transformações para seus fluxos de trabalho de aprendizado de máquina. Quando você exporta suas transformações, o SageMaker Canvas cria um caderno Jupyter. Você deve executar o notebook no Amazon SageMaker Studio Classic. Para obter informações sobre como começar a usar o Studio Classic, entre em contato com seu administrador.

Automatize a preparação de dados usando pipelines

Quando quiser criar e implantar fluxos de trabalho de aprendizado de máquina (ML) em grande escala, você pode usar o Pipelines para criar fluxos de trabalho que gerenciam e implantam trabalhos. SageMaker Com o Pipelines, você pode criar fluxos de trabalho que gerenciam seus trabalhos de preparação de SageMaker dados, treinamento de modelos e implantação de modelos. Você pode usar os algoritmos primários SageMaker oferecidos usando Pipelines. Para obter mais informações sobre pipelines, consulte SageMaker Pipelines.

Quando você exporta uma ou mais etapas do seu fluxo de dados para Pipelines, o Data Wrangler cria um notebook Jupyter que você pode usar para definir, instanciar, executar e gerenciar um pipeline.

Use um caderno Jupyter para criar um pipeline

Use o procedimento a seguir para criar um notebook Jupyter para exportar seu fluxo do Data Wrangler para Pipelines.

Use o procedimento a seguir para gerar um notebook Jupyter e executá-lo para exportar seu fluxo do Data Wrangler para Pipelines.

  1. Escolha o + próximo ao nó que você deseja separar.

  2. Escolha Exportar fluxo de dados.

  3. Escolha Pipelines (via Jupyter Notebook).

  4. Faça o download do notebook Jupyter ou copie-o para um local do Amazon S3. Recomendamos copiá-lo para um local do Amazon S3 que você possa acessar no Studio Classic. Entre em contato com seu administrador se precisar de orientação sobre um local adequado.

  5. Executar o caderno Jupyter.

Você pode usar o caderno Jupyter que o Data Wrangler produz para definir um pipeline. O pipeline inclui as etapas de processamento de dados que são definidas pelo fluxo do Data Wrangler.

Você pode adicionar etapas adicionais ao seu pipeline adicionando etapas à lista steps no código a seguir no notebook:

pipeline = Pipeline( name=pipeline_name, parameters=[instance_type, instance_count], steps=[step_process], #Add more steps to this list to run in your Pipeline )

Para obter mais informações sobre como definir pipelines, consulte Definir SageMaker pipeline.

Automatize a preparação de dados usando um endpoint de inferência

Use seu fluxo do Data Wrangler para processar dados no momento da inferência criando um pipeline de inferência SageMaker serial a partir do fluxo do Data Wrangler. Um pipeline de inferência é uma série de etapas que resulta em um modelo treinado fazendo previsões sobre novos dados. Um pipeline de inferência serial no Data Wrangler transforma os dados brutos e os fornece ao modelo de machine learning para uma previsão. Você cria, executa e gerencia o pipeline de inferência a partir de um notebook Jupyter no Studio Classic. Para obter mais informações sobre o acesso ao caderno, consulte Use um notebook Jupyter para criar um endpoint de inferência.

No notebook, você pode treinar um modelo de machine learning ou especificar um que já tenha treinado. Você pode usar o Amazon SageMaker Autopilot ou XGBoost treinar o modelo usando os dados que você transformou em seu fluxo do Data Wrangler.

O pipeline fornece a capacidade de realizar inferências em lote ou em tempo real. Você também pode adicionar o fluxo do Data Wrangler ao SageMaker Model Registry. Para obter mais informações sobre modelos de host, consulte Endpoints multimodelo.

Importante

Você não pode exportar seu fluxo do Data Wrangler para um endpoint de inferência se ele tiver as seguintes transformações:

  • Ingressar

  • concatenar

  • Agrupar por

Se você precisar usar as transformações anteriores para preparar seus dados, use o procedimento a seguir.

Para preparar seus dados para inferência com transformações sem suporte
  1. Crie um fluxo do Data Wrangler.

  2. Aplique as transformações anteriores que não são compatíveis.

  3. Exportar os dados para um bucket do Amazon S3.

  4. Crie um fluxo de Data Wrangler separado.

  5. Importe os dados que você exportou do fluxo anterior.

  6. Aplique as transformações restantes.

  7. Crie um pipeline de inferência serial usando o caderno Jupyter que fornecemos.

Para obter informações sobre como exportar dados para um bucket do Amazon S3, consulte Exportar dados. Para obter informações sobre como abrir o caderno Jupyter usado para criar o pipeline de inferência serial, consulte Use um notebook Jupyter para criar um endpoint de inferência.

O Data Wrangler ignora as transformações que removem dados no momento da inferência. Por exemplo, o Data Wrangler ignora a transformação Lidar com valores ausentes se você usar a configuração Drop missing.

Se você reajustou as transformações em todo o seu conjunto de dados, as transformações são transferidas para seu pipeline de inferência. Por exemplo, se você usou o valor mediano para imputar valores ausentes, o valor médio do reajuste da transformação será aplicado às suas solicitações de inferência. Você pode reajustar as transformações do seu fluxo do Data Wrangler ao usar o notebook Jupyter ou ao exportar seus dados para um pipeline de inferência.

O pipeline de inferência serial suporta os seguintes tipos de dados para as cadeias de caracteres de entrada e saída. Cada tipo de dados tem um conjunto de requisitos.

Tipos de dados compatíveis
  • text/csv— o tipo de dados para strings CSV

    • A string não pode ter um cabeçalho.

    • Os atributos usados para o pipeline de inferência devem estar na mesma ordem dos atributos no conjunto de dados de treinamento.

    • Deve haver um delimitador de vírgula entre os atributos.

    • Os registros devem ser delimitados por um caractere de nova linha.

    Veja a seguir um exemplo de uma CSV string formatada de forma válida que você pode fornecer em uma solicitação de inferência.

    abc,0.0,"Doe, John",12345\ndef,1.1,"Doe, Jane",67890
  • application/json— o tipo de dados para strings JSON

    • Os atributos usados no conjunto de dados para o pipeline de inferência devem estar na mesma ordem dos atributos no conjunto de dados de treinamento.

    • Os dados devem ter um esquema específico. Você define o esquema como um único objeto instances que tem um conjunto de features. Cada objeto features representa uma observação.

    Veja a seguir um exemplo de uma JSON string formatada de forma válida que você pode fornecer em uma solicitação de inferência.

    { "instances": [ { "features": ["abc", 0.0, "Doe, John", 12345] }, { "features": ["def", 1.1, "Doe, Jane", 67890] } ] }

Use um notebook Jupyter para criar um endpoint de inferência

Use o procedimento a seguir para exportar seu fluxo do Data Wrangler para criar um pipeline de inferência.

Para criar um pipeline de inferência usando um caderno Jupyter, faça o seguinte.

  1. Escolha o + próximo ao nó que você deseja separar.

  2. Escolha Exportar fluxo de dados.

  3. Escolha SageMaker Inference Pipeline (via Jupyter Notebook).

  4. Faça o download do notebook Jupyter ou copie-o para um local do Amazon S3. Recomendamos copiá-lo para um local do Amazon S3 que você possa acessar no Studio Classic. Entre em contato com seu administrador se precisar de orientação sobre um local adequado.

  5. Executar o caderno Jupyter.

Quando você executa o caderno Jupyter, ele cria um artefato de fluxo de inferência. Um artefato de fluxo de inferência é um arquivo de fluxo do Data Wrangler com metadados adicionais usados para criar o pipeline de inferência serial. O nó que você está exportando abrange todas as transformações dos nós anteriores.

Importante

O Data Wrangler precisa do artefato do fluxo de inferência para executar o pipeline de inferência. Você não pode usar seu próprio arquivo de fluxo como artefato. Você deve criá-lo usando o procedimento anterior.

Automatize a preparação de dados usando o código Python

Para exportar todas as etapas do fluxo de dados para um arquivo Python que você possa integrar manualmente a qualquer fluxo de trabalho de processamento de dados, use o procedimento a seguir.

Use o procedimento a seguir para gerar um notebook Jupyter e executá-lo para exportar seu fluxo do Data Wrangler para o código Python.

  1. Escolha o + próximo ao nó que você deseja separar.

  2. Escolha Exportar fluxo de dados.

  3. Escolha Python Code.

  4. Faça o download do notebook Jupyter ou copie-o para um local do Amazon S3. Recomendamos copiá-lo para um local do Amazon S3 que você possa acessar no Studio Classic. Entre em contato com seu administrador se precisar de orientação sobre um local adequado.

  5. Executar o caderno Jupyter.

Pode ser necessário configurar o script Python para que seja executado no seu pipeline. Por exemplo, se você estiver executando um ambiente Spark, certifique-se de executar o script em um ambiente que tenha permissão para acessar AWS recursos.