View a markdown version of this page

Come funziona lo SageMaker smart sifting - 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à.

Come funziona lo SageMaker smart sifting

L'obiettivo del setacciamento SageMaker intelligente è setacciare i dati di addestramento durante il processo di addestramento e fornire al modello solo campioni più informativi. Durante l'addestramento tipico con PyTorch, i dati vengono inviati iterativamente in batch al ciclo di addestramento e ai dispositivi acceleratori (come GPU o chip Trainium) da. PyTorch DataLoader SageMaker smart sifting è implementato in questa fase di caricamento dei dati ed è quindi indipendente da qualsiasi pre-elaborazione dei dati a monte nella pipeline di formazione. SageMaker smart sifting utilizza il modello e la funzione di perdita specificata dall'utente per eseguire un trasferimento valutativo in avanti di ogni campione di dati durante il caricamento. I campioni che restituiscono valori a bassa perdita hanno un impatto minore sull’apprendimento del modello e sono quindi esclusi dall’addestramento, perché è già semplice per il modello effettuare una previsione corretta su di essi con un alto livello di certezza. Nel frattempo, i campioni con perdite relativamente elevate devono ancora essere appresi dal modello, quindi vengono mantenuti per l’addestramento. Un input chiave che è possibile impostare per SageMaker Smart Sifting è la percentuale di dati da escludere. Ad esempio, impostando la percentuale al 25%, i campioni distribuiti nel quartile più basso della distribuzione della perdita (prelevati da un numero di campioni precedenti specificato dall'utente) vengono esclusi dall'addestramento. High-lossi campioni vengono accumulati in un batch di dati raffinato. Il batch di dati perfezionati viene inviato al ciclo di addestramento (passaggio avanti e indietro) e il modello apprende e si addestra in base al batch di dati perfezionato.

Il diagramma seguente mostra una panoramica di come è progettato l'algoritmo SageMaker Smart Sifting.

Diagramma dell'architettura del funzionamento dello SageMaker smart sifting durante l'addestramento durante il caricamento dei dati.

In breve, lo SageMaker smart sifting funziona durante l'allenamento man mano che i dati vengono caricati. L'algoritmo SageMaker smart sifting esegue il calcolo delle perdite sui batch e separa i dati non migliorati prima del passaggio avanti e indietro di ogni iterazione. Il batch di dati perfezionato viene quindi utilizzato per il passaggio avanti e indietro.

Nota

Il setacciamento intelligente dei dati sull' SageMaker intelligenza artificiale utilizza passaggi in avanti aggiuntivi per analizzare e filtrare i dati di allenamento. A loro volta, si verificano meno passaggi indietro, poiché i dati con un impatto minore vengono esclusi dal job di addestramento. Per questo motivo, i modelli con passaggi indietro lunghi o costosi ottengono i maggiori vantaggi in termini di efficienza quando utilizzano la funzionalità di smart sifting. Al contrario, se il passaggio avanti del modello richiede più tempo rispetto al passaggio indietro, l’overhead potrebbe aumentare il tempo totale di addestramento. Per misurare il tempo impiegato per ogni passaggio, è possibile eseguire un job di addestramento pilota e raccogliere log del tempo impiegato nei processi. Prendi in considerazione anche l'utilizzo di SageMaker Profiler che fornisce strumenti di profilazione e un'applicazione per l'interfaccia utente. Per ulteriori informazioni, consulta Amazon SageMaker Profiler.

SageMaker smart sifting è ideale per i lavori di PyTorch-based addestramento con il classico parallelismo distribuito dei dati, che consente di replicare i modelli su ogni GPU e di eseguirne le prestazioni. AllReduce Funziona con PyTorch DDP e la libreria parallela di dati distribuiti AI SageMaker .