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à.
Visualizza i tensori di output di Amazon SageMaker Debugger in TensorBoard
Importante
Questa pagina è obsoleta a favore di Amazon SageMaker with TensoBoard, che offre un' TensorBoard esperienza completa integrata con la SageMaker formazione e le funzionalità di controllo degli accessi del dominio. SageMaker Per ulteriori informazioni, consulta TensorBoard in Amazon SageMaker.
Usa SageMaker Debugger per creare file tensoriali di output compatibili con. TensorBoard Carica i file per visualizzare e analizzare i tuoi lavori di formazione. TensorBoard SageMaker Debugger genera automaticamente file tensoriali di output compatibili con. TensorBoard Per qualsiasi configurazione di hook personalizzata per salvare i tensori di output, Debugger ha la flessibilità di creare riepiloghi scalari, distribuzioni e istogrammi in cui importare. TensorBoard
È possibile abilitarlo passando gli oggetti DebuggerHookConfig
e TensorBoardOutputConfig
a un estimator
.
La procedura seguente spiega come salvare scalari, pesi e distorsioni come tensori completi, istogrammi e distribuzioni con cui è possibile visualizzare. TensorBoard Debugger li salva nel percorso locale del container di addestramento (il percorso predefinito è /opt/ml/output/tensors
) e si sincronizza con le posizioni Amazon S3 passate attraverso gli oggetti di configurazione dell'output del Debugger.
TensorBoard Per salvare file tensoriali di output compatibili utilizzando Debugger
-
Imposta un oggetto di
tensorboard_output_config
configurazione per salvare l' TensorBoard output utilizzando la classe Debugger.TensorBoardOutputConfig
Per ils3_output_path
parametro, specificate il bucket S3 predefinito della SageMaker sessione corrente o un bucket S3 preferito. Questo esempio non aggiunge il parametrocontainer_local_output_path
; viene invece impostato sul percorso locale predefinito/opt/ml/output/tensors
.import sagemaker from sagemaker.debugger import TensorBoardOutputConfig bucket = sagemaker.Session().default_bucket() tensorboard_output_config = TensorBoardOutputConfig( s3_output_path='s3://{}'.format(bucket) )
Per ulteriori informazioni, consulta il Debugger in Amazon
TensorBoardOutputConfig
API Python. SageMaker SDK -
Configura l'hook Debugger e personalizza i valori dei parametri dell'hook. Ad esempio, il codice seguente configura un hook Debugger per salvare tutti gli output scalari ogni 100 fasi nelle fasi di addestramento e 10 fasi nelle fasi di convalida, i parametri
weights
ogni 500 fasi (il valoresave_interval
predefinito per il salvataggio delle raccolte di tensori è 500) e i parametribias
ogni 10 fasi globali fino a quando la fase globale raggiunge 500.from sagemaker.debugger import CollectionConfig, DebuggerHookConfig hook_config = DebuggerHookConfig( hook_parameters={ "train.save_interval": "100", "eval.save_interval": "10" }, collection_configs=[ CollectionConfig("weights"), CollectionConfig( name="biases", parameters={ "save_interval": "10", "end_step": "500", "save_histogram": "True" } ), ] )
Per ulteriori informazioni sulla configurazione del DebuggerAPIs, consulta Debugger
CollectionConfig
e Amazon Python.DebuggerHookConfig
APIs SageMaker SDK -
Costruisci uno SageMaker stimatore con i parametri del Debugger passando gli oggetti di configurazione. Il seguente modello di esempio mostra come creare uno stimatore generico. SageMaker È possibile sostituire
estimator
eEstimator
con le classi principali e le classi di SageMaker estimatori di altri framework. Gli stimatori di SageMaker framework disponibili per questa funzionalità sono, e.TensorFlow
PyTorch
MXNet
from sagemaker.
estimator
importEstimator
estimator =Estimator
( ... # Debugger parameters debugger_hook_config=hook_config, tensorboard_output_config=tensorboard_output_config ) estimator.fit()Il
estimator.fit()
metodo avvia un processo di formazione e Debugger scrive i file del tensore di output in tempo reale sul percorso di output del Debugger S3 e sul percorso di output S3. TensorBoard Per recuperare i percorsi di output, utilizza i seguenti metodi di valutazione:-
Per il percorso di output di Debugger S3, usa
estimator.latest_job_debugger_artifacts_path()
. -
Per TensorBoard il percorso di output S3, usa.
estimator.latest_job_tensorboard_artifacts_path()
-
-
Al termine dell'addestramento, controlla i nomi dei tensori di output salvati:
from smdebug.trials import create_trial trial = create_trial(estimator.latest_job_debugger_artifacts_path()) trial.tensor_names()
-
Controlla i dati TensorBoard di output in Amazon S3:
tensorboard_output_path=estimator.latest_job_tensorboard_artifacts_path() print(tensorboard_output_path) !aws s3 ls {tensorboard_output_path}/
-
Scarica i dati TensorBoard di output sull'istanza del tuo notebook. Ad esempio, il AWS CLI comando seguente scarica i TensorBoard file nella directory di lavoro corrente dell'istanza del notebook.
/logs/fit
!aws s3 cp --recursive {tensorboard_output_path}
./logs/fit
-
Comprimi la directory dei file in un TAR file da scaricare sul computer locale.
!tar -cf logs.tar logs
-
Scarica ed estrai il TAR file Tensorboard in una directory sul tuo dispositivo, avvia un server di notebook Jupyter, apri un nuovo notebook ed esegui l'app. TensorBoard
!tar -xf logs.tar %load_ext tensorboard %tensorboard --logdir logs/fit
La seguente schermata animata illustra le fasi da 5 a 8. Dimostra come scaricare il file Debugger e caricare il TensorBoard TAR file su un notebook Jupyter sul dispositivo locale.