Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

XGBoost algoritmo com Amazon SageMaker AI

Modo de foco
XGBoost algoritmo com Amazon SageMaker AI - 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á.

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

O XGBoost(eXtreme Gradient Boosting) é uma implementação de código aberto popular e eficiente do algoritmo de árvores com aumento de gradiente. O aumento de gradiente é um algoritmo de aprendizado supervisionado que procura prever com precisão uma variável de destino combinando várias estimativas de um conjunto de modelos mais simples. O XGBoost algoritmo tem um bom desempenho em competições de aprendizado de máquina pelos seguintes motivos:

  • Seu manuseio robusto de uma variedade de tipos de dados, relacionamentos e distribuições.

  • Variedade de hiperparâmetros que você pode ajustar.

Você pode usar XGBoost para problemas de regressão, classificação (binária e multiclasse) e classificação.

Você pode usar a nova versão do XGBoost algoritmo da seguinte forma:

  • Um algoritmo integrado de SageMaker IA da Amazon.

  • Em uma estrutura para executar scripts de treinamento em seus ambientes locais.

Essa implementação usa um espaço menor na memória, melhor registro em log, validação aprimorada de hiperparâmetros e um conjunto expandido de métricas em relação às versões originais. Ele fornece um XGBoost estimator que executa um script de treinamento em um XGBoost ambiente gerenciado. A versão atual do SageMaker AI XGBoost é baseada nas XGBoost versões originais 1.0, 1.2, 1.3, 1.5 e 1.7.

Para obter mais informações sobre o XGBoost algoritmo Amazon SageMaker AI, consulte as seguintes postagens no blog:

Versões aceitas

  • Modo de framework (código aberto): 1.2-1, 1.2-2, 1.3-1, 1.5-1, 1.7-1

  • Modo de algoritmo: 1.2-1, 1.2-2, 1.3-1, 1.5-1, 1.7-1

Atenção

Devido à capacidade computacional necessária, a versão 1.7-1 do SageMaker AI não XGBoost é compatível com instâncias de GPU da família de instâncias P2 para treinamento ou inferência.

Importante

Ao recuperar o URI da XGBoost imagem de SageMaker IA, não use :latest ou :1 para a tag do URI da imagem. Você deve especificar um deles Versões aceitas para escolher o XGBoost contêiner SageMaker gerenciado por IA com a versão do XGBoost pacote nativo que você deseja usar. Para encontrar a versão do pacote migrada para os XGBoost contêineres de SageMaker IA, consulte Docker Registry Paths and Example Code. Em seguida Região da AWS, escolha seu e navegue até a seção XGBoost (algoritmo).

Atenção

As versões XGBoost 0.90 estão obsoletas. O suporte para atualizações de segurança ou correções de erros para XGBoost 0.90 foi descontinuado. É altamente recomendável que você atualize a XGBoost versão para uma das versões mais recentes.

nota

XGBoost A v1.1 não é compatível com SageMaker IA. XGBoost 1.1 tem uma capacidade interrompida de executar previsões quando a entrada de teste tem menos recursos do que os dados de treinamento nas entradas LIBSVM. Esse recurso foi restaurado na XGBoost v1.2. Considere usar o SageMaker AI XGBoost 1.2-2 ou posterior.

nota

Você pode usar a XGBoost v1.0-1, mas ela não é oficialmente suportada.

EC2 recomendação de instância para o XGBoost algoritmo

SageMaker A IA XGBoost suporta treinamento e inferência de CPU e GPU. As recomendações de instância dependem das necessidades de treinamento e inferência, bem como da versão do XGBoost algoritmo. Escolha uma das seguintes opções para obter mais informações:

Treinamento

O XGBoost algoritmo de SageMaker IA oferece suporte ao treinamento de CPU e GPU.

Treinamento de CPU

SageMaker AI XGBoost 1.0-1 ou anterior apenas trens usando. CPUs É um algoritmo de uso intensivo de memória (ao contrário dos de uso intensivo de computação). Portanto, uma instância de computação de uso geral (por exemplo, M5) é uma opção melhor do que uma instância otimizada para computação (por exemplo, C4). Além disso, recomendamos que você tenha memória total suficiente em instâncias específicas para armazenar os dados de treinamento. Ele possibilita o uso de espaço em disco para lidar com dados que não cabem na memória principal. Isso é resultado do out-of-core recurso disponível com o modo de entrada libsvm. Mesmo assim, gravar arquivos de cache no disco diminui o tempo de processamento do algoritmo.

Treinamento de GPU

SageMaker XGBoost A versão AI 1.2-2 ou posterior oferece suporte ao treinamento em GPU. Apesar dos custos mais altos por instância, GPUs treine mais rapidamente, tornando-os mais econômicos.

SageMaker XGBoost A versão 1.2-2 ou posterior do AI oferece suporte às famílias de instâncias de GPU P2, P3, G4dn e G5.

SageMaker XGBoost A versão 1.7-1 ou posterior do AI oferece suporte às famílias de instâncias de GPU P3, G4dn e G5. Observe que, devido aos requisitos de capacidade computacional, a versão 1.7-1 ou posterior não oferece apoio à família de instâncias P2.

Para aproveitar as vantagens do treinamento em GPU:

  • Especifique o tipo de instância como uma das instâncias da GPU (por exemplo, P3)

  • Defina o tree_method hiperparâmetro como gpu_hist em seu script existente XGBoost

Treinamento distribuído

SageMaker A IA XGBoost oferece suporte a instâncias de CPU e GPU para treinamento distribuído.

Treinamento de CPU distribuído

Para executar o treinamento de CPU em várias instâncias, defina o parâmetro instance_count do estimador como um valor maior que um. Os dados de entrada devem ser divididos entre o número total de instâncias.

Divida os dados de entrada entre as instâncias

Divida os dados de entrada usando as seguintes etapas:

  1. Divida os dados de entrada em arquivos menores. O número de arquivos deve ser pelo menos igual ao número de instâncias usadas para o treinamento distribuído. O uso de vários arquivos menores em vez de um arquivo grande também diminui o tempo de download dos dados para o trabalho de treinamento.

  2. Ao criar seu TrainingInput, defina o parâmetro de distribuição comoShardedByS3Key. Dessa forma, cada instância recebe aproximadamente 1/n do número de arquivos no S3 se houver n instâncias especificadas no trabalho de treinamento.

Treinamento de GPU distribuído

Você pode usar o treinamento distribuído com instâncias de GPU única ou várias GPUs.

Treinamento distribuído com instâncias de GPU única

SageMaker XGBoost As versões de IA 1.2-2 a 1.3-1 oferecem suporte apenas ao treinamento de instância de GPU única. Isso significa que, mesmo que você selecione uma instância com várias GPUs, somente uma GPU será usada por instância.

Os dados de entrada devem ser divididos entre o número total de instâncias.

  • Você usa XGBoost as versões 1.2-2 a 1.3-1.

  • Você não precisa usar instâncias de várias GPUs.

Para obter mais informações, consulte Divida os dados de entrada entre as instâncias.

nota

As versões 1.2-2 a 1.3-1 do SageMaker AI usam XGBoost apenas uma GPU por instância, mesmo se você escolher uma instância com várias GPUs.

Treinamento distribuído com instâncias de várias GPUs

A partir da versão 1.5-1, a SageMaker IA XGBoost oferece treinamento distribuído em GPU com o Dask. Com o Dask, você pode utilizar tudo GPUs ao usar uma ou mais instâncias com várias GPUs. O Dask também funciona ao usar instâncias de várias GPUs.

Treine com o Dask usando as seguintes etapas:

  1. Omita o distribution parâmetro em seu TrainingInputou defina-o como. FullyReplicated

  2. Ao definir seus hiperparâmetros, defina use_dask_gpu_training como "true".

Importante

O treinamento distribuído com o Dask oferece apoio apenas para formatos de entrada CSV e Parquet. Se você usar outros formatos de dados, como LIBSVM ou PROTOBUF, o trabalho de treinamento falhará.

Para dados do Parquet, verifique se os nomes das colunas estão salvos como cadeias de caracteres. As colunas com nomes de outros tipos de dados não serão carregadas.

Importante

O treinamento distribuído com o Dask não oferece apoio para o modo pipe. Se o modo pipe for especificado, o trabalho de treinamento falhará.

Há algumas considerações que você deve considerar ao treinar SageMaker IA XGBoost com o Dask. Lembre-se de dividir seus dados em arquivos menores. O Dask lê cada arquivo Parquet como uma partição. Há um operador do Dask para cada GPU. Como resultado, o número de arquivos deve ser maior que o número total de GPUs (contagem de instâncias * número de GPUs por instância). Ter um número muito grande de arquivos também pode prejudicar o desempenho. Para obter mais informações, consulte Práticas recomendadas do Dask.

Variações na saída

O tree_method hiperparâmetro especificado determina o algoritmo usado para XGBoost treinamento. Os métodos de árvore approx, hist e gpu_hist são todos métodos aproximados e usam esboços para cálculo de quantil. Para obter mais informações, consulte Métodos de árvore na XGBoost documentação. O esboço é um algoritmo aproximado. Portanto, você pode esperar variações no modelo dependendo de fatores como o número de operadores escolhidos para o treinamento distribuído. A importância da variação depende dos dados.

Inferência

SageMaker A IA XGBoost oferece suporte a instâncias de CPU e GPU para inferência. Para obter informações sobre os tipos de instância para inferência, consulte Tipos de instância do Amazon SageMaker AI ML.

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.