Visualizza i tensori di output di Amazon SageMaker Debugger in TensorBoard - 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à.

Visualizza i tensori di output di Amazon SageMaker Debugger in TensorBoard

Importante

Questa pagina è stata sostituita da Amazon SageMaker AI with TensoBoard, che offre un' TensorBoard esperienza completa integrata con la SageMaker formazione e le funzionalità di controllo degli accessi del dominio AI. SageMaker Per ulteriori informazioni, consulta TensorBoard in Amazon SageMaker AI.

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

Un diagramma di architettura del meccanismo di salvataggio dei tensori di output di Debugger.

È 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
  1. Imposta un oggetto di tensorboard_output_config configurazione per salvare l' TensorBoard output utilizzando la classe Debugger. TensorBoardOutputConfig Per il s3_output_path parametro, specifica il bucket S3 predefinito della sessione SageMaker AI corrente o un bucket S3 preferito. Questo esempio non aggiunge il parametro container_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 l'TensorBoardOutputConfigAPI Debugger nell'SDK Amazon Python SageMaker .

  2. 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 valore save_interval predefinito per il salvataggio delle raccolte di tensori è 500) e i parametri bias 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 Debugger APIs, consulta Debugger e Amazon Python CollectionConfig SDK DebuggerHookConfig APIs . SageMaker

  3. Costruisci uno stimatore SageMaker AI con i parametri del Debugger che passano gli oggetti di configurazione. Il seguente modello di esempio mostra come creare uno stimatore AI generico. SageMaker È possibile sostituire estimator e utilizzare le Estimator classi principali e le classi di estimatori di altri framework di SageMaker intelligenza artificiale. Gli stimatori del framework SageMaker AI disponibili per questa funzionalità sono, e. TensorFlow PyTorch MXNet

    from sagemaker.estimator import Estimator 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()

  4. 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()
  5. 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}/
  6. 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
  7. Comprimi la directory dei file in un file TAR da scaricare sul computer locale.

    !tar -cf logs.tar logs
  8. Scarica ed estrai il file TAR di Tensorboard in una directory sul tuo dispositivo, avvia un server 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 TensorBoard TAR Debugger e caricare il file in un notebook Jupyter sul dispositivo locale.

Animazione su come scaricare e caricare il file Debugger sul computer locale. TensorBoard