Creazione di una risorsa algoritmo - Amazon SageMaker AI

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

Creazione di una risorsa algoritmo

Puoi creare una risorsa algoritmica da utilizzare con i lavori di formazione in Amazon SageMaker AI e pubblicarla su Marketplace AWS. Le sezioni seguenti spiegano come eseguire questa operazione utilizzando AWS Management Console e l' SageMaker API.

Per creare una risorsa algoritmica, specificate le seguenti informazioni:

  • Il container Docker contenente il codice di addestramento e, facoltativamente, di inferenza.

  • La configurazione dei dati di input previsti dall'algoritmo per l’addestramento.

  • Gli iperparametri supportati dal tuo algoritmo.

  • Metriche che il tuo algoritmo invia ad Amazon CloudWatch durante i lavori di formazione.

  • I tipi di istanza supportati dall'algoritmo per l’addestramento e l'inferenza e se supporta l’addestramento distribuito su più istanze.

  • Profili di convalida, ovvero processi di formazione utilizzati dall' SageMaker IA per testare il codice di addestramento dell'algoritmo e processi di trasformazione in batch eseguiti dall' SageMaker IA per testare il codice di inferenza dell'algoritmo.

    Per garantire che acquirenti e venditori possano avere la certezza che i prodotti funzionino nell' SageMaker intelligenza artificiale, ti chiediamo di convalidare i tuoi algoritmi prima di pubblicarli. Marketplace AWS Puoi mettere in vendita i prodotti Marketplace AWS solo se la convalida ha esito positivo. Per convalidare i tuoi algoritmi, SageMaker AI utilizza il tuo profilo di convalida e i dati di esempio per eseguire le seguenti attività di convalida:

    1. Crea un processo di formazione nel tuo account per verificare che la tua immagine di formazione funzioni con l'intelligenza artificiale. SageMaker

    2. Se è stato incluso il codice di inferenza nell'algoritmo, crea un modello nell'account usando l'immagine di inferenza dell'algoritmo e gli artefatti del modello prodotti dal processo di addestramento.

    3. Se hai incluso il codice di inferenza nell'algoritmo, crea un processo di trasformazione nel tuo account utilizzando il modello per verificare che l'immagine di inferenza funzioni con SageMaker l'intelligenza artificiale.

    Quando pubblichi il tuo prodotto su Marketplace AWS, gli input e gli output di questo processo di convalida rimangono parte integrante del prodotto e vengono messi a disposizione degli acquirenti. Questo aiuta gli acquirenti a capire e valutare il prodotto prima di acquistarlo. Ad esempio, gli acquirenti possono ispezionare i dati di input che hai utilizzato, gli output generati, i log e i parametri emessi dal tuo codice. Più completa è la specifica della convalida, più risulta facile per i clienti valutare il tuo prodotto.

    Nota

    Nel profilo di convalida, fornisci solo i dati che vuoi esporre pubblicamente.

    La convalida può impiegare anche qualche ora. Per vedere lo stato delle offerte di lavoro nel tuo account, nella console SageMaker AI, consulta le pagine Training jobs e Transform jobs. Se la convalida fallisce, puoi accedere ai report di scansione e convalida dalla console SageMaker AI. Se vengono rilevati problemi, dovrai creare nuovamente l'algoritmo.

    Nota

    Per pubblicare l'algoritmo su Marketplace AWS, è necessario almeno un profilo di convalida.

Puoi creare un algoritmo utilizzando la console SageMaker AI o l'API SageMaker AI.

Creazione di una risorsa algoritmo (console)

Per creare una risorsa algoritmo (console)
  1. Apri la console SageMaker AI all'indirizzo https://console.aws.amazon.com/sagemaker/.

  2. Dal menu a sinistra, scegli Addestramento.

  3. Dal menu a discesa, scegli Algoritmi, quindi scegli Crea algoritmo.

  4. Nella pagina Specifiche dell’addestramento, inserisci le seguenti informazioni:

    1. Per Nome algoritmo digita un nome per l'algoritmo. Il nome dell'algoritmo deve essere univoco nel tuo account e nella AWS regione. Il nome deve essere composto da 1 a 64 caratteri. I caratteri validi sono a–z, A-Z, 0–9 e - (trattino).

    2. Digita una descrizione per l'algoritmo. Questa descrizione appare nella console SageMaker AI e in Marketplace AWS.

    3. Per Immagine di addestramento, digita il percorso in Amazon ECR in cui è archiviato il container di addestramento.

    4. Per Supporto addestramento distribuito scegli se l'algoritmo supporta l’addestramento su più istanze. Altrimenti, scegli No.

    5. Per Supporto dei tipi di istanza per l’addestramento, scegli i tipi di istanza supportati dall'algoritmo.

    6. Per Specifica del canale, specifica fino a 8 canali di dati di input per l'algoritmo. Ad esempio, è possibile specificare 3 canali di input denominati train, validation e test. Per ogni canale, specifica le seguenti informazioni.

      1. Per Nome canale digita un nome per il canale. Il nome deve essere composto da 1 a 64 caratteri. I caratteri validi sono a–z, A-Z, 0–9 e - (trattino).

      2. Per richiedere il canale per l'algoritmo, scegli Canale obbligatorio.

      3. Digita una descrizione del canale.

      4. Per Modalità di input supportate, scegli Modalità pipe se l'algoritmo supporta lo streaming dei dati di input e Modalità dei file se l'algoritmo supporta il download dei dati di input come file. È possibile sceglierle entrambe.

      5. Per Tipi di contenuto supportati, digita il tipo MIME previsto dall'algoritmo come dati di input.

      6. Per Tipi di compressione supportati, scegli Gzip se l'algoritmo supporta la compressione Gzip. Altrimenti, seleziona Nessuno.

      7. Scegli Aggiungi canale per aggiungere un altro canale di input oppure scegli Successivo se non desideri aggiungere altri canali.

  5. Nella pagina Specifiche dell'ottimizzazione, inserisci le seguenti informazioni:

    1. Per Specifica degli iperparametri, specifica gli iperparametri supportati dall'algoritmo modificando l'oggetto JSON. Per ciascun iperparametro supportato dall'algoritmo, crea un blocco JSON simile al seguente:

      { "DefaultValue": "5", "Description": "The first hyperparameter", "IsRequired": true, "IsTunable": false, "Name": "intRange", "Range": { "IntegerParameterRangeSpecification": { "MaxValue": "10", "MinValue": "1" }, "Type": "Integer" }

      Nel JSON, inserisci le seguenti informazioni:

      1. Per DefaultValue, specifica un valore predefinito per l'iperparametro, se presente.

      2. Per Description, specifica una descrizione per l'iperparametro.

      3. Per IsRequired, specifica se l'iperparametro è obbligatorio.

      4. Per IsTunable, specifica true se questo iperparametro può essere ottimizzato quando un utente esegue un processo di ottimizzazione iperparametri che utilizza questo algoritmo. Per informazioni, consultare Ottimizzazione automatica dei modelli con AI SageMaker .

      5. Per Name, specifica un nome per l'iperparametro.

      6. Per Range, specifica uno dei seguenti valori:

        • IntegerParameterRangeSpecification - i valori dell'iperparametro sono numeri interi. Specifica il valore minimo e massimo per l'iperparametro.

        • ContinuousParameterRangeSpecification - i valori dell'iperparametro sono valori in virgola mobile. Specifica il valore minimo e massimo per l'iperparametro.

        • CategoricalParameterRangeSpecification - i valori dell'iperparametro sono valori categorici. Specifica un elenco di tutti i valori possibili.

      7. Per Type, specifica Integer, Continuous o Categorical. Il valore deve corrispondere al tipo di Range specificato.

    2. Per le definizioni delle metriche, specifica le metriche di allenamento che desideri che l'algoritmo emetta. SageMaker L'intelligenza artificiale utilizza l'espressione regolare specificata per trovare le metriche analizzando i log dal contenitore di allenamento durante l'allenamento. Gli utenti possono visualizzare queste metriche quando eseguono lavori di formazione con il tuo algoritmo e possono monitorare e tracciare le metriche in Amazon. CloudWatch Per informazioni, consultare Amazon CloudWatch Metrics per il monitoraggio e l'analisi dei lavori di formazione. Per ogni parametro, specifica le seguenti informazioni:

      1. Per Nome parametro, digita un nome per il parametro.

      2. Per esempioRegex, digita l'espressione regolare che l' SageMaker intelligenza artificiale utilizza per analizzare i log di allenamento in modo che possa trovare il valore della metrica.

      3. Per Supporto parametro obiettivo scegli se il parametro può essere utilizzato come parametro obiettivo per un processo di ottimizzazione iperparametri. Per informazioni, consulta Ottimizzazione automatica dei modelli con AI SageMaker .

      4. Scegli Aggiungi parametro per aggiungere un altro parametro oppure scegli Successivo se desideri aggiungere altri parametri.

  6. Nella pagina Specifiche dell'inferenza, inserisci le seguenti informazioni se l'algoritmo supporta l'inferenza:

    1. In Posizione di immagine di inferenza, digita il percorso in Amazon ECR in cui è archiviato il container di inferenza.

    2. Per Nome host container DNS, digita il nome di un host DNS per l'immagine.

    3. Per i tipi di istanze supportati per l'inferenza in tempo reale, scegli i tipi di istanza supportati dall'algoritmo per i modelli distribuiti come endpoint ospitati nell'IA. SageMaker Per informazioni, consultare Implementa modelli per l'inferenza.

    4. Per Tipi di istanze supportati per le operazioni di trasformazione in batch, scegli i tipi di istanza supportati dall'algoritmo per i processi di trasformazione in batch. Per informazioni, consulta Trasformazione in batch per l'inferenza con Amazon SageMaker AI.

    5. Per Tipi di contenuto supportati, digita il tipo dei dati di input previsti dall'algoritmo come richieste di inferenza.

    6. Per Tipi MIME di risposta supportati, digita i tipi MIME supportati dall'algoritmo per le risposte di inferenza.

    7. Scegli Next (Successivo).

  7. Nella pagina Specifiche della convalida, inserisci le seguenti informazioni:

    1. Per Pubblica questo algoritmo su Marketplace AWS, scegli per pubblicare l'algoritmo. Marketplace AWS

    2. Per Convalida questa risorsa, scegli se desideri che l' SageMaker IA esegua il codice di and/or batch transform jobs that you specify to test the training and/or inferenza dei lavori di formazione del tuo algoritmo.

      Nota

      Per pubblicare il tuo algoritmo su Marketplace AWS, devi convalidarlo.

    3. Per il ruolo IAM, scegli un ruolo IAM con le autorizzazioni necessarie per eseguire lavori di formazione e trasformare in batch i lavori nell' SageMaker IA, oppure scegli Crea un nuovo ruolo per consentire all' SageMaker IA di creare un ruolo con la policy AmazonSageMakerFullAccess gestita allegata. Per informazioni, consultare Come utilizzare i ruoli di esecuzione dell' SageMaker IA.

    4. Per Profilo di convalida, specifica i seguenti valori:

      • Un nome per il profilo di convalida.

      • Una definizione del processo di addestramento. È un blocco JSON che descrive un processo di addestramento. Il formato è uguale a quello del parametro di input TrainingJobDefinition dell'API CreateAlgorithm.

      • Una definizione del processo di trasformazione. È un blocco JSON che descrive un processo di trasformazione in batch. Il formato è uguale a quello del parametro di input TransformJobDefinition dell'API CreateAlgorithm.

    5. Seleziona Crea algoritmo.

Creazione di una risorsa algoritmo (API)

Per creare una risorsa algoritmica utilizzando l' SageMaker API, chiama l'CreateAlgorithmAPI.