2021-05-13 23:48:51 +00:00
---
title: Keras with Matplotlib - Jupyter Notebook
---
The [jupyter.ipynb ](https://github.com/allegroai/clearml/blob/master/examples/frameworks/keras/jupyter.ipynb ) example
2022-03-13 13:07:06 +00:00
demonstrates ClearML's automatic logging of code running in a Jupyter Notebook that uses Keras and Matplotlib.
2021-05-13 23:48:51 +00:00
The example does the following:
1. Trains a simple deep neural network on the Keras built-in [MNIST ](https://keras.io/api/datasets/mnist/#load_data-function )
dataset.
2021-11-04 09:21:05 +00:00
1. Builds a sequential model using a categorical cross entropy loss objective function.
2021-05-13 23:48:51 +00:00
1. Specifies accuracy as the metric, and uses two callbacks: a TensorBoard callback and a model checkpoint callback.
1. During script execution, creates an experiment named `notebook example` which is associated with the `examples` project.
## Scalars
2022-05-22 07:27:30 +00:00
The loss and accuracy metric scalar plots appear in **SCALARS** , along with the resource utilization plots, which are titled ** :monitor: machine**.
2021-05-13 23:48:51 +00:00
![image ](../../../img/examples_keras_jupyter_08.png )
## Plots
The example calls Matplotlib methods to create several sample plots, and TensorBoard methods to plot histograms for layer density.
2022-05-22 07:27:30 +00:00
They appear in **PLOTS** .
2021-05-13 23:48:51 +00:00
![image ](../../../img/examples_keras_jupyter_03.png )
![image ](../../../img/examples_keras_jupyter_03a.png )
2021-09-02 07:48:37 +00:00
## Debug Samples
2021-05-13 23:48:51 +00:00
2022-05-22 07:27:30 +00:00
The example calls Matplotlib methods to log debug sample images. They appear in **DEBUG SAMPLES** .
2021-05-13 23:48:51 +00:00
![image ](../../../img/examples_keras_jupyter_04.png )
## Hyperparameters
2022-03-13 13:07:06 +00:00
ClearML automatically logs TensorFlow Definitions. A parameter dictionary is logged by connecting it to the Task, by
2022-12-27 14:01:47 +00:00
calling the [`Task.connect` ](../../../references/sdk/task.md#connect ) method.
2021-05-13 23:48:51 +00:00
```python
task_params = {'num_scatter_samples': 60, 'sin_max_value': 20, 'sin_steps': 30}
task_params = task.connect(task_params)
```
Later in the Jupyter Notebook, more parameters are added to the dictionary.
```python
task_params['batch_size'] = 128
task_params['nb_classes'] = 10
task_params['nb_epoch'] = 6
task_params['hidden_dim'] = 512
```
2022-05-26 06:54:41 +00:00
Parameter dictionaries appear in **CONFIGURATION** ** >** **HYPER PARAMETERS** ** >** **General** .
2021-05-13 23:48:51 +00:00
![image ](../../../img/examples_keras_jupyter_20.png )
The TensorFlow Definitions appear in the **TF_DEFINE** subsection.
![image ](../../../img/examples_keras_jupyter_21.png )
2021-09-02 07:48:37 +00:00
## Console
2021-05-13 23:48:51 +00:00
2022-05-22 07:27:30 +00:00
Text printed to the console for training appears in **CONSOLE** .
2021-05-13 23:48:51 +00:00
![image ](../../../img/examples_keras_jupyter_07.png )
## Artifacts
Model artifacts associated with the experiment appear in the experiment info panel (in the **EXPERIMENTS** tab), and in the model info panel (in the **MODELS** tab).
The experiment info panel shows model tracking, including the model name and design in **ARTIFACTS** ** >** **Output Model** .
![image ](../../../img/examples_keras_jupyter_23.png )
The model info panel contains the model details, including the model URL, framework, and snapshot locations.
![image ](../../../img/examples_keras_jupyter_24.png )