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á.
Arquivos de Manifestos Aumentados em Trabalhos de Treinamento
Para incluir metadados com seu conjunto de dados em um trabalho de treinamento, use um arquivo manifesto aumentado. Quando usar um arquivo manifesto aumentado, seu conjunto de dados deve ser armazenado no Amazon Simple Storage Service (Amazon S3) e você deve configurar seu trabalho de treinamento para usar o conjunto de dados armazenado nele. Especifique a localização e o formato desse conjunto de dados para um ou mais Channel
. Os manifestos aumentados só oferecem apoio ao modo de entrada Pipe. Consulte a seção, InputModeem Channel
para saber mais sobre o modo de entrada de tubulação.
Ao especificar os parâmetros de um canal, você especifica um caminho para o arquivo, denominado S3Uri
. A Amazon SageMaker AI interpreta esse URI com base no especificado S3DataType
em S3DataSource
. A opção AugmentedManifestFile
define um formato de manifesto que inclui metadados com os dados de entrada. Usar um arquivo manifesto aumentado é uma alternativa ao pré-processamento quando você rotula dados. Para treinar trabalhos usando dados rotulados, você normalmente precisa pré-processar o conjunto de dados para combinar dados de entrada com metadados antes do treinamento. Se o conjunto de dados de treinamento for grande, o pré-processamento poderá ser demorado e caro.
Formato de arquivo manifesto aumentado
Um arquivo manifesto aumentado deve ser formatado em JSON Lines
Durante o treinamento, a SageMaker IA analisa cada linha JSON e envia alguns ou todos os seus atributos para o algoritmo de treinamento. Você especifica qual conteúdo de atributo deve ser transmitido e a ordem de transmissão com o parâmetro AttributeNames
da API CreateTrainingJob
. O AttributeNames
parâmetro é uma lista ordenada de nomes de atributos que a SageMaker IA procura no objeto JSON para usar como entrada de treinamento.
Por exemplo, se você listar ["line", "book"]
para AttributeNames
, os dados de entrada deverão incluir os nomes de atributos line
e book
na ordem especificada. Para este exemplo, o seguinte conteúdo do arquivo manifesto aumentado é válido:
{"author": "Herman Melville", "line": "Call me Ishmael", "book": "Moby Dick"} {"line": "It was love at first sight.", "author": "Joseph Heller", "book": "Catch-22"}
SageMaker A IA ignora nomes de atributos não listados, mesmo que eles precedam, sigam ou estejam entre os atributos listados.
Ao usar arquivos manifestos aumentados, observe as seguintes diretrizes:
-
A ordem dos atributos listados no parâmetro
AttributeNames
determina a ordem dos atributos transmitidos ao algoritmo no trabalho de treinamento. -
A lista
AttributeNames
pode ser um subconjunto de todos os atributos na linha JSON. SageMaker A IA ignora atributos não listados no arquivo. -
Você pode especificar qualquer tipo de dado permitido pelo formato JSON no
AttributeNames
, incluindo texto, numérico, matrizes de dados ou objetos. -
Para incluir um URI do S3 como um nome de atributo, adicione o sufixo
-ref
a ele.
Se um nome de atributo contiver o sufixo -ref
, o valor do atributo deverá ser um URI do S3 para um arquivo de dados acessível ao trabalho de treinamento. Por exemplo, se AttributeNames
contiver ["image-ref", "is-a-cat"]
, o seguinte exemplo mostra um arquivo de manifesto aumentado válido:
{"image-ref": "s3://amzn-s3-demo-bucket/sample01/image1.jpg", "is-a-cat": 1} {"image-ref": "s3://amzn-s3-demo-bucket/sample02/image2.jpg", "is-a-cat": 0}
No caso da primeira linha JSON desse arquivo de manifesto, o SageMaker AI recupera o image1.jpg
arquivo s3://amzn-s3-demo-bucket/sample01/
e a representação em cadeia de caracteres do is-a-cat
atributo "1"
para classificação da imagem.
dica
Para criar um arquivo de manifesto aumentado, use o Amazon SageMaker Ground Truth e crie um trabalho de rotulagem. Para obter mais informações sobre o resultado de um trabalho de rotulagem, consulte Rotulando dados de saída do trabalho.
Use um Arquivo de Manifesto Aumentado
As seções a seguir mostram como usar arquivos de manifesto aumentados em seus trabalhos de SageMaker treinamento da Amazon, seja com o console de SageMaker IA ou programaticamente usando o SDK do Python SageMaker .
Usar um arquivo de manifesto aumentado (console)
Para concluir este procedimento, você precisa:
-
Da URL do bucket do S3 onde armazenou o arquivo manifesto aumentado.
-
Armazenar os dados listados no arquivo manifesto aumentado em um bucket do S3.
-
O URL do bucket do S3 no qual o resultado do trabalho deve ser armazenado.
Usar um arquivo manifesto aumentado em um trabalho de treinamento (console)
Abra o console do Amazon SageMaker AI em https://console.aws.amazon.com/sagemaker/
. -
No painel de navegação, escolha Treinamento e Trabalhos de treinamento.
-
Escolha Criar trabalho de treinamento.
-
Forneça um nome para o trabalho de treinamento. O nome deve ser exclusivo dentro de uma AWS região em uma AWS conta. Ele pode ter de 1 a 63 caracteres. Caracteres válidos: a-z, A-Z, 0-9 e . : + = @ _ % - (hífen).
-
Escolha o algoritmo que você deseja usar. Para obter informações sobre algoritmos integrados compatíveis, consulte Algoritmos integrados e modelos pré-treinados na Amazon SageMaker. Se quiser usar um algoritmo personalizado, verifique se ele é compatível com o modo Pipe.
-
(Opcional) Em Configuração de recursos, aceite os valores padrão ou, para reduzir o tempo de computação, aumente o consumo de recursos.
-
(Opcional) Em Tipo de instância, escolha o tipo de instância de computação de ML que você deseja usar. Na maioria dos casos, ml.m4.xlarge é suficiente.
-
Para Contagem de instâncias, use o padrão,
1
. -
(Opcional) Em Volume adicional por instância (GB), escolha o tamanho do volume de armazenamento de ML que você deseja provisionar. Na maioria dos casos, você pode usar o padrão,
1
. Se estiver usando um conjunto de dados grande, use um tamanho maior.
-
-
Forneça informações sobre os dados de entrada para o conjunto de dados de treinamento.
-
Em Nome do canal, aceite o padrão (
train
) ou insira um nome mais significativo, comotraining-augmented-manifest-file
. -
Para InputMode, escolha Pipe.
-
Para o tipo de distribuição de dados S3, escolha FullyReplicated. Quando o treinamento é incremental, a replicação completa faz com que cada instância de computação de ML use uma cópia completa do conjunto de dados expandido. Para algoritmos baseados em neural, como Algoritmo de Modelo de tópicos neurais (NTM), escolha
ShardedByS3Key
. -
Se os dados especificados no arquivo manifesto aumentado estiverem descompactados, defina o Tipo de compressão como Nenhum. Se os dados estiverem compactados usando gzip, defina-os como Gzip.
-
(Opcional) Em Tipo de conteúdo, especifique o tipo MIME apropriado. O Tipo de conteúdo é o tipo MIME (Multipurpose Internet Mail Extension) dos dados.
-
Para Wrapper de registro, se o conjunto de dados especificado no arquivo manifesto aumentado for salvo no formato RecordIO, escolha RecordIO. Se o seu conjunto de dados não estiver salvo como um arquivo formatado com RecordIO, escolha Nenhum.
-
Para o tipo de dados S3, escolha AugmentedManifestFile.
-
Para Localização do S3, forneça o caminho para o bucket onde você armazenou o arquivo manifesto aumentado.
-
Para nomes de AugmentedManifestFile atributos, especifique o nome de um atributo que você deseja usar. O nome do atributo deve estar presente no arquivo manifesto aumentado e faz distinção entre maiúsculas e minúsculas.
-
(Opcional) Para adicionar mais nomes de atributos, escolha Adicionar linha e especifique outro nome de atributo para cada atributo.
-
(Opcional) Para ajustar a ordem dos nomes de atributos, escolha os botões para cima ou para baixo ao lado dos nomes. Ao usar um arquivo manifesto aumentado, a ordem dos nomes de atributos especificados é importante.
-
Selecione Concluído.
-
-
Para Configuração dos dados de saída, forneça as seguintes informações:
-
Para Localização do S3, digite o caminho para o bucket do S3 no qual você deseja armazenar os dados de saída.
-
(Opcional) Você pode usar sua chave de criptografia AWS Key Management Service (AWS KMS) para criptografar os dados de saída em repouso. Para Chave de criptografia, forneça o ID da chave ou seu número de recurso da Amazon (ARN). Para obter mais informações, consulte Chaves de criptografia gerenciadas por KMS.
-
-
(Opcional) Para Tags, adicione uma ou mais tags ao trabalho de treinamento. Uma tag é um metadado que você pode definir e atribuir a recursos AWS . Nesse caso, você pode usar tags para ajudá-lo a gerenciar seus trabalhos de treinamento. Uma tag consiste em uma chave e um valor que você define. Por exemplo, você pode querer criar uma tag com
Project
como uma chave e um valor que faça referência a um projeto relacionado ao trabalho de treinamento, comoHome value forecasts
. -
Escolha Criar trabalho de treinamento. SageMaker A IA cria e executa o trabalho de treinamento.
Após a conclusão do trabalho de treinamento, a SageMaker IA armazena os artefatos do modelo no bucket cujo caminho você forneceu para o caminho de saída do S3 no campo Configuração de dados de saída. Para implantar o modelo e obter predições, consulte Implante o modelo na Amazon EC2.
Usar um arquivo manifesto aumentado (API)
Veja a seguir como treinar um modelo com um arquivo de manifesto aumentado usando a biblioteca Python de alto nível da SageMaker AI:
import sagemaker # Create a model object set to using "Pipe" mode. model = sagemaker.estimator.Estimator(
training_image
, role, instance_count=1, instance_type='ml.p3.2xlarge', volume_size = 50, max_run = 360000, input_mode = 'Pipe', output_path=s3_output_location
, sagemaker_session=session
) # Create a train data channel with S3_data_type as 'AugmentedManifestFile' and attribute names. train_data = sagemaker.inputs.TrainingInput(your_augmented_manifest_file
, distribution='FullyReplicated', content_type='application/x-recordio', s3_data_type='AugmentedManifestFile', attribute_names=['source-ref'
,'annotations'
], input_mode='Pipe', record_wrapping='RecordIO' ) data_channels = {'train': train_data} # Train a model. model.fit(inputs=data_channels, logs=True)
Após a conclusão do trabalho de treinamento, a SageMaker IA armazena os artefatos do modelo no bucket cujo caminho você forneceu para o caminho de saída do S3 no campo Configuração de dados de saída. Para implantar o modelo e obter predições, consulte Implante o modelo na Amazon EC2.