Usando treinamento incremental no AWS Clean Rooms ML - AWS Clean Rooms

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

Usando treinamento incremental no AWS Clean Rooms ML

Pré-requisitos:

  • E Conta da AWS com acesso a AWS Clean Rooms

  • Um modelo treinado existente em uma colaboração

  • Um conjunto de dados novo ou atualizado para treinamento incremental

  • Permissões apropriadas para criar e gerenciar modelos de ML na colaboração

  • Familiaridade com os hiperparâmetros e a configuração do modelo existente

Com o treinamento incremental, você pode usar os artefatos de um modelo existente e um conjunto de dados atualizado para treinar um novo modelo. O treinamento incremental economiza tempo e recursos.

Use o treinamento incremental para:

  • Treine um novo modelo usando um conjunto de dados expandido que tenha um padrão subjacente que não foi considerado no treinamento anterior.

  • Treine várias variantes de um modelo, com hiperparâmetros diferentes ou usando conjuntos de dados diferentes.

Console
Para executar um trabalho de treinamento incremental (console)
  1. Faça login no AWS Management Console e abra o AWS Clean Rooms console em https://console.aws.amazon.com/cleanrooms.

  2. No painel de navegação à esquerda, escolha Colaborações.

  3. Na página Colaborações, escolha a colaboração na qual existem os artefatos do modelo que você deseja usar para treinamento incremental.

  4. Depois que a colaboração for aberta, escolha a guia Modelos de ML.

  5. Em Modelos de ML personalizados, na seção Modelos treinados, escolha o botão de rádio ao lado do modelo treinado que você deseja treinar incrementalmente.

  6. Na página Visão geral, em Versões,

    1. Escolha o botão de rádio ao lado do modelo treinado que você deseja treinar incrementalmente.

    2. Escolha Trem na versão.

  7. Na página Criar modelo treinado a partir da versão, em Versão do modelo treinado, escolha a versão.

    A versão do modelo básico é selecionada automaticamente. Você pode alterar essa versão se existirem outras versões.

  8. Para obter detalhes do modelo treinado, insira o seguinte:

    1. Em Nome, insira um nome exclusivo para o modelo na colaboração.

    2. (Opcional) Em Descrição, insira uma descrição do modelo treinado.

    3. Para o modo de entrada de dados de treinamento, escolha uma das seguintes opções:

      • Selecione Arquivo se você tiver um conjunto de dados menor que possa caber no volume de armazenamento de ML e preferir o acesso tradicional ao sistema de arquivos para seu script de treinamento.

      • Selecione Pipe para grandes conjuntos de dados para transmitir dados diretamente do S3, evitando a necessidade de baixar tudo em disco, o que pode melhorar a velocidade de treinamento e reduzir os requisitos de armazenamento.

      • Selecione FastFilese quiser combinar os benefícios do streaming do S3 com o acesso ao sistema de arquivos, especialmente para dados lidos sequencialmente ou ao lidar com menos arquivos para tempos de inicialização mais rápidos.

    4. Em Nome do canal de treinamento incremental, insira um nome para o canal de treinamento incremental

      nota

      Se você especificar o nome do canal de treinamento incremental sem um ID de versão, o sistema usará o modelo básico para treinamento incremental.

  9. Para obter detalhes do canal de entrada ML, faça o seguinte:

    1. Para o canal de entrada ML, especifique o canal de entrada ML que fornece dados para o algoritmo do modelo.

      Para adicionar outro canal, escolha Adicionar outro canal de entrada de ML. Você pode adicionar até 19 canais de entrada de ML adicionais.

    2. Em Nome do canal, insira o nome do canal de entrada ML.

    3. Para o tipo de distribuição de dados do Amazon S3, escolha uma das seguintes opções:

      • Selecione Totalmente replicado para fornecer a cada instância de treinamento uma cópia completa do seu conjunto de dados. Isso funciona melhor quando seu conjunto de dados é pequeno o suficiente para caber na memória ou quando cada instância precisa acessar todos os dados.

      • Selecione Sharded by S3 key para dividir seu conjunto de dados entre instâncias de treinamento com base nas chaves S3. Cada instância recebe cerca de 1/n do total de objetos do S3, onde 'n' é o número de instâncias. Isso funciona melhor para grandes conjuntos de dados que você deseja processar paralelamente.

      nota

      Considere o tamanho do conjunto de dados e os requisitos de treinamento ao selecionar um tipo de distribuição. Totalmente replicado fornece acesso completo aos dados, mas requer mais armazenamento, enquanto o Sharded by S3 key permite o processamento distribuído de grandes conjuntos de dados.

  10. Em Duração máxima do treinamento, escolha a quantidade máxima de tempo em que você deseja treinar seu modelo.

  11. Para Hiperparâmetros, especifique quaisquer parâmetros específicos do algoritmo e seus valores pretendidos. Os hiperparâmetros são específicos para o modelo que está sendo treinado e são usados para ajustar o treinamento do modelo.

  12. Para variáveis de ambiente, especifique quaisquer variáveis específicas do algoritmo e seus valores pretendidos. As variáveis de ambiente são definidas no contêiner do Docker.

  13. Em Criptografia, para usar um personalizado AWS KMS key, marque a caixa de seleção Criptografar segredo com uma chave KMS personalizada.

  14. Em Configuração de EC2 recursos, especifique as informações sobre os recursos computacionais usados para treinamento de modelos.

    1. Em Tipo de instância, escolha o tipo de instância que você deseja executar.

    2. Em Contagem de instâncias, insira o número de instâncias.

    3. Em Tamanho do volume em GB, insira o tamanho do volume de armazenamento ML.

  15. Escolha Criar modelo treinado a partir da versão.

API

Para executar um trabalho de treinamento incremental (API)

Execute o código a seguir com seus parâmetros específicos:

import boto3 acr_ml_client= boto3.client('cleanroomsml') acr_ml_client.create_trained_model( membershipIdentifier= 'membership_id', configuredModelAlgorithmAssociationArn = 'arn:aws:cleanrooms-ml:region:account:membership/membershipIdentifier/configured-model-algorithm-association/identifier', name='trained_model_name', resourceConfig={ 'instanceType': 'ml.m5.xlarge', 'volumeSizeInGB': 1 }, incrementalTrainingDataChannels=[ { 'trainedModelArn': trained_model_arn, 'channelName': 'channel_name' }, ] dataChannels=[ { 'mlInputChannelArn': channel_arn_1, 'channelName': 'channel_name' }, { 'mlInputChannelArn': channel_arn_2, 'channelName': 'channel_name' } ] )
nota

Limite: máximo de 20 canais no total (incluindo ambos dataChannels eincrementalTrainingDataChannels).

nota

Depois que o modelo treinado for criado, você não poderá editá-lo. Para fazer alterações, exclua o modelo treinado e crie um novo.