Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
File manifesto aumentati per lavori di formazione
Per includere i metadati con il set di dati in un processo di addestramento, utilizza un file manifest aumentato. Quando utilizzi un file manifest aumentato, il set di dati deve essere archiviato in Amazon Simple Storage Service (Amazon S3) e devi configurare il processo di addestramento per l'utilizzo di questo set di dati. Puoi specificare il percorso e il formato di questo set di dati per uno o più Channel
. I manifest aumentati possono supportare solo la modalità di input Pipe. Vedi la sezione, InputModein Channel
per saperne di più sulla modalità di input pipe.
Quando specifichi i parametri di un canale, devi specificare un percorso per il file, denominato S3Uri
. Amazon lo SageMaker interpreta in URI base a quanto specificato S3DataType
in S3DataSource
. L'opzione AugmentedManifestFile
definisce un formato manifest che include i metadati con i dati di input. L'utilizzo di un file manifest aumentato è un'alternativa alla pre-elaborazione quando si hanno dati etichettati. Per i processi di addestramento che utilizzano dati etichettati, in genere devi pre-elaborare il set di dati per combinare i dati di input con i metadati prima dell’addestramento. Se il set di dati di addestramento è di grandi dimensioni, la pre-elaborazione può essere lunga e costosa.
Formato del file manifest aumentato
Un file manifesto aumentato deve essere formattato in JSON formato Lines.
Durante l'allenamento, SageMaker analizza ogni JSON riga e invia alcuni o tutti i suoi attributi all'algoritmo di addestramento. È possibile specificare i contenuti degli attributi da trasmettere e l'ordine in cui passarli con il AttributeNames
parametro di. CreateTrainingJob
API Il AttributeNames
parametro è un elenco ordinato di nomi di attributi da SageMaker cercare nell'JSONoggetto da utilizzare come input di addestramento.
Ad esempio, se specifichi ["line", "book"]
per AttributeNames
, i dati di input devono includere i nomi attributo di line
e book
nell'ordine specificato. Per questo esempio, è valido il contenuto del file manifest aumentato seguente:
{"author": "Herman Melville", "line": "Call me Ishmael", "book": "Moby Dick"} {"line": "It was love at first sight.", "author": "Joseph Heller", "book": "Catch-22"}
SageMaker ignora i nomi degli attributi non elencati anche se precedono, seguono o si trovano tra gli attributi elencati.
Quando utilizzi i file manifest aumentati, osserva le seguenti indicazioni:
-
L'ordine degli attributi elencati nel parametro
AttributeNames
determina l'ordine degli attributi passati all'algoritmo nel processo di addestramento. -
L'elenco
AttributeNames
può essere un sottoinsieme di tutti gli attributi della riga. JSON SageMaker ignora gli attributi non elencati nel file. -
È possibile specificare qualsiasi tipo di dati consentito dal JSON formato in
AttributeNames
, inclusi testo, numeri, matrici di dati o oggetti. -
Per includere un S3 URI come nome di attributo, aggiungete il suffisso
-ref
.
Se il nome di un attributo contiene il suffisso-ref
, il valore dell'attributo deve essere un S3 URI in un file di dati accessibile al processo di formazione. Ad esempio, se AttributeNames
contiene ["image-ref", "is-a-cat"]
, l'esempio seguente mostra un file manifest aumentato valido:
{"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}
Nel caso della prima JSON riga di questo file manifesto, SageMaker recupera il file s3://amzn-s3-demo-bucket/sample01/
e la rappresentazione in image1.jpg
formato stringa dell'is-a-cat
attributo "1"
per la classificazione delle immagini.
Suggerimento
Per creare un file manifesto aumentato, usa Amazon SageMaker Ground Truth e crea un processo di etichettatura. Per ulteriori informazioni sull'output di un processo di etichettatura, consulta Etichettatura dei dati di output del lavoro.
Usa un file manifesto aumentato
Le seguenti sezioni mostrano come utilizzare i file manifest aumentati nei tuoi lavori di SageMaker formazione su Amazon, con la SageMaker console o a livello di codice utilizzando Python. SageMaker SDK
Utilizzo di un file manifest aumentato (console)
Per completare questa procedura, avrai bisogno di:
-
Il URL bucket S3 in cui hai archiviato il file manifesto aumentato.
-
Archiviare i dati elencati nel file manifest aumentato in un bucket S3.
-
Il URL bucket S3 in cui desideri archiviare l'output del lavoro.
Per utilizzare un file manifest aumentato in un processo di addestramento (console)
Apri la SageMaker console Amazon all'indirizzo https://console.aws.amazon.com/sagemaker/
. -
Nel riquadro di navigazione, scegliere Addestramento, quindi Processi di addestramento.
-
Scegliere Crea processo di addestramento.
-
Fornire un nome per il processo di addestramento. Il nome deve essere univoco all'interno di una AWS regione di un AWS account. Può contenere da 1 a 63 caratteri. I caratteri validi sono a-z, A-Z, 0-9 e . : + = @ _ % - (trattino).
-
Scegliere l'algoritmo da utilizzare. Per informazioni sugli algoritmi integrati supportati, consulta Algoritmi integrati e modelli preaddestrati in Amazon SageMaker. Per utilizzare un algoritmo personalizzato, verificare che sia compatibile con la modalità Pipe.
-
(Facoltativo) Per Resource configuration (Configurazione delle risorse), accettare i valori predefiniti oppure, per ridurre il tempo di calcolo, aumentare l'utilizzo delle risorse.
-
(Facoltativo) Per Tipo di istanza, scegliere il tipo di istanza di calcolo ML da utilizzare. Nella maggior parte dei casi, ml.m4.xlarge è sufficiente.
-
Per Instance count (Conteggio istanze), utilizzare l'impostazione predefinita
1
. -
(Facoltativo) Per Volume aggiuntivo per istanza in GB, scegliere le dimensioni del volume di storage ML da assegnare. Nella maggior parte dei casi, è possibile utilizzare l'impostazione predefinita
1
. Se si utilizza un set di dati più grande, scegliere una dimensione maggiore.
-
-
Fornire informazioni sui dati di input per il set di dati di addestramento.
-
Per Channel name (Nome canale), accettare l'impostazione predefinita (
train
) oppure inserire un nome più significativo, ad esempiotraining-augmented-manifest-file
. -
Per InputMode, scegli Pipe.
-
Per il tipo di distribuzione dei dati S3, scegli FullyReplicated. Se si esegue l’addestramento incrementale, la replica completa comporta che ogni istanza di calcolo ML utilizza una copia completa del set di dati espanso. Per gli algoritmi basati su reti neurali, ad esempio Algoritmo Neural Topic Model (NTM), scegliere
ShardedByS3Key
. -
Se i dati specificati nel file manifest aumentato non sono compressi, impostare Compression type (Tipo di compressione) su None (Nessuno). Se i dati sono stati compressi con gzip, impostarli Gzip.
-
(Facoltativo) Per Tipo di contenuto, specifica il MIME tipo appropriato. Il tipo di contenuto è il tipo di estensione multiuso per la posta Internet (MIME) dei dati.
-
Per Record wrapper (Wrapper dei record), se il set di dati specificato nel file manifest aumentato viene salvato in formato RecordIO, scegliere RecordIO. Se il set di dati non viene salvato come file in formato RecordIO, scegliere None (Nessuno).
-
Per il tipo di dati S3, scegli. AugmentedManifestFile
-
Per S3 location (Percorso S3), fornire il percorso del bucket dove è archiviato il file manifest aumentato.
-
Per i nomi AugmentedManifestFile degli attributi, specifica il nome di un attributo che desideri utilizzare. Il nome attributo deve essere presente all'interno del file manifest aumentato e prevede una distinzione tra lettere maiuscole e minuscole.
-
(Facoltativo) Per aggiungere più nomi attributo, scegliere Add row (Aggiungi riga) e specificare un altro nome per ogni attributo.
-
(Facoltativo) Per regolare l'ordine dei nomi attributo, scegliere i pulsanti SU e GIÙ accanto ai nomi. Quando si utilizza un file manifest aumentato, l'ordine dei nomi attributo specificato è importante.
-
Seleziona Fatto.
-
-
Per Configurazione dei dati di output, specificare le seguenti informazioni:
-
Per Percorso S3, digitare il percorso del bucket S3 in cui archiviare i dati di output.
-
(Facoltativo) È possibile utilizzare la chiave di crittografia AWS Key Management Service (AWS KMS) per crittografare i dati di output inattivi. Per la chiave di crittografia, fornisci l'ID della chiave o il relativo Amazon Resource Number (ARN). Per ulteriori informazioni, consulta KMS-Managed Encryption Keys.
-
-
(Facoltativo) Per Tag, aggiungere uno o più tag per gestire il processo di addestramento. Un tag è costituito da metadati che è possibile definire e assegnare alle risorse AWS . In questo caso, è possibile utilizzare i tag per semplificare la gestione dei processi di addestramento. Un tag è composto da una chiave e da un valore definiti dall'utente. Ad esempio, è possibile creare un tag con
Project
come chiave e un valore che si riferisce a un progetto correlato al processo di addestramento, ad esempioHome value forecasts
. -
Scegli Crea un lavoro di formazione. SageMaker crea e gestisce il processo di formazione.
Al termine del processo di formazione, SageMaker memorizza gli artefatti del modello nel bucket il cui percorso è stato fornito per il percorso di output S3 nel campo di configurazione dei dati di output. Per distribuire il modello per ottenere le previsioni, consulta Implementa il modello su Amazon EC2.
Usa un file manifesto aumentato () API
Quanto segue mostra come addestrare un modello con un file manifest aumentato utilizzando la libreria SageMaker Python di alto livello:
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)
Al termine del processo di formazione, SageMaker memorizza gli artefatti del modello nel bucket il cui percorso è stato fornito per il percorso di output S3 nel campo di configurazione dei dati di output. Per distribuire il modello per ottenere le previsioni, consulta Implementa il modello su Amazon EC2.