View a markdown version of this page

Como funciona a peneiração SageMaker inteligente - 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á.

Como funciona a peneiração SageMaker inteligente

O objetivo da filtragem SageMaker inteligente é filtrar seus dados de treinamento durante o processo de treinamento e fornecer apenas amostras mais informativas ao modelo. Durante o treinamento típico com PyTorch, os dados são enviados iterativamente em lotes para o circuito de treinamento e para dispositivos aceleradores (como GPUs ou chips Trainium) pelo. PyTorch DataLoader SageMaker a peneiração inteligente é implementada nesse estágio de carregamento de dados e, portanto, é independente de qualquer pré-processamento de dados upstream em seu pipeline de treinamento. SageMaker O smart sifting usa seu modelo e sua função de perda especificada pelo usuário para fazer uma passagem avançada avaliativa de cada amostra de dados à medida que ela é carregada. As amostras que retornam valores de baixa perda têm menos impacto no aprendizado do modelo e, portanto, são excluídas do treinamento, porque já é fácil para o modelo fazer a predição correta sobre elas com alta confiança. Enquanto isso, essas amostras de perda relativamente alta são o que o modelo ainda precisa aprender, então elas são mantidas para treinamento. Uma entrada importante que você pode definir para filtragem SageMaker inteligente é a proporção de dados a serem excluídos. Por exemplo, ao definir a proporção para 25%, as amostras distribuídas no quartil mais baixo da distribuição da perda (retiradas de um número especificado pelo usuário de amostras anteriores) são excluídas do treinamento. High-lossas amostras são acumuladas em um lote de dados refinado. O lote de dados refinado é enviado para o ciclo de treinamento (avanço e retrocesso de passagem), e o modelo aprende e treina no lote de dados refinado.

O diagrama a seguir mostra uma visão geral de como o algoritmo de peneiração SageMaker inteligente foi projetado.

Diagrama de arquitetura de como a peneiração SageMaker inteligente opera durante o treinamento à medida que os dados são carregados.

Resumindo, a peneiração SageMaker inteligente opera durante o treinamento à medida que os dados são carregados. O algoritmo de filtragem SageMaker inteligente executa o cálculo das perdas nos lotes e filtra os dados que não melhoram antes da passagem para frente e para trás de cada iteração. O lote de dados refinado é então usado para avançar e retroceder.

nota

A filtragem inteligente de dados na SageMaker IA usa passes avançados adicionais para analisar e filtrar seus dados de treinamento. Por sua vez, há menos retrocessos, pois dados menos impactantes são excluídos do seu trabalho de treinamento. Por esse motivo, os modelos que têm retrocessos longos ou caros obtêm os maiores ganhos de eficiência ao usar a seleção inteligente. Enquanto isso, se o avanço do seu modelo demorar mais do que o retrocesso, a sobrecarga poderá aumentar o tempo total de treinamento. Para medir o tempo gasto em cada passagem, você pode executar um trabalho de treinamento piloto e coletar logs que registram o tempo nos processos. Considere também usar o SageMaker Profiler, que fornece ferramentas de criação de perfil e aplicativos de interface do usuário. Para saber mais, consulte Amazon SageMaker Profiler.

SageMaker O smart sifting funciona para tarefas de PyTorch-based treinamento com o paralelismo clássico de dados distribuídos, que faz com que as réplicas de modelo em cada GPU funcionem e funcionem. AllReduce Ele funciona com o PyTorch DDP e a biblioteca paralela de dados distribuídos de SageMaker IA.