

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
<a name="debugger-enable-tensorboard-summaries"></a>

**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](tensorboard-on-sagemaker.md).

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.](http://docs.aws.amazon.com/it_it/sagemaker/latest/dg/images/debugger/debugger-tensorboard-concept.png)


È 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'`[TensorBoardOutputConfig](https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.TensorBoardOutputConfig)`API Debugger nell'SDK Amazon [Python SageMaker ](https://sagemaker.readthedocs.io/en/stable).

1. 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](https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.CollectionConfig)` SDK `[DebuggerHookConfig](https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.DebuggerHookConfig)` APIs . SageMaker ](https://sagemaker.readthedocs.io/en/stable)

1. 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](https://sagemaker.readthedocs.io/en/stable/frameworks/tensorflow/using_tf.html#create-an-estimator)` `[PyTorch](https://sagemaker.readthedocs.io/en/stable/frameworks/pytorch/using_pytorch.html#create-an-estimator)` `[MXNet](https://sagemaker.readthedocs.io/en/stable/frameworks/mxnet/using_mxnet.html#create-an-estimator)`

   ```
   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()`

1. 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()
   ```

1. 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}/
   ```

1. 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}}
   ```

1. Comprimi la directory dei file in un file TAR da scaricare sul computer locale.

   ```
   !tar -cf logs.tar logs
   ```

1. 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](http://docs.aws.amazon.com/it_it/sagemaker/latest/dg/images/debugger/debugger-tensorboard.gif)
