diff --git a/README.md b/README.md
index f7b17af2476e0ab5343282ac0224676b0fc2d9ca..229105dff44b4affd7879380c5811187836a2156 100644
--- a/README.md
+++ b/README.md
@@ -1,56 +1,161 @@
+# General Purpose Audio Effect Removal
+Removing multiple audio effects from multiple sources using compositional audio effect removal and source separation and speech enhancement models.
+
+This repo contains the code for the paper [General Purpose Audio Effect Removal](https://arxiv.org/abs/2110.00484). (Todo: Link broken, Add video, Add img, citation)
+
# Setup
+```
+git clone https://github.com/mhrice/RemFx.git
+cd RemFx
+git submodule update --init --recursive
+pip install -e . ./umx
+```
+# Usage
+This repo can be used for many different tasks. Here are some examples.
+## Run RemFX Detect on a single file - []
+First, need to download the checkpoints from [zenodo](https://zenodo.org/record/8179396)
+```
+./download_checkpoints.sh
+./remfx_detect.sh wet.wav -o dry.wav
+```
+## Download the [General Purpose Audio Effect Removal evaluation datasets](https://zenodo.org/record/8183649/) - [x]
+```
+./download_eval_datasets.sh
+```
+
+## Download the starter datasets - [x]
+```
+python scripts/download.py vocalset guitarset dsd100 idmt-smt-drums
+```
+By default, the starter datasets are downloaded to `./data/remfx-data`. To change this, pass `--output_dir={path/to/datasets}` to `download.py`
+
+Then set the dataset root :
+```
+export DATASET_ROOT={path/to/datasets}
+```
+
+## Training - [x]
+Before training, it is important that you have downloaded the starter datasets (see above) and set DATASET_ROOT.
+This project uses the [pytorch-lightning](https://www.pytorchlightning.ai/index.html) framework and [hydra](https://hydra.cc/) for configuration management. All experiments are defined in `cfg/exp/`. To train with an existing experiment run
+```
+python scripts/train.py +exp={experiment_name}
+```
-## Install Packages
-1. `python3 -m venv env`
-2. `source env/bin/activate`
-3. `pip install -e .`
-4. `git submodule update --init --recursive`
-5. `pip install -e umx`
-
-## Download [VocalSet Dataset](https://zenodo.org/record/1193957)
-1. `wget https://zenodo.org/record/1442513/files/VocalSet1-2.zip?download=1`
-2. `mv VocalSet.zip?download=1 VocalSet.zip`
-3. `unzip VocalSet.zip`
-
-# Training
-## Steps
-1. Change Wandb and data root variables in `shell_vars.sh` and `source shell_vars.sh`
-2. `python scripts/train.py +exp=default`
-
-## Experiments
-Training parameters can be configured in `cfg/exp/default.yaml`. Here are some descriptions
+Here are some selected experiment types from the paper, which use different datasets and configurations. See `cfg/exp/` for a full list of experiments and parameters.
+
+| Experiment Type | Config Name | Example |
+| ----------------------- | ------------ | ----------------- |
+| Effect-specific | {effect} | +exp=chorus |
+| Effect-specific + FXAug | {effect}_aug | +exp=chorus_aug |
+| Monolithic (1 FX) | 5-1 | +exp=5-1 |
+| Monolithic (<=5 FX) | 5-5_full | +exp=5-5_full |
+| Classifier | 5-5_full_cls | +exp=5-5_full_cls |
+
+To change the configuration, simply edit the experiment file, or override the configuration on the command line. A description of some of these variables is in the Misc. section below.
+You can also create a custom experiment by creating a new experiment file in `cfg/exp/` and overriding the default parameters in `config.yaml`.
+
+At the end of training, the train script will automatically evaluate the test set using the best checkpoint (by validation loss). If epoch 0 is not finished, it will throw an error. To evaluate a specific checkpoint, run
+
+```
+python scripts/test.py +exp={experiment_name} +ckpt_path="{path/to/checkpoint}" render_files=False
+```
+
+The checkpoints will be saved in `./logs/ckpts/{timestamp}`
+Metrics and hyperparams will be logged in `./lightning_logs/{timestamp}`
+
+By default, the dataset needed for the experiment is generated before training.
+If you have generated the dataset separately (see Generate datasets used in the paper), be sure to set `render_files=False` in the config or command-line, and set `render_root={path/to/dataset}` if it is in a custom location.
+
+Also note that the training assumes you have a GPU. To train on CPU, set `accelerator=null` in the config or command-line.
+
+## Evaluate models on the General Purpose Audio Effect Removal evaluation datasets (Table 4 from the paper) - []
+First download the General Purpose Audio Effect Removal evaluation datasets (see above).
+To use the pretrained RemFX model, download the checkpoints
+```
+./download_checkpoints.sh
+```
+Then run the evaluation script, select the RemFX configuration, between `remfx_oracle`, `remfx_detect`, and `remfx_all`. Then select N, the number of effects to remove.
+```
+./eval.sh remfx_detect 0-0
+./eval.sh remfx_detect 1-1
+./eval.sh remfx_detect 2-2
+./eval.sh remfx_detect 3-3
+./eval.sh remfx_detect 4-4
+./eval.sh remfx_detect 5-5
+
+```
+To eval a custom monolithic model, first train a model (see Training)
+Then run the evaluation script, with the config used and checkpoint_path.
+```
+./eval.sh distortion_aug 0-0 -ckpt "logs/ckpts/2023-07-26-10-10-27/epoch\=05-valid_loss\=8.623.ckpt"
+./eval.sh distortion_aug 1-1 -ckpt "logs/ckpts/2023-07-26-10-10-27/epoch\=05-valid_loss\=8.623.ckpt"
+./eval.sh distortion_aug 2-2 -ckpt "logs/ckpts/2023-07-26-10-10-27/epoch\=05-valid_loss\=8.623.ckpt"
+./eval.sh distortion_aug 3-3 -ckpt "logs/ckpts/2023-07-26-10-10-27/epoch\=05-valid_loss\=8.623.ckpt"
+./eval.sh distortion_aug 4-4 -ckpt "logs/ckpts/2023-07-26-10-10-27/epoch\=05-valid_loss\=8.623.ckpt"
+./eval.sh distortion_aug 5-5 -ckpt "logs/ckpts/2023-07-26-10-10-27/epoch\=05-valid_loss\=8.623.ckpt"
+```
+
+To eval a custom effect-specific model as part of the inference chain, first train a model (see Training), then edit `cfg/exp/remfx_{desired_configuration}.yaml` -> ckpts -> {effect}.
+Then run the evaluation script.
+```
+./eval.sh remfx_detect 0-0
+```
+
+The script assumes that RemFX_eval_datasets is in the top-level directory.
+Metrics and hyperparams will be logged in `./lightning_logs/{timestamp}`
+
+## Generate other datasets - [x]
+The datasets used in the experiments are customly generated from the starter datasets. In short, for each training/val/testing example, we select a random 5.5s segment from one of the starter datasets and apply a random number of effects to it. The number of effects applied is controlled by the `num_kept_effects` and `num_removed_effects` parameters. The effects applied are controlled by the `effects_to_keep` and `effects_to_remove` parameters.
+
+Before generating datasets, it is important that you have downloaded the starter datasets (see above) and set DATASET_ROOT.
+
+To generate one of the datasets used in the paper, use of the experiments defined in `cfg/exp/`.
+For example, to generate the `chorus` FXAug dataset, which includes files with 5 possible effects, up to 4 kept effects (distortion, reverb, compression, delay), and 1 removed effects (chorus), run
+```
+python scripts/generate_dataset.py +exp=chorus_aug
+```
+
+See the Misc. section below for a description of the parameters.
+By default, files are rendered to `{render_root} / processed / {string_of_effects} / {train|val|test}`.
+
+If training, this process will be done automatically at the start of training. To disable this, set `render_files=False` in the config or command-line, and set `render_root={path/to/dataset}` if it is in a custom location.
+
+# Misc.
+## Experimental parameters
+Some relevant dataset/training parameters descriptions
- `num_kept_effects={[min, max]}` range of Kept effects to apply to each file. Inclusive.
- `num_removed_effects={[min, max]}` range of Removed effects to apply to each file. Inclusive.
-- `model={model}` architecture to use (see 'Models')
-- `effects_to_keep={[effect]}` Effects to apply but not remove (see 'Effects')
+- `model={model}` architecture to use (see 'Effect Removal Models/Effect Classification Models')
+- `effects_to_keep={[effect]}` Effects to apply but not remove (see 'Effects'). Used for FXAug.
- `effects_to_remove={[effect]}` Effects to remove (see 'Effects')
- `accelerator=null/'gpu'` Use GPU (1 device) (default: null)
- `render_files=True/False` Render files. Disable to skip rendering stage (default: True)
-- `render_root={path/to/dir}`. Root directory to render files to (default: DATASET_ROOT)
-
-These can also be specified on the command line.
-see `cfg/exp/default.yaml` for an example.
+- `render_root={path/to/dir}`. Root directory to render files to (default: ./data)
+- `datamodule.train_batch_size={batch_size}`. Change batch size (default: varies)
-
-## Models
+### Effect Removal Models
- `umx`
- `demucs`
- `tcn`
- `dcunet`
- `dptnet`
-## Effects
+### Effect Classification Models
+- `cls_vggish`
+- `cls_panns_pt`
+- `cls_wav2vec2`
+- `cls_wav2clip`
+
+### Effects
- `chorus`
- `compressor`
- `distortion`
- `reverb`
- `delay`
-## Chain Inference
-`python scripts/chain_inference.py +exp=chain_inference`
-
-## Run inference on directory
+# DO WE NEED THIS?
+## Evaluate RemFXwith a custom directory - []
Assumes directory is structured as
- root
- clean
@@ -62,49 +167,12 @@ Assumes directory is structured as
- file2.wav
- file3.wav
-Change root path in `shell_vars.sh` and `source shell_vars.sh`
-
-`python scripts/chain_inference.py +exp=chain_inference_custom`
-
-
-
-## Misc.
-By default, files are rendered to `input_dir / processed / {string_of_effects} / {train|val|test}`.
-
-
-Download datasets:
-
+First set the dataset root:
```
-python scripts/download.py vocalset guitarset idmt-smt-guitar idmt-smt-bass idmt-smt-drums
+export DATASET_ROOT={path/to/datasets}
```
-To run audio effects classifiction:
+Then run
```
-python scripts/train.py model=classifier "effects_to_use=[compressor, distortion, reverb, chorus, delay]" "effects_to_remove=[]" max_kept_effects=5 max_removed_effects=0 shuffle_kept_effects=True shuffle_removed_effects=True accelerator='gpu' render_root=/scratch/RemFX render_files=True
-```
-
-```
-srun --comment harmonai --partition=g40 --gpus=1 --cpus-per-gpu=12 --job-name=harmonai --pty bash -i
-source env/bin/activate
-rsync -aP /fsx/home-csteinmetz1/data/EffectSet_cjs.tar /scratch
-tar -xvf EffectSet_cjs.tar
-mv scratch/EffectSet_cjs ./EffectSet_cjs
-
-export DATASET_ROOT="/admin/home-csteinmetz1/data/remfx-data"
-export WANDB_PROJECT="RemFX"
-export WANDB_ENTITY="cjstein"
-
-python scripts/train.py +exp=5-5.yaml model=cls_vggish render_files=False logs_dir=/scratch/cjs-log datamodule.batch_size=64
-python scripts/train.py +exp=5-5.yaml model=cls_panns_pt render_files=False logs_dir=/scratch/cjs-log datamodule.batch_size=64
-python scripts/train.py +exp=5-5.yaml model=cls_wav2vec2 render_files=False logs_dir=/scratch/cjs-log datamodule.batch_size=64
-python scripts/train.py +exp=5-5.yaml model=cls_wav2clip render_files=False logs_dir=/scratch/cjs-log datamodule.batch_size=64
-```
-
-### Installing HEAR models
-
-wav2clip
+python scripts/chain_inference.py +exp=chain_inference_custom
```
-pip install hearbaseline
-pip install git+https://github.com/hohsiangwu/wav2clip-hear.git
-pip install git+https://github.com/qiuqiangkong/HEAR2021_Challenge_PANNs
-wget https://zenodo.org/record/6332525/files/hear2021-panns_hear.pth
diff --git a/cfg/config.yaml b/cfg/config.yaml
index 35d1e60049274377ca24ffb6fa057255febffa78..feaa9ab9af665b7b720ad1d9c45718b20daeacc4 100644
--- a/cfg/config.yaml
+++ b/cfg/config.yaml
@@ -63,7 +63,7 @@ datamodule:
shuffle_removed_effects: ${shuffle_removed_effects}
render_files: ${render_files}
render_root: ${render_root}
- parallel: True
+ parallel: False
val_dataset:
_target_: remfx.datasets.EffectDataset
total_chunks: 1000
@@ -80,6 +80,7 @@ datamodule:
shuffle_removed_effects: ${shuffle_removed_effects}
render_files: ${render_files}
render_root: ${render_root}
+ parallel: False
test_dataset:
_target_: remfx.datasets.EffectDataset
total_chunks: 1000
@@ -96,21 +97,27 @@ datamodule:
shuffle_removed_effects: ${shuffle_removed_effects}
render_files: ${render_files}
render_root: ${render_root}
+ parallel: False
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
pin_memory: True
persistent_workers: True
+# logger:
+# _target_: pytorch_lightning.loggers.WandbLogger
+# project: ${oc.env:WANDB_PROJECT}
+# entity: ${oc.env:WANDB_ENTITY}
+# # offline: False # set True to store all logs only locally
+# job_type: "train"
+# group: ""
+# save_dir: "."
+# log_model: True
logger:
- _target_: pytorch_lightning.loggers.WandbLogger
- project: ${oc.env:WANDB_PROJECT}
- entity: ${oc.env:WANDB_ENTITY}
- # offline: False # set True to store all logs only locally
- job_type: "train"
- group: ""
+ _target_: pytorch_lightning.loggers.CSVLogger
save_dir: "."
- log_model: True
+ version: ${now:%Y-%m-%d-%H-%M-%S}
trainer:
_target_: pytorch_lightning.Trainer
diff --git a/cfg/exp/0-0.yaml b/cfg/exp/0-0.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b4960dfbd96a4a82fed2d5a78d24922808230c47
--- /dev/null
+++ b/cfg/exp/0-0.yaml
@@ -0,0 +1,29 @@
+# @package _global_
+defaults:
+ - override /model: demucs
+ - override /effects: all
+seed: 12345
+sample_rate: 48000
+chunk_size: 262144 # 5.5s
+logs_dir: "./logs"
+render_files: True
+
+accelerator: "gpu"
+log_audio: True
+# Effects
+num_kept_effects: [0,0] # [min, max]
+num_removed_effects: [0,0] # [min, max]
+shuffle_kept_effects: True
+shuffle_removed_effects: True
+num_classes: 5
+effects_to_keep:
+effects_to_remove:
+ - distortion
+ - compressor
+ - reverb
+ - chorus
+ - delay
+datamodule:
+ train_batch_size: 16
+ test_batch_size: 1
+ num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/1-1.yaml b/cfg/exp/1-1.yaml
index be1a202386a2a3f7c471c5f5904a382380e9d2f5..66b0cb5b159f1f31e855272496445c2eaa741811 100644
--- a/cfg/exp/1-1.yaml
+++ b/cfg/exp/1-1.yaml
@@ -7,12 +7,12 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
num_kept_effects: [0,0] # [min, max]
-num_removed_effects: [0,1] # [min, max]
+num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: True
num_classes: 5
@@ -24,5 +24,6 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/2-2.yaml b/cfg/exp/2-2.yaml
index 9fb0e3f1a42d1f45b89b05a798442656ead8bf36..cf77506e24da2d921105f01e668eacb0cb680cca 100644
--- a/cfg/exp/2-2.yaml
+++ b/cfg/exp/2-2.yaml
@@ -7,12 +7,12 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
num_kept_effects: [0,0] # [min, max]
-num_removed_effects: [0,2] # [min, max]
+num_removed_effects: [2,2] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: True
num_classes: 5
@@ -24,5 +24,6 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/3-3.yaml b/cfg/exp/3-3.yaml
index 5cbeeb8952caf833e1498913407eb5a1c2209873..2032e290b0597f9f58035009e18d223640b13bad 100644
--- a/cfg/exp/3-3.yaml
+++ b/cfg/exp/3-3.yaml
@@ -7,12 +7,12 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
num_kept_effects: [0,0] # [min, max]
-num_removed_effects: [0,3] # [min, max]
+num_removed_effects: [3,3] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: True
num_classes: 5
@@ -24,5 +24,6 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/4-4.yaml b/cfg/exp/4-4.yaml
index d64515b36b152120f73f30ab2a623118cfd8281c..b7b845e3791ce5c8d74d0c54d7b9705d94ab386a 100644
--- a/cfg/exp/4-4.yaml
+++ b/cfg/exp/4-4.yaml
@@ -7,12 +7,12 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
num_kept_effects: [0,0] # [min, max]
-num_removed_effects: [0,4] # [min, max]
+num_removed_effects: [4,4] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: True
num_classes: 5
@@ -24,5 +24,6 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/5-1.yaml b/cfg/exp/5-1.yaml
index 717c2745926f1a1f5a284f92ebcc4aebed2fc812..66b0cb5b159f1f31e855272496445c2eaa741811 100644
--- a/cfg/exp/5-1.yaml
+++ b/cfg/exp/5-1.yaml
@@ -7,7 +7,7 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
@@ -24,5 +24,6 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/5-5.yaml b/cfg/exp/5-5.yaml
index ba011ab8e9c0808ac409182f68a172aa8048fe2c..025df26afb60346e7d625b7042750b9c43f3fff9 100644
--- a/cfg/exp/5-5.yaml
+++ b/cfg/exp/5-5.yaml
@@ -7,12 +7,12 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
num_kept_effects: [0,0] # [min, max]
-num_removed_effects: [0,5] # [min, max]
+num_removed_effects: [5,5] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: True
num_classes: 5
@@ -24,5 +24,6 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/5-5_full.yaml b/cfg/exp/5-5_full.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..f0c40a3aa411fa5d8fcf29b9a825c1e3b7c3a9e7
--- /dev/null
+++ b/cfg/exp/5-5_full.yaml
@@ -0,0 +1,29 @@
+# @package _global_
+defaults:
+ - override /model: demucs
+ - override /effects: all
+seed: 12345
+sample_rate: 48000
+chunk_size: 262144 # 5.5s
+logs_dir: "./logs"
+render_files: True
+
+accelerator: "gpu"
+log_audio: True
+# Effects
+num_kept_effects: [0,0] # [min, max]
+num_removed_effects: [0,5] # [min, max]
+shuffle_kept_effects: True
+shuffle_removed_effects: True
+num_classes: 5
+effects_to_keep:
+effects_to_remove:
+ - distortion
+ - compressor
+ - reverb
+ - chorus
+ - delay
+datamodule:
+ train_batch_size: 16
+ test_batch_size: 1
+ num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/5-5_cls.yaml b/cfg/exp/5-5_full_cls.yaml
similarity index 96%
rename from cfg/exp/5-5_cls.yaml
rename to cfg/exp/5-5_full_cls.yaml
index e5de2f8a491f2697485e0ac2cc73ffbe35145538..50a07175c02c6664819bbfa6184976f40c61588c 100644
--- a/cfg/exp/5-5_cls.yaml
+++ b/cfg/exp/5-5_full_cls.yaml
@@ -1,13 +1,13 @@
# @package _global_
defaults:
- - override /model: demucs
+ - override /model: cls_panns_48k
- override /effects: all
seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "/scratch/cjs-logs"
render_files: True
-render_root: "/scratch/EffectSet_cjs"
+
accelerator: "gpu"
log_audio: False
# Effects
diff --git a/cfg/exp/5-5_cls_dynamic.yaml b/cfg/exp/5-5_full_cls_dynamic.yaml
similarity index 98%
rename from cfg/exp/5-5_cls_dynamic.yaml
rename to cfg/exp/5-5_full_cls_dynamic.yaml
index 88740aa7a9ef2edaf49fd20ed3424af3c5fda632..b53ae5e311976f41c45625f69434b185f0914432 100644
--- a/cfg/exp/5-5_cls_dynamic.yaml
+++ b/cfg/exp/5-5_full_cls_dynamic.yaml
@@ -7,7 +7,7 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "/scratch/cjs-logs"
render_files: True
-render_root: "/scratch/EffectSet_cjs"
+
accelerator: "gpu"
log_audio: False
# Effects
diff --git a/cfg/exp/chain_inference.yaml b/cfg/exp/chain_inference.yaml
index 9d89de7842e9fa98d286c57d8a2aba50e832c695..8f2df2e217a761634d109fe9b6c80748c20ec244 100644
--- a/cfg/exp/chain_inference.yaml
+++ b/cfg/exp/chain_inference.yaml
@@ -6,7 +6,7 @@ seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
@@ -23,7 +23,8 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
dcunet:
diff --git a/cfg/exp/chain_inference_aug.yaml b/cfg/exp/chain_inference_aug.yaml
index a37dc046abc3cf05b2b93ef56f694cadd60610a4..08c3720ca99d5c0f94fd8d910dc0458bad8718a2 100644
--- a/cfg/exp/chain_inference_aug.yaml
+++ b/cfg/exp/chain_inference_aug.yaml
@@ -6,7 +6,7 @@ seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
@@ -23,7 +23,8 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
dcunet:
diff --git a/cfg/exp/chain_inference_aug_classifier.yaml b/cfg/exp/chain_inference_aug_classifier.yaml
index 8b8e6b7858a165f7f56fb9a5d76ed045cacbc302..6c0283b37da9c477d2840d04823fe88a4660d5d0 100644
--- a/cfg/exp/chain_inference_aug_classifier.yaml
+++ b/cfg/exp/chain_inference_aug_classifier.yaml
@@ -6,7 +6,7 @@ seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
@@ -23,7 +23,8 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
dcunet:
@@ -56,7 +57,7 @@ classifier:
n_mels: 128
sample_rate: ${sample_rate}
model_sample_rate: ${sample_rate}
- specaugment: False
+ specaugment: True
classifier_ckpt: "ckpts/classifier.ckpt"
ckpts:
@@ -75,7 +76,6 @@ ckpts:
RandomPedalboardDelay:
model: ${dcunet}
ckpt_path: "ckpts/dcunet_delay_aug.ckpt"
-
inference_effects_ordering:
- "RandomPedalboardDistortion"
- "RandomPedalboardCompressor"
diff --git a/cfg/exp/chain_inference_custom.yaml b/cfg/exp/chain_inference_custom.yaml
index fffd471ad95415b98068f1c7280ed9c909ce9538..c87e6527280007841689c5d69f64ffcf9655caaa 100644
--- a/cfg/exp/chain_inference_custom.yaml
+++ b/cfg/exp/chain_inference_custom.yaml
@@ -6,7 +6,7 @@ seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
@@ -23,7 +23,8 @@ effects_to_remove:
- chorus
- delay
datamodule:
- batch_size: 1
+ train_batch_size: 1
+ test_batch_size: 1
num_workers: 8
train_dataset: None
val_dataset: None
diff --git a/cfg/exp/chorus.yaml b/cfg/exp/chorus.yaml
index 936d04086395af33f45de6afb66629f3fb3e1006..330037697c11d664bb64428a0cf6562a9050c690 100644
--- a/cfg/exp/chorus.yaml
+++ b/cfg/exp/chorus.yaml
@@ -1,28 +1,25 @@
# @package _global_
defaults:
- - override /model: demucs
+ - override /model: dcunet
- override /effects: all
seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
-num_kept_effects: [0,4] # [min, max]
+num_kept_effects: [0,0] # [min, max]
num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: False
-num_classes: 5
+num_classes: 1
effects_to_keep:
- - compressor
- - distortion
- - delay
- - reverb
effects_to_remove:
- chorus
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/reverb_only.yaml b/cfg/exp/chorus_aug.yaml
similarity index 67%
rename from cfg/exp/reverb_only.yaml
rename to cfg/exp/chorus_aug.yaml
index fcf45550c9b1c3c9d8584cf8fcbe7d7a6387291c..19ee136c15cd6b00101460712b10411fe222186e 100644
--- a/cfg/exp/reverb_only.yaml
+++ b/cfg/exp/chorus_aug.yaml
@@ -1,24 +1,29 @@
# @package _global_
defaults:
- - override /model: demucs
+ - override /model: dcunet
- override /effects: all
seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
-num_kept_effects: [0,0] # [min, max]
+num_kept_effects: [0,4] # [min, max]
num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: False
-num_classes: 1
+num_classes: 5
effects_to_keep:
-effects_to_remove:
+ - compressor
+ - distortion
+ - delay
- reverb
+effects_to_remove:
+ - chorus
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/compression.yaml b/cfg/exp/compression.yaml
index a6d25bb35671b83a318bb3117c80a5eb87e50a05..a2a82babb79ca68de46318a02fceb4af293b7362 100644
--- a/cfg/exp/compression.yaml
+++ b/cfg/exp/compression.yaml
@@ -7,22 +7,19 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
-num_kept_effects: [0,4] # [min, max]
+num_kept_effects: [0,0] # [min, max]
num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: False
-num_classes: 5
+num_classes: 1
effects_to_keep:
- - distortion
- - chorus
- - delay
- - reverb
effects_to_remove:
- compressor
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/distortion_only.yaml b/cfg/exp/compression_aug.yaml
similarity index 73%
rename from cfg/exp/distortion_only.yaml
rename to cfg/exp/compression_aug.yaml
index 5ee7b8ed7dc77aca2bf4f0d573f88b2e20fafdd1..01a261b482a0ca7f88c4bce20e88038121df8c33 100644
--- a/cfg/exp/distortion_only.yaml
+++ b/cfg/exp/compression_aug.yaml
@@ -7,18 +7,23 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
-num_kept_effects: [0,0] # [min, max]
+num_kept_effects: [0,4] # [min, max]
num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: False
-num_classes: 1
+num_classes: 5
effects_to_keep:
-effects_to_remove:
- distortion
+ - chorus
+ - delay
+ - reverb
+effects_to_remove:
+ - compressor
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/default.yaml b/cfg/exp/default.yaml
index 0284b94f0e34344ca42f74bf398a1ce4b848eaaa..3ed669584255b655ebb1fe8efa10a46f6c599971 100644
--- a/cfg/exp/default.yaml
+++ b/cfg/exp/default.yaml
@@ -24,5 +24,6 @@ effects_to_remove:
- delay
- distortion
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/delay.yaml b/cfg/exp/delay.yaml
index 1301ceb47a4d998cc16f8764c17095ad403d6161..d2ff2c23355f24bb804c8785cb1f64d8971f3193 100644
--- a/cfg/exp/delay.yaml
+++ b/cfg/exp/delay.yaml
@@ -1,28 +1,25 @@
# @package _global_
defaults:
- - override /model: demucs
+ - override /model: dcunet
- override /effects: all
seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
-num_kept_effects: [0,4] # [min, max]
+num_kept_effects: [0,0] # [min, max]
num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: False
-num_classes: 5
+num_classes: 1
effects_to_keep:
- - compressor
- - distortion
- - chorus
- - reverb
effects_to_remove:
- delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/chorus_only.yaml b/cfg/exp/delay_aug.yaml
similarity index 67%
rename from cfg/exp/chorus_only.yaml
rename to cfg/exp/delay_aug.yaml
index 2014d295decffba9cc6a5654f26f3865f479edf8..bbf93652dec10e778d317048adbe6848c79712a6 100644
--- a/cfg/exp/chorus_only.yaml
+++ b/cfg/exp/delay_aug.yaml
@@ -1,24 +1,29 @@
# @package _global_
defaults:
- - override /model: demucs
+ - override /model: dcunet
- override /effects: all
seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
-num_kept_effects: [0,0] # [min, max]
+num_kept_effects: [0,4] # [min, max]
num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: False
-num_classes: 1
+num_classes: 5
effects_to_keep:
-effects_to_remove:
+ - compressor
+ - distortion
- chorus
+ - reverb
+effects_to_remove:
+ - delay
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/delay_only.yaml b/cfg/exp/delay_only.yaml
deleted file mode 100644
index db030b14a559dd2e559d9e345000d2def2c6ecaa..0000000000000000000000000000000000000000
--- a/cfg/exp/delay_only.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-# @package _global_
-defaults:
- - override /model: demucs
- - override /effects: all
-seed: 12345
-sample_rate: 48000
-chunk_size: 262144 # 5.5s
-logs_dir: "./logs"
-render_files: True
-render_root: "/scratch/EffectSet"
-accelerator: "gpu"
-log_audio: True
-# Effects
-num_kept_effects: [0,0] # [min, max]
-num_removed_effects: [1,1] # [min, max]
-shuffle_kept_effects: True
-shuffle_removed_effects: False
-num_classes: 1
-effects_to_keep:
-effects_to_remove:
- - delay
-datamodule:
- batch_size: 16
- num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/distortion.yaml b/cfg/exp/distortion.yaml
index 14a874158ba6c9f6d92305cf8458bcdc02216239..c0c66faefaac5d888d691e9bf9692eee30f2a08f 100644
--- a/cfg/exp/distortion.yaml
+++ b/cfg/exp/distortion.yaml
@@ -7,22 +7,19 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
-num_kept_effects: [0,4] # [min, max]
+num_kept_effects: [0,0] # [min, max]
num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: False
-num_classes: 5
+num_classes: 1
effects_to_keep:
- - compressor
- - reverb
- - chorus
- - delay
effects_to_remove:
- distortion
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/compression_only.yaml b/cfg/exp/distortion_aug.yaml
similarity index 73%
rename from cfg/exp/compression_only.yaml
rename to cfg/exp/distortion_aug.yaml
index d51f7aefc2e9c42871d85b831e83420a2bfa4637..ca18c13d6cca246001a7253e54521be09789c60b 100644
--- a/cfg/exp/compression_only.yaml
+++ b/cfg/exp/distortion_aug.yaml
@@ -7,18 +7,23 @@ sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
-num_kept_effects: [0,0] # [min, max]
+num_kept_effects: [0,4] # [min, max]
num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: False
-num_classes: 1
+num_classes: 5
effects_to_keep:
-effects_to_remove:
- compressor
+ - reverb
+ - chorus
+ - delay
+effects_to_remove:
+ - distortion
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/remfx_all.yaml b/cfg/exp/remfx_all.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..7e0437a250d1b1716c1d69b46b7c6cea3f3a1590
--- /dev/null
+++ b/cfg/exp/remfx_all.yaml
@@ -0,0 +1,88 @@
+# @package _global_
+defaults:
+ - override /model: demucs
+ - override /effects: all
+seed: 12345
+sample_rate: 48000
+chunk_size: 262144 # 5.5s
+logs_dir: "./logs"
+accelerator: "gpu"
+log_audio: True
+
+# Effects
+num_kept_effects: [0,0] # [min, max]
+num_removed_effects: [0,5] # [min, max]
+shuffle_kept_effects: True
+shuffle_removed_effects: True
+num_classes: 5
+effects_to_keep:
+effects_to_remove:
+ - distortion
+ - compressor
+ - reverb
+ - chorus
+ - delay
+datamodule:
+ train_batch_size: 16
+ test_batch_size: 1
+ num_workers: 8
+
+dcunet:
+ _target_: remfx.models.RemFX
+ lr: 1e-4
+ lr_beta1: 0.95
+ lr_beta2: 0.999
+ lr_eps: 1e-6
+ lr_weight_decay: 1e-3
+ sample_rate: ${sample_rate}
+ network:
+ _target_: remfx.models.DCUNetModel
+ architecture: "Large-DCUNet-20"
+ stft_kernel_size: 512
+ fix_length_mode: "pad"
+ sample_rate: ${sample_rate}
+ num_bins: 1025
+
+classifier:
+ _target_: remfx.models.FXClassifier
+ lr: 3e-4
+ lr_weight_decay: 1e-3
+ sample_rate: ${sample_rate}
+ mixup: False
+ network:
+ _target_: remfx.classifier.Cnn14
+ num_classes: ${num_classes}
+ n_fft: 2048
+ hop_length: 512
+ n_mels: 128
+ sample_rate: ${sample_rate}
+ model_sample_rate: ${sample_rate}
+ specaugment: True
+classifier_ckpt: "ckpts/classifier.ckpt"
+
+ckpts:
+ RandomPedalboardDistortion:
+ model: ${model}
+ ckpt_path: "ckpts/demucs_distortion_aug.ckpt"
+ RandomPedalboardCompressor:
+ model: ${model}
+ ckpt_path: "ckpts/demucs_compressor_aug.ckpt"
+ RandomPedalboardReverb:
+ model: ${dcunet}
+ ckpt_path: "ckpts/dcunet_reverb_aug.ckpt"
+ RandomPedalboardChorus:
+ model: ${dcunet}
+ ckpt_path: "ckpts/dcunet_chorus_aug.ckpt"
+ RandomPedalboardDelay:
+ model: ${dcunet}
+ ckpt_path: "ckpts/dcunet_delay_aug.ckpt"
+
+inference_effects_ordering:
+ - "RandomPedalboardDistortion"
+ - "RandomPedalboardCompressor"
+ - "RandomPedalboardReverb"
+ - "RandomPedalboardChorus"
+ - "RandomPedalboardDelay"
+num_bins: 1025
+inference_effects_shuffle: True
+inference_use_all_effect_models: True
\ No newline at end of file
diff --git a/cfg/exp/remfx_detect.yaml b/cfg/exp/remfx_detect.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..77561ba47326da01dcbb33c43fc7025efefce073
--- /dev/null
+++ b/cfg/exp/remfx_detect.yaml
@@ -0,0 +1,88 @@
+# @package _global_
+defaults:
+ - override /model: demucs
+ - override /effects: all
+seed: 12345
+sample_rate: 48000
+chunk_size: 262144 # 5.5s
+logs_dir: "./logs"
+accelerator: "gpu"
+log_audio: True
+
+# Effects
+num_kept_effects: [0,0] # [min, max]
+num_removed_effects: [0,5] # [min, max]
+shuffle_kept_effects: True
+shuffle_removed_effects: True
+num_classes: 5
+effects_to_keep:
+effects_to_remove:
+ - distortion
+ - compressor
+ - reverb
+ - chorus
+ - delay
+datamodule:
+ train_batch_size: 16
+ test_batch_size: 1
+ num_workers: 8
+
+dcunet:
+ _target_: remfx.models.RemFX
+ lr: 1e-4
+ lr_beta1: 0.95
+ lr_beta2: 0.999
+ lr_eps: 1e-6
+ lr_weight_decay: 1e-3
+ sample_rate: ${sample_rate}
+ network:
+ _target_: remfx.models.DCUNetModel
+ architecture: "Large-DCUNet-20"
+ stft_kernel_size: 512
+ fix_length_mode: "pad"
+ sample_rate: ${sample_rate}
+ num_bins: 1025
+
+classifier:
+ _target_: remfx.models.FXClassifier
+ lr: 3e-4
+ lr_weight_decay: 1e-3
+ sample_rate: ${sample_rate}
+ mixup: False
+ network:
+ _target_: remfx.classifier.Cnn14
+ num_classes: ${num_classes}
+ n_fft: 2048
+ hop_length: 512
+ n_mels: 128
+ sample_rate: ${sample_rate}
+ model_sample_rate: ${sample_rate}
+ specaugment: True
+classifier_ckpt: "ckpts/classifier.ckpt"
+
+ckpts:
+ RandomPedalboardDistortion:
+ model: ${model}
+ ckpt_path: "ckpts/demucs_distortion_aug.ckpt"
+ RandomPedalboardCompressor:
+ model: ${model}
+ ckpt_path: "ckpts/demucs_compressor_aug.ckpt"
+ RandomPedalboardReverb:
+ model: ${dcunet}
+ ckpt_path: "ckpts/dcunet_reverb_aug.ckpt"
+ RandomPedalboardChorus:
+ model: ${dcunet}
+ ckpt_path: "ckpts/dcunet_chorus_aug.ckpt"
+ RandomPedalboardDelay:
+ model: ${dcunet}
+ ckpt_path: "ckpts/dcunet_delay_aug.ckpt"
+
+inference_effects_ordering:
+ - "RandomPedalboardDistortion"
+ - "RandomPedalboardCompressor"
+ - "RandomPedalboardReverb"
+ - "RandomPedalboardChorus"
+ - "RandomPedalboardDelay"
+num_bins: 1025
+inference_effects_shuffle: True
+inference_use_all_effect_models: False
\ No newline at end of file
diff --git a/cfg/exp/remfx_oracle.yaml b/cfg/exp/remfx_oracle.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..71d2edafab04b4531db1fe89d0ca80f373e50651
--- /dev/null
+++ b/cfg/exp/remfx_oracle.yaml
@@ -0,0 +1,72 @@
+# @package _global_
+defaults:
+ - override /model: demucs
+ - override /effects: all
+seed: 12345
+sample_rate: 48000
+chunk_size: 262144 # 5.5s
+logs_dir: "./logs"
+accelerator: "gpu"
+log_audio: True
+
+# Effects
+num_kept_effects: [0,0] # [min, max]
+num_removed_effects: [0,5] # [min, max]
+shuffle_kept_effects: True
+shuffle_removed_effects: True
+num_classes: 5
+effects_to_keep:
+effects_to_remove:
+ - distortion
+ - compressor
+ - reverb
+ - chorus
+ - delay
+datamodule:
+ train_batch_size: 16
+ test_batch_size: 1
+ num_workers: 8
+
+dcunet:
+ _target_: remfx.models.RemFX
+ lr: 1e-4
+ lr_beta1: 0.95
+ lr_beta2: 0.999
+ lr_eps: 1e-6
+ lr_weight_decay: 1e-3
+ sample_rate: ${sample_rate}
+ network:
+ _target_: remfx.models.DCUNetModel
+ architecture: "Large-DCUNet-20"
+ stft_kernel_size: 512
+ fix_length_mode: "pad"
+ sample_rate: ${sample_rate}
+ num_bins: 1025
+
+
+ckpts:
+ RandomPedalboardDistortion:
+ model: ${model}
+ ckpt_path: "ckpts/demucs_distortion_aug.ckpt"
+ RandomPedalboardCompressor:
+ model: ${model}
+ ckpt_path: "ckpts/demucs_compressor_aug.ckpt"
+ RandomPedalboardReverb:
+ model: ${dcunet}
+ ckpt_path: "ckpts/dcunet_reverb_aug.ckpt"
+ RandomPedalboardChorus:
+ model: ${dcunet}
+ ckpt_path: "ckpts/dcunet_chorus_aug.ckpt"
+ RandomPedalboardDelay:
+ model: ${dcunet}
+ ckpt_path: "ckpts/dcunet_delay_aug.ckpt"
+
+inference_effects_ordering:
+ - "RandomPedalboardDistortion"
+ - "RandomPedalboardCompressor"
+ - "RandomPedalboardReverb"
+ - "RandomPedalboardChorus"
+ - "RandomPedalboardDelay"
+num_bins: 1025
+inference_effects_shuffle: True
+inference_use_all_effect_models: False
\ No newline at end of file
diff --git a/cfg/exp/reverb.yaml b/cfg/exp/reverb.yaml
index a41c1d28d4eee71f66d5f99af8431eaaef11b807..e4154cae8412e9034f705f7c8bb6cb0bef05954f 100644
--- a/cfg/exp/reverb.yaml
+++ b/cfg/exp/reverb.yaml
@@ -1,28 +1,25 @@
# @package _global_
defaults:
- - override /model: demucs
+ - override /model: dcunet
- override /effects: all
seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "./logs"
render_files: True
-render_root: "/scratch/EffectSet"
+
accelerator: "gpu"
log_audio: True
# Effects
-num_kept_effects: [0,4] # [min, max]
+num_kept_effects: [0,0] # [min, max]
num_removed_effects: [1,1] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: False
-num_classes: 5
+num_classes: 1
effects_to_keep:
- - compressor
- - distortion
- - chorus
- - delay
effects_to_remove:
- reverb
datamodule:
- batch_size: 16
+ train_batch_size: 16
+ test_batch_size: 1
num_workers: 8
\ No newline at end of file
diff --git a/cfg/exp/reverb_aug.yaml b/cfg/exp/reverb_aug.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..0d5c8d72b6ac06023200e7eb3e8ec160fccdac82
--- /dev/null
+++ b/cfg/exp/reverb_aug.yaml
@@ -0,0 +1,29 @@
+# @package _global_
+defaults:
+ - override /model: dcunet
+ - override /effects: all
+seed: 12345
+sample_rate: 48000
+chunk_size: 262144 # 5.5s
+logs_dir: "./logs"
+render_files: True
+
+accelerator: "gpu"
+log_audio: True
+# Effects
+num_kept_effects: [0,4] # [min, max]
+num_removed_effects: [1,1] # [min, max]
+shuffle_kept_effects: True
+shuffle_removed_effects: False
+num_classes: 5
+effects_to_keep:
+ - compressor
+ - distortion
+ - chorus
+ - delay
+effects_to_remove:
+ - reverb
+datamodule:
+ train_batch_size: 16
+ test_batch_size: 1
+ num_workers: 8
\ No newline at end of file
diff --git a/cfg/model/audio_diffusion.yaml b/cfg/model/audio_diffusion.yaml
deleted file mode 100644
index fea1f8c92932e51948326480e0f3b98c157b8925..0000000000000000000000000000000000000000
--- a/cfg/model/audio_diffusion.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-# @package _global_
-model:
- _target_: remfx.models.RemFX
- lr: 1e-4
- lr_beta1: 0.95
- lr_beta2: 0.999
- lr_eps: 1e-6
- lr_weight_decay: 1e-3
- sample_rate: ${sample_rate}
- network:
- _target_: remfx.models.DiffusionGenerationModel
- n_channels: 1
-datamodule:
- dataset:
- effect_types: ["Clean"]
- batch_size: 2
diff --git a/diffusion_test2.ipynb b/diffusion_test2.ipynb
deleted file mode 100644
index 7c70ec1ea8b2cf6963170f948fbf7d59e77aa6ba..0000000000000000000000000000000000000000
--- a/diffusion_test2.ipynb
+++ /dev/null
@@ -1,188 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "code",
- "execution_count": 27,
- "id": "4c52cc1c-91f1-4b79-924b-041d2929ef7b",
- "metadata": {},
- "outputs": [],
- "source": [
- "from audio_diffusion_pytorch import AudioDiffusionModel\n",
- "import torch\n",
- "from IPython.display import Audio\n",
- "import matplotlib.pyplot as plt\n",
- "from tqdm import tqdm\n",
- "import numpy as np"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 28,
- "id": "a005011f-3019-4d34-bdf2-9a00e5480282",
- "metadata": {},
- "outputs": [],
- "source": [
- "device = torch.device(\"cuda:0\" if torch.cuda.is_available() else \"cpu\")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 29,
- "id": "1b689f18-375f-4b40-9ddc-a4ced6a5e5e4",
- "metadata": {},
- "outputs": [],
- "source": [
- "model = AudioDiffusionModel(in_channels=1, \n",
- " patch_size=1,\n",
- " multipliers=[1, 2, 4, 4, 4, 4, 4],\n",
- " factors=[2, 2, 2, 2, 2, 2],\n",
- " num_blocks=[2, 2, 2, 2, 2, 2],\n",
- " attentions=[0, 0, 0, 0, 0, 0]\n",
- " )\n",
- "model = model.to(device)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 30,
- "id": "bd8a1cb4-42b5-43bc-9a12-f594ce069b33",
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "torch.Size([1, 32768])\n"
- ]
- }
- ],
- "source": [
- "fs = 22050\n",
- "t = 32768\n",
- "fc_min = 220\n",
- "fc_max = 440\n",
- "batch_size = 8\n",
- "samples = torch.arange(t) / fs\n",
- "n_iters = 1000\n",
- "\n",
- "samples = samples.view(1, -1)\n",
- "print(samples.shape)\n",
- "\n",
- "lr = 1e-4\n",
- "optimizer = torch.optim.Adam(model.parameters(), lr, betas=(0.95, 0.999), eps=1e-6, weight_decay=1e-3)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 31,
- "id": "01265072",
- "metadata": {
- "scrolled": true
- },
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "999 - loss step: 0.0457 loss mean: 0.1161: 100%|██████████████████████████████████████████████████████████████████████| 1000/1000 [09:38<00:00, 1.73it/s]\n"
- ]
- }
- ],
- "source": [
- "losses = []\n",
- "pbar = tqdm(range(n_iters))\n",
- "for i in pbar:\n",
- " \n",
- " optimizer.zero_grad()\n",
- " \n",
- " # create a batch of random sine waves\n",
- " f = torch.randint(fc_min, fc_max, [batch_size,1])\n",
- " signals = torch.sin(2 * torch.pi * f * samples)\n",
- " signals = signals.view(batch_size, 1, -1)\n",
- " signals = signals.to(device)\n",
- "\n",
- " loss = model(signals)\n",
- " loss.backward() \n",
- " optimizer.step()\n",
- " \n",
- " losses.append(loss.item())\n",
- " pbar.set_description(f\"{i} - loss step: {loss.item():0.4f} loss mean: {np.mean(losses):0.4f}\")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 38,
- "id": "71d17c51-842c-40a1-81a1-a53bf358bc8a",
- "metadata": {},
- "outputs": [],
- "source": [
- "# Sample 2 sources given start noise\n",
- "noise = torch.randn(1, 1, t)\n",
- "noise = noise.to(device)\n",
- "sampled = model.sample(\n",
- " noise=noise,\n",
- " num_steps=50 # Suggested range: 2-50\n",
- ") # [2, 1, 2 ** 18]"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 39,
- "id": "59d71efa-05ac-4545-84da-8c09c033dfd7",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- " \n",
- " "
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 39,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "z = sampled[0]\n",
- "Audio(z.cpu(), rate=22050)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "81eddd71-bba7-4c62-8d50-900b295bb2f8",
- "metadata": {},
- "outputs": [],
- "source": []
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "Python 3 (ipykernel)",
- "language": "python",
- "name": "python3"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.9.5"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 5
-}
diff --git a/download_ckpts.sh b/download_ckpts.sh
new file mode 100755
index 0000000000000000000000000000000000000000..30c150102b0a3575cd06bb7c059b55e0c5928bdf
--- /dev/null
+++ b/download_ckpts.sh
@@ -0,0 +1,12 @@
+#! /bin/bash
+
+# make ckpts directory if not exist
+mkdir -p ckpts
+
+# download ckpts and save to ckpts directory
+wget https://zenodo.org/record/8179396/files/classifier.ckpt?download=1 -O ckpts/classifier.ckpt
+wget https://zenodo.org/record/8179396/files/dcunet_chorus_aug.ckpt?download=1 -O ckpts/dcunet_chorus_aug.ckpt
+wget https://zenodo.org/record/8179396/files/dcunet_delay_aug.ckpt?download=1 -O ckpts/dcunet_delay_aug.ckpt
+wget https://zenodo.org/record/8179396/files/dcunet_reverb_aug.ckpt?download=1 -O ckpts/dcunet_reverb_aug.ckpt
+wget https://zenodo.org/record/8179396/files/demucs_compressor_aug.ckpt?download=1 -O ckpts/demucs_compressor_aug.ckpt
+wget https://zenodo.org/record/8179396/files/demucs_distortion_aug.ckpt?download=1 -O ckpts/demucs_distortion_aug.ckpt
\ No newline at end of file
diff --git a/download_eval_datasets.sh b/download_eval_datasets.sh
new file mode 100755
index 0000000000000000000000000000000000000000..409a9dffaa06e7c5d4d462672006c21375c60e91
--- /dev/null
+++ b/download_eval_datasets.sh
@@ -0,0 +1,25 @@
+#! /bin/bash
+
+mkdir -p RemFX_eval_datasets
+cd RemFX_eval_datasets
+mkdir -p processed
+cd processed
+wget https://zenodo.org/record/8187288/files/0-0.zip?download=1 -O 0-0.zip
+wget https://zenodo.org/record/8187288/files/1-1.zip?download=1 -O 1-1.zip
+wget https://zenodo.org/record/8187288/files/2-2.zip?download=1 -O 2-2.zip
+wget https://zenodo.org/record/8187288/files/3-3.zip?download=1 -O 3-3.zip
+wget https://zenodo.org/record/8187288/files/4-4.zip?download=1 -O 4-4.zip
+wget https://zenodo.org/record/8187288/files/5-5.zip?download=1 -O 5-5.zip
+unzip 0-0.zip
+unzip 1-1.zip
+unzip 2-2.zip
+unzip 3-3.zip
+unzip 4-4.zip
+unzip 5-5.zip
+rm 0-0.zip
+rm 1-1.zip
+rm 2-2.zip
+rm 3-3.zip
+rm 4-4.zip
+rm 5-5.zip
+
diff --git a/eval.sh b/eval.sh
new file mode 100755
index 0000000000000000000000000000000000000000..cff6b24cbf27d3644f52457afc441c57f1ab1024
--- /dev/null
+++ b/eval.sh
@@ -0,0 +1,48 @@
+#! /bin/bash
+
+# Example usage:
+# ./eval.sh remfx_detect 0-0
+# ./eval.sh distortion_aug 0-0 -ckpt logs/ckpts/2023-01-21-12-21-44
+# First 2 arguments are required, third argument is optional
+
+# Default value for the optional parameter
+ckpt_path=""
+
+# Function to display script usage
+function display_usage {
+ echo "Usage: $0 [-ckpt {ckpt_path}]"
+}
+
+# Check if the number of arguments is less than 2 (minimum required)
+if [ "$#" -lt 2 ]; then
+ display_usage
+ exit 1
+fi
+
+dataset_name=$2
+
+# Parse optional parameter if provided
+if [ "$3" == "-ckpt" ]; then
+ # Check if the ckpt_path is provided
+ if [ -z "$4" ]; then
+ echo "Error: -ckpt flag requires a path argument."
+ display_usage
+ exit 1
+ fi
+ ckpt_path="$4"
+fi
+
+# If ckpt_path is empty, run chain inference
+if [ -z "$ckpt_path" ]; then
+ echo "Running chain inference"
+ python scripts/chain_inference.py +exp=$1 datamodule.train_dataset=None datamodule.val_dataset=None datamodule.test_dataset.render_root=./RemFX_eval_datasets/ render_files=False num_removed_effects=[${dataset_name:0:1},${dataset_name:2:1}]
+ exit 1
+fi
+
+
+# Otherwise run inference on the specified checkpoint
+echo "Running monolithic inference on checkpoint $3"
+python scripts/test.py +exp=$1 datamodule.train_dataset=None datamodule.val_dataset=None datamodule.test_dataset.render_root=./RemFX_eval_datasets/ datamodule.test_dataset.num_kept_effects="[0,0]" num_removed_effects=[${dataset_name:0:1},${dataset_name:2:1}] effects_to_keep=[] effects_to_remove="[distortion, compressor,reverb,chorus,delay]" render_files=False +ckpt_path=$ckpt_path
+
+
+
diff --git a/notebooks/Experiments.ipynb b/notebooks/Experiments.ipynb
deleted file mode 100644
index 5160ce83f8623d7125aec44e430c6b9e4aa38866..0000000000000000000000000000000000000000
--- a/notebooks/Experiments.ipynb
+++ /dev/null
@@ -1,1568 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "code",
- "execution_count": 3,
- "id": "c2807819",
- "metadata": {},
- "outputs": [],
- "source": [
- "from audio_diffusion_pytorch import AudioDiffusionModel\n",
- "import torch\n",
- "from tqdm import tqdm\n",
- "from IPython.display import Audio\n",
- "from pathlib import Path\n",
- "import torchaudio\n",
- "import torchaudio.transforms as T\n",
- "import pytorch_lightning as pl\n",
- "from torch.utils.data import random_split, DataLoader, Dataset\n",
- "import torch.nn.functional as F\n",
- "import wandb\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 4,
- "id": "cdd08230-c057-4a6e-83b9-435b2c0fbaaf",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "'1.13.0+cu117'"
- ]
- },
- "execution_count": 4,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "torch.__version__"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 2,
- "id": "469edd04",
- "metadata": {},
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "Failed to detect the name of this notebook, you can set it manually with the WANDB_NOTEBOOK_NAME environment variable to enable code saving.\n",
- "\u001b[34m\u001b[1mwandb\u001b[0m: Currently logged in as: \u001b[33mmattricesound\u001b[0m. Use \u001b[1m`wandb login --relogin`\u001b[0m to force relogin\n"
- ]
- },
- {
- "data": {
- "text/html": [
- "Tracking run with wandb version 0.13.6"
- ],
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "text/html": [
- "Run data is saved locally in /home/jovyan/RemFx/wandb/run-20221209_160820-9wzgwfl3
"
- ],
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "text/html": [
- "Syncing run fast-snowflake-6 to Weights & Biases (docs)
"
- ],
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "text/html": [
- ""
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 2,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "wandb.init(project=\"RemFX\", entity=\"mattricesound\")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 3,
- "id": "8d7eacfc",
- "metadata": {},
- "outputs": [],
- "source": [
- "SAMPLE_RATE = 22050\n",
- "LENGTH = 2**17#round(5 * SAMPLE_RATE) 6 seconds"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 6,
- "id": "d8f78b50-b8f5-4008-b986-fb02590a9cd1",
- "metadata": {},
- "outputs": [],
- "source": [
- "device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 9,
- "id": "cdc0fb64",
- "metadata": {},
- "outputs": [],
- "source": [
- "class GuitarDataset(Dataset):\n",
- " def __init__(self, root, length=LENGTH):\n",
- " self.files = list(Path().glob(f\"{root}/**/*.wav\"))\n",
- " self.resampler = T.Resample(48000, SAMPLE_RATE)\n",
- " \n",
- " def __len__(self):\n",
- " return len(self.files)\n",
- " \n",
- " def __getitem__(self, idx):\n",
- " x, sr = torchaudio.load(self.files[idx])\n",
- "# x = x.view() # Duplicate channel\n",
- " resampled_x = self.resampler(x)\n",
- " if resampled_x.shape[1] < LENGTH:\n",
- " resampled_x = F.pad(resampled_x, (0, LENGTH - resampled_x.shape[1]))\n",
- " elif resampled_x.shape[1] > LENGTH:\n",
- " resampled_x = resampled_x[:, :LENGTH]\n",
- " return resampled_x.to(device)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 10,
- "id": "148c2a96",
- "metadata": {},
- "outputs": [],
- "source": [
- "g = GuitarDataset(Path(\"Clean\"))"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 11,
- "id": "670c94a5",
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "torch.Size([1, 131072])\n"
- ]
- }
- ],
- "source": [
- "x = g[10]\n",
- "print(x.shape)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 12,
- "id": "e1c83600",
- "metadata": {},
- "outputs": [],
- "source": [
- "data = DataLoader(GuitarDataset(Path(\"Clean\")), batch_size=32)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 13,
- "id": "4d46f992",
- "metadata": {},
- "outputs": [],
- "source": [
- "dataiter = iter(data)\n",
- "x = next(dataiter)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 14,
- "id": "1103e520",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "torch.Size([1, 131072])"
- ]
- },
- "execution_count": 14,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "x[0].shape"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 15,
- "id": "6b0f1575",
- "metadata": {},
- "outputs": [],
- "source": [
- "# wandb.log({\"Audio\": wandb.Audio(x[0].view(-1).numpy(), sample_rate=SAMPLE_RATE)})"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 39,
- "id": "314fd8af-a813-436e-9ca5-29dc3a5ad460",
- "metadata": {},
- "outputs": [],
- "source": []
- },
- {
- "cell_type": "code",
- "execution_count": 7,
- "id": "eff19abd-304c-449e-9fb5-4e9ce4d4b19c",
- "metadata": {},
- "outputs": [],
- "source": [
- "model = AudioDiffusionModel(in_channels=1, \n",
- " patch_size=1,\n",
- " multipliers=[1, 2, 4, 4, 4, 4, 4],\n",
- " factors=[2, 2, 2, 2, 2, 2],\n",
- " num_blocks=[2, 2, 2, 2, 2, 2],\n",
- " attentions=[0, 0, 0, 0, 0, 0]\n",
- " )\n",
- "model = model.to(device)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 9,
- "id": "75dd6e95-5e31-43f5-a0f8-05c7e13e7a14",
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "300\n",
- "310\n",
- "320\n",
- "330\n",
- "340\n",
- "350\n",
- "360\n",
- "370\n",
- "380\n",
- "390\n",
- "400\n",
- "410\n",
- "420\n",
- "430\n",
- "440\n",
- "450\n",
- "460\n",
- "470\n",
- "480\n",
- "490\n",
- "500\n",
- "510\n",
- "520\n",
- "530\n",
- "540\n",
- "550\n",
- "560\n",
- "570\n",
- "580\n",
- "590\n",
- "600\n",
- "610\n",
- "620\n",
- "630\n",
- "640\n",
- "650\n",
- "660\n",
- "670\n",
- "680\n",
- "690\n",
- "700\n",
- "710\n",
- "720\n",
- "730\n",
- "740\n",
- "750\n",
- "760\n",
- "770\n",
- "780\n",
- "790\n",
- "800\n",
- "810\n",
- "820\n",
- "830\n",
- "840\n",
- "850\n",
- "860\n",
- "870\n",
- "880\n",
- "890\n",
- "900\n",
- "910\n",
- "920\n",
- "930\n",
- "940\n",
- "950\n",
- "960\n",
- "970\n",
- "980\n",
- "990\n",
- "1000\n",
- "1010\n",
- "1020\n",
- "1030\n",
- "1040\n",
- "1050\n",
- "1060\n",
- "1070\n",
- "1080\n",
- "1090\n",
- "1100\n",
- "1110\n",
- "1120\n",
- "1130\n",
- "1140\n",
- "1150\n",
- "1160\n",
- "1170\n",
- "1180\n",
- "1190\n",
- "1200\n",
- "1210\n",
- "1220\n",
- "1230\n",
- "1240\n",
- "1250\n",
- "1260\n",
- "1270\n",
- "1280\n",
- "1290\n",
- "1300\n",
- "1310\n",
- "1320\n",
- "1330\n",
- "1340\n",
- "1350\n",
- "1360\n",
- "1370\n",
- "1380\n",
- "1390\n",
- "1400\n",
- "1410\n",
- "1420\n",
- "1430\n",
- "1440\n",
- "1450\n",
- "1460\n",
- "1470\n",
- "1480\n",
- "1490\n",
- "1500\n",
- "1510\n",
- "1520\n",
- "1530\n",
- "1540\n",
- "1550\n",
- "1560\n",
- "1570\n",
- "1580\n",
- "1590\n",
- "1600\n",
- "1610\n",
- "1620\n",
- "1630\n",
- "1640\n",
- "1650\n",
- "1660\n",
- "1670\n",
- "1680\n",
- "1690\n",
- "1700\n",
- "1710\n",
- "1720\n",
- "1730\n",
- "1740\n",
- "1750\n",
- "1760\n",
- "1770\n",
- "1780\n",
- "1790\n",
- "1800\n",
- "1810\n",
- "1820\n",
- "1830\n",
- "1840\n",
- "1850\n",
- "1860\n",
- "1870\n",
- "1880\n",
- "1890\n",
- "1900\n",
- "1910\n",
- "1920\n",
- "1930\n",
- "1940\n",
- "1950\n",
- "1960\n",
- "1970\n",
- "1980\n",
- "1990\n",
- "2000\n",
- "2010\n",
- "2020\n",
- "2030\n",
- "2040\n",
- "2050\n",
- "2060\n",
- "2070\n",
- "2080\n",
- "2090\n",
- "2100\n",
- "2110\n",
- "2120\n",
- "2130\n",
- "2140\n",
- "2150\n",
- "2160\n",
- "2170\n",
- "2180\n",
- "2190\n",
- "2200\n",
- "2210\n",
- "2220\n",
- "2230\n",
- "2240\n",
- "2250\n",
- "2260\n",
- "2270\n",
- "2280\n",
- "2290\n",
- "2300\n",
- "2310\n",
- "2320\n",
- "2330\n",
- "2340\n",
- "2350\n",
- "2360\n",
- "2370\n",
- "2380\n",
- "2390\n",
- "2400\n",
- "2410\n",
- "2420\n",
- "2430\n",
- "2440\n",
- "2450\n",
- "2460\n",
- "2470\n",
- "2480\n",
- "2490\n",
- "2500\n",
- "2510\n",
- "2520\n",
- "2530\n",
- "2540\n",
- "2550\n",
- "2560\n",
- "2570\n",
- "2580\n",
- "2590\n",
- "2600\n",
- "2610\n",
- "2620\n",
- "2630\n",
- "2640\n",
- "2650\n",
- "2660\n",
- "2670\n",
- "2680\n",
- "2690\n",
- "2700\n",
- "2710\n",
- "2720\n",
- "2730\n",
- "2740\n",
- "2750\n",
- "2760\n",
- "2770\n",
- "2780\n",
- "2790\n",
- "2800\n",
- "2810\n",
- "2820\n",
- "2830\n",
- "2840\n",
- "2850\n",
- "2860\n",
- "2870\n",
- "2880\n",
- "2890\n",
- "2900\n",
- "2910\n",
- "2920\n",
- "2930\n",
- "2940\n",
- "2950\n",
- "2960\n",
- "2970\n",
- "2980\n",
- "2990\n",
- "3000\n",
- "3010\n",
- "3020\n",
- "3030\n",
- "3040\n",
- "3050\n",
- "3060\n",
- "3070\n",
- "3080\n",
- "3090\n",
- "3100\n",
- "3110\n",
- "3120\n",
- "3130\n",
- "3140\n",
- "3150\n",
- "3160\n",
- "3170\n",
- "3180\n",
- "3190\n",
- "3200\n",
- "3210\n",
- "3220\n",
- "3230\n",
- "3240\n",
- "3250\n",
- "3260\n",
- "3270\n",
- "3280\n",
- "3290\n",
- "3300\n",
- "3310\n",
- "3320\n",
- "3330\n",
- "3340\n",
- "3350\n",
- "3360\n",
- "3370\n",
- "3380\n",
- "3390\n",
- "3400\n",
- "3410\n",
- "3420\n",
- "3430\n",
- "3440\n",
- "3450\n",
- "3460\n",
- "3470\n",
- "3480\n",
- "3490\n",
- "3500\n",
- "3510\n",
- "3520\n",
- "3530\n",
- "3540\n",
- "3550\n",
- "3560\n",
- "3570\n",
- "3580\n",
- "3590\n",
- "3600\n",
- "3610\n",
- "3620\n",
- "3630\n",
- "3640\n",
- "3650\n",
- "3660\n",
- "3670\n",
- "3680\n",
- "3690\n",
- "3700\n",
- "3710\n",
- "3720\n",
- "3730\n",
- "3740\n",
- "3750\n",
- "3760\n",
- "3770\n",
- "3780\n",
- "3790\n",
- "3800\n",
- "3810\n",
- "3820\n",
- "3830\n",
- "3840\n",
- "3850\n",
- "3860\n",
- "3870\n",
- "3880\n",
- "3890\n",
- "3900\n",
- "3910\n",
- "3920\n",
- "3930\n",
- "3940\n",
- "3950\n",
- "3960\n",
- "3970\n",
- "3980\n",
- "3990\n",
- "4000\n",
- "4010\n",
- "4020\n",
- "4030\n",
- "4040\n",
- "4050\n",
- "4060\n",
- "4070\n",
- "4080\n",
- "4090\n",
- "4100\n",
- "4110\n",
- "4120\n",
- "4130\n",
- "4140\n",
- "4150\n",
- "4160\n",
- "4170\n",
- "4180\n",
- "4190\n",
- "4200\n",
- "4210\n",
- "4220\n",
- "4230\n",
- "4240\n",
- "4250\n",
- "4260\n",
- "4270\n",
- "4280\n",
- "4290\n",
- "4300\n",
- "4310\n",
- "4320\n",
- "4330\n",
- "4340\n",
- "4350\n",
- "4360\n",
- "4370\n",
- "4380\n",
- "4390\n",
- "4400\n",
- "4410\n",
- "4420\n",
- "4430\n",
- "4440\n",
- "4450\n",
- "4460\n",
- "4470\n",
- "4480\n",
- "4490\n",
- "4500\n",
- "4510\n",
- "4520\n",
- "4530\n",
- "4540\n",
- "4550\n",
- "4560\n",
- "4570\n",
- "4580\n",
- "4590\n",
- "4600\n",
- "4610\n",
- "4620\n",
- "4630\n",
- "4640\n",
- "4650\n",
- "4660\n",
- "4670\n",
- "4680\n",
- "4690\n",
- "4700\n",
- "4710\n",
- "4720\n",
- "4730\n",
- "4740\n",
- "4750\n",
- "4760\n",
- "4770\n",
- "4780\n",
- "4790\n",
- "4800\n",
- "4810\n",
- "4820\n",
- "4830\n",
- "4840\n",
- "4850\n",
- "4860\n",
- "4870\n",
- "4880\n",
- "4890\n",
- "4900\n",
- "4910\n",
- "4920\n",
- "4930\n",
- "4940\n",
- "4950\n",
- "4960\n",
- "4970\n",
- "4980\n",
- "4990\n",
- "5000\n",
- "5010\n",
- "5020\n",
- "5030\n",
- "5040\n",
- "5050\n",
- "5060\n",
- "5070\n",
- "5080\n",
- "5090\n",
- "5100\n",
- "5110\n",
- "5120\n",
- "5130\n",
- "5140\n",
- "5150\n",
- "5160\n",
- "5170\n",
- "5180\n",
- "5190\n",
- "5200\n",
- "5210\n",
- "5220\n",
- "5230\n",
- "5240\n",
- "5250\n",
- "5260\n",
- "5270\n",
- "5280\n",
- "5290\n",
- "5300\n",
- "5310\n",
- "5320\n",
- "5330\n",
- "5340\n",
- "5350\n",
- "5360\n",
- "5370\n",
- "5380\n",
- "5390\n",
- "5400\n",
- "5410\n",
- "5420\n",
- "5430\n",
- "5440\n",
- "5450\n",
- "5460\n",
- "5470\n",
- "5480\n",
- "5490\n",
- "5500\n",
- "5510\n",
- "5520\n",
- "5530\n",
- "5540\n",
- "5550\n",
- "5560\n",
- "5570\n",
- "5580\n",
- "5590\n",
- "5600\n",
- "5610\n",
- "5620\n",
- "5630\n",
- "5640\n",
- "5650\n",
- "5660\n",
- "5670\n",
- "5680\n",
- "5690\n",
- "5700\n",
- "5710\n",
- "5720\n",
- "5730\n",
- "5740\n",
- "5750\n",
- "5760\n",
- "5770\n",
- "5780\n",
- "5790\n",
- "5800\n",
- "5810\n",
- "5820\n",
- "5830\n",
- "5840\n",
- "5850\n",
- "5860\n",
- "5870\n",
- "5880\n",
- "5890\n",
- "5900\n",
- "5910\n",
- "5920\n",
- "5930\n",
- "5940\n",
- "5950\n",
- "5960\n",
- "5970\n",
- "5980\n",
- "5990\n",
- "6000\n",
- "6010\n",
- "6020\n",
- "6030\n",
- "6040\n",
- "6050\n",
- "6060\n",
- "6070\n",
- "6080\n",
- "6090\n",
- "6100\n",
- "6110\n",
- "6120\n",
- "6130\n",
- "6140\n",
- "6150\n",
- "6160\n",
- "6170\n",
- "6180\n",
- "6190\n",
- "6200\n",
- "6210\n",
- "6220\n",
- "6230\n",
- "6240\n",
- "6250\n",
- "6260\n",
- "6270\n",
- "6280\n",
- "6290\n",
- "6300\n",
- "6310\n",
- "6320\n",
- "6330\n",
- "6340\n",
- "6350\n",
- "6360\n",
- "6370\n",
- "6380\n",
- "6390\n",
- "6400\n",
- "6410\n",
- "6420\n",
- "6430\n",
- "6440\n",
- "6450\n",
- "6460\n",
- "6470\n",
- "6480\n",
- "6490\n",
- "6500\n",
- "6510\n",
- "6520\n",
- "6530\n",
- "6540\n",
- "6550\n",
- "6560\n",
- "6570\n",
- "6580\n",
- "6590\n",
- "6600\n",
- "6610\n",
- "6620\n",
- "6630\n",
- "6640\n",
- "6650\n",
- "6660\n",
- "6670\n",
- "6680\n",
- "6690\n",
- "6700\n",
- "6710\n",
- "6720\n",
- "6730\n",
- "6740\n",
- "6750\n",
- "6760\n",
- "6770\n",
- "6780\n",
- "6790\n",
- "6800\n",
- "6810\n",
- "6820\n",
- "6830\n",
- "6840\n",
- "6850\n",
- "6860\n",
- "6870\n",
- "6880\n",
- "6890\n",
- "6900\n",
- "6910\n",
- "6920\n",
- "6930\n",
- "6940\n",
- "6950\n",
- "6960\n",
- "6970\n",
- "6980\n",
- "6990\n",
- "7000\n",
- "7010\n",
- "7020\n",
- "7030\n",
- "7040\n",
- "7050\n",
- "7060\n",
- "7070\n",
- "7080\n",
- "7090\n",
- "7100\n",
- "7110\n",
- "7120\n",
- "7130\n",
- "7140\n",
- "7150\n",
- "7160\n",
- "7170\n",
- "7180\n",
- "7190\n",
- "7200\n",
- "7210\n",
- "7220\n",
- "7230\n",
- "7240\n",
- "7250\n",
- "7260\n",
- "7270\n",
- "7280\n",
- "7290\n",
- "7300\n",
- "7310\n",
- "7320\n",
- "7330\n",
- "7340\n",
- "7350\n",
- "7360\n",
- "7370\n",
- "7380\n",
- "7390\n",
- "7400\n",
- "7410\n",
- "7420\n",
- "7430\n",
- "7440\n",
- "7450\n",
- "7460\n",
- "7470\n",
- "7480\n",
- "7490\n",
- "7500\n",
- "7510\n",
- "7520\n",
- "7530\n",
- "7540\n",
- "7550\n",
- "7560\n",
- "7570\n",
- "7580\n",
- "7590\n",
- "7600\n",
- "7610\n",
- "7620\n",
- "7630\n",
- "7640\n",
- "7650\n",
- "7660\n",
- "7670\n",
- "7680\n",
- "7690\n",
- "7700\n",
- "7710\n",
- "7720\n",
- "7730\n",
- "7740\n",
- "7750\n",
- "7760\n",
- "7770\n",
- "7780\n",
- "7790\n",
- "7800\n",
- "7810\n",
- "7820\n",
- "7830\n",
- "7840\n",
- "7850\n",
- "7860\n",
- "7870\n",
- "7880\n",
- "7890\n",
- "7900\n",
- "7910\n",
- "7920\n",
- "7930\n",
- "7940\n",
- "7950\n",
- "7960\n",
- "7970\n",
- "7980\n",
- "7990\n",
- "8000\n",
- "8010\n",
- "8020\n",
- "8030\n",
- "8040\n",
- "8050\n",
- "8060\n",
- "8070\n",
- "8080\n",
- "8090\n",
- "8100\n",
- "8110\n",
- "8120\n",
- "8130\n",
- "8140\n",
- "8150\n",
- "8160\n",
- "8170\n",
- "8180\n",
- "8190\n",
- "8200\n",
- "8210\n",
- "8220\n",
- "8230\n",
- "8240\n",
- "8250\n",
- "8260\n",
- "8270\n",
- "8280\n",
- "8290\n",
- "8300\n",
- "8310\n",
- "8320\n",
- "8330\n",
- "8340\n",
- "8350\n",
- "8360\n",
- "8370\n",
- "8380\n",
- "8390\n",
- "8400\n",
- "8410\n",
- "8420\n",
- "8430\n",
- "8440\n",
- "8450\n",
- "8460\n",
- "8470\n",
- "8480\n",
- "8490\n",
- "8500\n",
- "8510\n",
- "8520\n",
- "8530\n",
- "8540\n",
- "8550\n",
- "8560\n",
- "8570\n",
- "8580\n",
- "8590\n",
- "8600\n",
- "8610\n",
- "8620\n",
- "8630\n",
- "8640\n",
- "8650\n",
- "8660\n",
- "8670\n",
- "8680\n",
- "8690\n",
- "8700\n",
- "8710\n",
- "8720\n",
- "8730\n",
- "8740\n",
- "8750\n",
- "8760\n",
- "8770\n",
- "8780\n",
- "8790\n",
- "8800\n",
- "8810\n",
- "8820\n",
- "8830\n",
- "8840\n",
- "8850\n",
- "8860\n",
- "8870\n",
- "8880\n",
- "8890\n",
- "8900\n",
- "8910\n",
- "8920\n",
- "8930\n",
- "8940\n",
- "8950\n",
- "8960\n",
- "8970\n",
- "8980\n",
- "8990\n"
- ]
- }
- ],
- "source": [
- "fs = 22050\n",
- "t = 2 ** 18 / 22050\n",
- "samples = torch.arange(t * fs) / fs\n",
- "\n",
- "for i in range(300, 8000):\n",
- " f = i\n",
- " signal1 = torch.sin(2 * torch.pi * f * samples)\n",
- " signal2 = torch.sin(2 * torch.pi * (f*2) * samples)\n",
- " stacked_signal = torch.stack((signal1, signal2)).unsqueeze(1)\n",
- " stacked_signal = stacked_signal.to(device)\n",
- " loss = model(stacked_signal)\n",
- " loss.backward() \n",
- " if i % 10 == 0:\n",
- " print(i)\n",
- "\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 10,
- "id": "bda06495-0546-4474-ba5c-bf55e4887329",
- "metadata": {},
- "outputs": [],
- "source": [
- "# Sample 2 sources given start noise\n",
- "noise = torch.randn(2, 1, 2 ** 18)\n",
- "noise = noise.to(device)\n",
- "sampled = model.sample(\n",
- " noise=noise,\n",
- " num_steps=10 # Suggested range: 2-50\n",
- ") # [2, 1, 2 ** 18]"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 11,
- "id": "2d025c1e-3618-4801-9b9b-b4e50e41dcf7",
- "metadata": {},
- "outputs": [],
- "source": [
- "z = sampled[1]"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 12,
- "id": "583d4d28-7b1b-463b-8642-4975b36f38f2",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "torch.Size([1, 262144])"
- ]
- },
- "execution_count": 12,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "z.shape"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 13,
- "id": "eeec47b7-4b99-4239-9c61-fd36ad881876",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- " \n",
- " "
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 13,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "Audio(z.cpu(), rate=22050)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 14,
- "id": "4d87215c-4f2d-410b-ac33-7cc1d9f73fac",
- "metadata": {},
- "outputs": [
- {
- "ename": "NameError",
- "evalue": "name 'sig' is not defined",
- "output_type": "error",
- "traceback": [
- "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
- "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
- "Cell \u001b[0;32mIn [14], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m Audio(\u001b[43msig\u001b[49m[\u001b[38;5;241m0\u001b[39m], rate\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m22050\u001b[39m)\n",
- "\u001b[0;31mNameError\u001b[0m: name 'sig' is not defined"
- ]
- }
- ],
- "source": [
- "Audio(sig[0], rate=22050)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 18,
- "id": "2ccb733d-706a-4535-93b6-73ae2469de8a",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- " \n",
- " "
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 18,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "Audio(stacked_signal[1].cpu(), rate=22050)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 47,
- "id": "0377cc63-846b-4acf-8fa9-f1d4a2b07be4",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "7999"
- ]
- },
- "execution_count": 47,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "i"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 70,
- "id": "dcf6a106-7967-470a-932e-156b00e46ab2",
- "metadata": {},
- "outputs": [],
- "source": [
- "f = 4000\n",
- "signal1 = torch.sin(2 * torch.pi * f * samples)\n",
- "signal2 = torch.sin(2 * torch.pi * (f*2) * samples)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 72,
- "id": "fac2d679-9e68-4bcc-8119-745435d128ed",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- " \n",
- " "
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 72,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "Audio(signal1.cpu(), rate=22050)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 66,
- "id": "ddf58e57-4660-4e1a-83e3-5909da3b42fe",
- "metadata": {},
- "outputs": [],
- "source": [
- "fs = 22050\n",
- "f = 440\n",
- "t = 2 ** 18 / 22050\n",
- "samples = torch.arange(t * fs) / fs\n",
- "signal = torch.sin(2 * torch.pi * f * samples)\n",
- "sig = torch.stack((signal, signal)).unsqueeze(1)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 7,
- "id": "faef7cc2-94b0-4b85-919f-0339542570c7",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "torch.Size([2, 1, 262144])"
- ]
- },
- "execution_count": 7,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "sig.shape"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 17,
- "id": "6cd94fea-3d4c-4a5b-bcba-2220fb3e9414",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "16384.0"
- ]
- },
- "execution_count": 17,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "262144 / 16"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 89,
- "id": "a62143ce-e47b-49e8-979f-e9241068d744",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "torch.Size([264600])"
- ]
- },
- "execution_count": 89,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "signal.shape"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 17,
- "id": "e79b1b33-1905-4ae6-9dbe-73b68eec1dc5",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- " \n",
- " "
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 17,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "Audio(sig[0], rate=22050)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 24,
- "id": "a6a2bb97",
- "metadata": {},
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "100%|██████████| 500/500 [15:47:21<00:00, 113.68s/it] \n"
- ]
- }
- ],
- "source": [
- "epochs = 500\n",
- "for i in tqdm(range(epochs)):\n",
- " for batch in data:\n",
- " loss = model(batch)\n",
- " loss.backward()\n",
- " if i % 10 == 0:\n",
- " wandb.log({\"loss\": loss})\n",
- " with torch.no_grad():\n",
- " noise = torch.randn(1, 1, 2**17).to(device)\n",
- " sampled = model.sample(noise=noise, num_steps=40)\n",
- " z = sampled.view(-1)\n",
- " wandb.log({f\"Audio_{i}\": wandb.Audio(z.cpu().numpy(), sample_rate=SAMPLE_RATE)})\n",
- " \n",
- " \n",
- " "
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 259,
- "id": "d18e4816",
- "metadata": {},
- "outputs": [],
- "source": [
- "noise = torch.randn(1, 1, 2**17)\n",
- "sampled = model.sample(noise=noise, num_steps=50)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 260,
- "id": "054e708f",
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "torch.Size([1, 1, 131072]) tensor([[[-0.4879, -0.4534, -0.4094, ..., -1.0000, 0.8554, -0.9605]]])\n"
- ]
- }
- ],
- "source": [
- "print(sampled.shape, sampled)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 32,
- "id": "fc8becc0",
- "metadata": {},
- "outputs": [],
- "source": [
- "z = sampled.view(-1)\n",
- "# z = z.mean(axis=0)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "2c2296ba-7e43-4155-a754-349a7ee5f519",
- "metadata": {},
- "outputs": [],
- "source": []
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "887fc2c1-de1a-4847-86ca-88b7c59f45fb",
- "metadata": {},
- "outputs": [],
- "source": []
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "55e3555b-3f88-4a33-9fc8-a47bf5f28df7",
- "metadata": {},
- "outputs": [],
- "source": []
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "Python 3 (ipykernel)",
- "language": "python",
- "name": "python3"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 5
-}
diff --git a/notebooks/diffusion_test.ipynb b/notebooks/diffusion_test.ipynb
deleted file mode 100644
index 7b59f1b3cc5b8dabcbf2edac9fe19b474a758785..0000000000000000000000000000000000000000
--- a/notebooks/diffusion_test.ipynb
+++ /dev/null
@@ -1,876 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "code",
- "execution_count": 1,
- "id": "4c52cc1c-91f1-4b79-924b-041d2929ef7b",
- "metadata": {},
- "outputs": [],
- "source": [
- "from audio_diffusion_pytorch import AudioDiffusionModel, Sampler, Schedule, VSampler, LinearSchedule, AudioDiffusionAE\n",
- "import torch\n",
- "from torch import Tensor, nn, optim\n",
- "from IPython.display import Audio\n",
- "import pytorch_lightning as pl\n",
- "from torch.utils.data import random_split, DataLoader, Dataset\n",
- "\n",
- "from einops import rearrange\n",
- "from ema_pytorch import EMA\n",
- "from pytorch_lightning import Callback, Trainer\n",
- "from typing import Any, Callable, Dict, List, Optional, Sequence, Union\n",
- "from pytorch_lightning.loggers import WandbLogger\n",
- "import wandb\n",
- "import torchaudio\n",
- "import librosa\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 2,
- "id": "a005011f-3019-4d34-bdf2-9a00e5480282",
- "metadata": {},
- "outputs": [],
- "source": [
- "# device = torch.device(\"cuda:1\" if torch.cuda.is_available() else \"cpu\")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 3,
- "id": "6349ed8e-f418-436f-860e-62a51e48f79a",
- "metadata": {},
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "Failed to detect the name of this notebook, you can set it manually with the WANDB_NOTEBOOK_NAME environment variable to enable code saving.\n",
- "\u001b[34m\u001b[1mwandb\u001b[0m: Currently logged in as: \u001b[33mmattricesound\u001b[0m. Use \u001b[1m`wandb login --relogin`\u001b[0m to force relogin\n"
- ]
- },
- {
- "data": {
- "text/html": [
- "Tracking run with wandb version 0.13.7"
- ],
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "text/html": [
- "Run data is saved locally in ./wandb/run-20230107_213018-192gzo2n
"
- ],
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "text/html": [
- "Syncing run laced-bush-17 to Weights & Biases (docs)
"
- ],
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
- "source": [
- "wandb_logger = WandbLogger(project=\"RemFX\", save_dir=\"./\")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 4,
- "id": "1b689f18-375f-4b40-9ddc-a4ced6a5e5e4",
- "metadata": {},
- "outputs": [],
- "source": [
- "#AudioDiffusionModel\n",
- "#AudioDiffusionAE\n",
- "model = AudioDiffusionModel(in_channels=1, \n",
- " patch_size=1,\n",
- " multipliers=[1, 2, 4, 4, 4, 4, 4],\n",
- " factors=[2, 2, 2, 2, 2, 2],\n",
- " num_blocks=[2, 2, 2, 2, 2, 2],\n",
- " attentions=[0, 0, 0, 0, 0, 0]\n",
- " )\n",
- "\n",
- "\n",
- "# model = model.to(device)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 5,
- "id": "950711d4-9e8a-4af1-8d56-204e4ce0a19b",
- "metadata": {},
- "outputs": [],
- "source": [
- "class Model(pl.LightningModule):\n",
- " def __init__(\n",
- " self,\n",
- " lr: float,\n",
- " lr_eps: float,\n",
- " lr_beta1: float,\n",
- " lr_beta2: float,\n",
- " lr_weight_decay: float,\n",
- " ema_beta: float,\n",
- " ema_power: float,\n",
- " model: nn.Module,\n",
- " ):\n",
- " super().__init__()\n",
- " self.lr = lr\n",
- " self.lr_eps = lr_eps\n",
- " self.lr_beta1 = lr_beta1\n",
- " self.lr_beta2 = lr_beta2\n",
- " self.lr_weight_decay = lr_weight_decay\n",
- " self.model = model\n",
- " self.model_ema = EMA(self.model, beta=ema_beta, power=ema_power)\n",
- "\n",
- " @property\n",
- " def device(self):\n",
- " return next(self.model.parameters()).device\n",
- "\n",
- " def configure_optimizers(self):\n",
- " optimizer = torch.optim.AdamW(\n",
- " list(self.parameters()),\n",
- " lr=self.lr,\n",
- " betas=(self.lr_beta1, self.lr_beta2),\n",
- " eps=self.lr_eps,\n",
- " weight_decay=self.lr_weight_decay,\n",
- " )\n",
- " return optimizer\n",
- "\n",
- " def training_step(self, batch, batch_idx):\n",
- " waveforms = batch\n",
- " loss = self.model(waveforms)\n",
- " self.log(\"train_loss\", loss)\n",
- " self.model_ema.update()\n",
- " self.log(\"ema_decay\", self.model_ema.get_current_decay())\n",
- " return loss\n",
- "\n",
- " def validation_step(self, batch, batch_idx):\n",
- " waveforms = batch\n",
- " loss = self.model_ema(waveforms)\n",
- " self.log(\"valid_loss\", loss)\n",
- " return loss"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "7ce9b20b-d163-425a-a92d-8ddb1a92b905",
- "metadata": {},
- "outputs": [],
- "source": []
- },
- {
- "cell_type": "code",
- "execution_count": 6,
- "id": "cfa42700-f190-485d-84b9-d9203f8275d7",
- "metadata": {},
- "outputs": [],
- "source": [
- "params = {\n",
- " \"lr\": 1e-4,\n",
- " \"lr_beta1\": 0.95,\n",
- " \"lr_beta2\": 0.999,\n",
- " \"lr_eps\": 1e-6,\n",
- " \"lr_weight_decay\": 1e-3,\n",
- " \"ema_beta\": 0.995,\n",
- " \"ema_power\": 0.7,\n",
- " \"model\": model \n",
- "}\n",
- "diffModel = Model(**params)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 7,
- "id": "aa4029a4-efd8-4922-a863-cf7677e86c05",
- "metadata": {},
- "outputs": [],
- "source": [
- "fs = 22050\n",
- "t = 2 ** 18 / fs # 12 seconds\n",
- "\n",
- "class SinDataset(Dataset):\n",
- " def __init__(self, num):\n",
- " self.n = num\n",
- " self.samples = torch.arange(t * fs) / fs\n",
- " def __len__(self):\n",
- " return self.n\n",
- " def __getitem__(self, i): \n",
- " f = 6000 * torch.rand(1) + 300\n",
- " signal = torch.sin(2 * torch.pi * (f*2) * self.samples).unsqueeze(0)\n",
- " return signal"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 8,
- "id": "ae57ad99-fdaf-4720-91b0-ce9338e6a811",
- "metadata": {},
- "outputs": [],
- "source": [
- "data = DataLoader(SinDataset(1000), batch_size=2)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 9,
- "id": "7b131b37-485f-4d4f-8616-6e7afe25beb9",
- "metadata": {},
- "outputs": [],
- "source": [
- "val_data = DataLoader(SinDataset(1000), batch_size=2)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 10,
- "id": "4d98c1a0-1763-4d0b-be1d-e84ace68bebb",
- "metadata": {},
- "outputs": [],
- "source": [
- "dataiter = iter(data)\n",
- "x = next(dataiter)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 11,
- "id": "c3259082-20d5-415c-8a88-3b97af6615ee",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "torch.Size([2, 1, 262144])"
- ]
- },
- "execution_count": 11,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "x.shape"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 12,
- "id": "d1ec36ea-0f9c-49f6-8f24-a479084ea230",
- "metadata": {},
- "outputs": [],
- "source": [
- "class SampleLogger(Callback):\n",
- " def __init__(\n",
- " self,\n",
- " num_items: int,\n",
- " channels: int,\n",
- " sampling_rate: int,\n",
- " length: int,\n",
- " sampling_steps: List[int],\n",
- " diffusion_schedule: Schedule,\n",
- " diffusion_sampler: Sampler,\n",
- " use_ema_model: bool,\n",
- " ) -> None:\n",
- " self.num_items = num_items\n",
- " self.channels = channels\n",
- " self.sampling_rate = sampling_rate\n",
- " self.length = length\n",
- " self.sampling_steps = sampling_steps\n",
- " self.diffusion_schedule = diffusion_schedule\n",
- " self.diffusion_sampler = diffusion_sampler\n",
- " self.use_ema_model = use_ema_model\n",
- "\n",
- " self.log_next = False\n",
- "\n",
- " def on_validation_epoch_start(self, trainer, pl_module):\n",
- " self.log_next = True\n",
- "\n",
- " def on_validation_batch_start(\n",
- " self, trainer, pl_module, batch, batch_idx, dataloader_idx\n",
- " ):\n",
- " if self.log_next:\n",
- " self.log_sample(trainer, pl_module, batch)\n",
- " self.log_next = False\n",
- "\n",
- " @torch.no_grad()\n",
- " def log_sample(self, trainer, pl_module, batch):\n",
- " is_train = pl_module.training\n",
- " if is_train:\n",
- " pl_module.eval()\n",
- "\n",
- " wandb_logger = get_wandb_logger(trainer).experiment\n",
- "\n",
- " diffusion_model = pl_module.model\n",
- " if self.use_ema_model:\n",
- " diffusion_model = pl_module.model_ema.ema_model\n",
- " # Get start diffusion noise\n",
- " noise = torch.randn(\n",
- " (self.num_items, self.channels, self.length), device=pl_module.device\n",
- " )\n",
- "\n",
- " for steps in self.sampling_steps:\n",
- " samples = diffusion_model.sample(\n",
- " noise=noise,\n",
- " sampler=self.diffusion_sampler,\n",
- " sigma_schedule=self.diffusion_schedule,\n",
- " num_steps=steps,\n",
- " )\n",
- " log_wandb_audio_batch(\n",
- " logger=wandb_logger,\n",
- " id=\"sample\",\n",
- " samples=samples,\n",
- " sampling_rate=self.sampling_rate,\n",
- " caption=f\"Sampled in {steps} steps\",\n",
- " )\n",
- " # log_wandb_audio_spectrogram(\n",
- " # logger=wandb_logger,\n",
- " # id=\"sample\",\n",
- " # samples=samples,\n",
- " # sampling_rate=self.sampling_rate,\n",
- " # caption=f\"Sampled in {steps} steps\",\n",
- " # )\n",
- "\n",
- " if is_train:\n",
- " pl_module.train()\n",
- "\n",
- "def get_wandb_logger(trainer: Trainer) -> Optional[WandbLogger]:\n",
- " \"\"\"Safely get Weights&Biases logger from Trainer.\"\"\"\n",
- "\n",
- " if isinstance(trainer.logger, WandbLogger):\n",
- " return trainer.logger\n",
- "\n",
- " if isinstance(trainer.logger, LoggerCollection):\n",
- " for logger in trainer.logger:\n",
- " if isinstance(logger, WandbLogger):\n",
- " return logger\n",
- "\n",
- " print(\"WandbLogger not found.\")\n",
- " return None\n",
- "\n",
- "\n",
- "def log_wandb_audio_batch(\n",
- " logger: WandbLogger, id: str, samples: Tensor, sampling_rate: int, caption: str = \"\"\n",
- "):\n",
- " num_items = samples.shape[0]\n",
- " samples = rearrange(samples, \"b c t -> b t c\").detach().cpu().numpy()\n",
- " logger.log(\n",
- " {\n",
- " f\"sample_{idx}_{id}\": wandb.Audio(\n",
- " samples[idx],\n",
- " caption=caption,\n",
- " sample_rate=sampling_rate,\n",
- " )\n",
- " for idx in range(num_items)\n",
- " }\n",
- " )\n",
- "\n",
- "\n",
- "def log_wandb_audio_spectrogram(\n",
- " logger: WandbLogger, id: str, samples: Tensor, sampling_rate: int, caption: str = \"\"\n",
- "):\n",
- " num_items = samples.shape[0]\n",
- " samples = samples.detach().cpu()\n",
- " transform = torchaudio.transforms.MelSpectrogram(\n",
- " sample_rate=sampling_rate,\n",
- " n_fft=1024,\n",
- " hop_length=512,\n",
- " n_mels=80,\n",
- " center=True,\n",
- " norm=\"slaney\",\n",
- " )\n",
- "\n",
- " def get_spectrogram_image(x):\n",
- " spectrogram = transform(x[0])\n",
- " image = librosa.power_to_db(spectrogram)\n",
- " trace = [go.Heatmap(z=image, colorscale=\"viridis\")]\n",
- " layout = go.Layout(\n",
- " yaxis=dict(title=\"Mel Bin (Log Frequency)\"),\n",
- " xaxis=dict(title=\"Frame\"),\n",
- " title_text=caption,\n",
- " title_font_size=10,\n",
- " )\n",
- " fig = go.Figure(data=trace, layout=layout)\n",
- " return fig\n",
- "\n",
- " logger.log(\n",
- " {\n",
- " f\"mel_spectrogram_{idx}_{id}\": get_spectrogram_image(samples[idx])\n",
- " for idx in range(num_items)\n",
- " }\n",
- " )"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 13,
- "id": "27c038a6-38f1-4a61-a472-2591ae39af3b",
- "metadata": {},
- "outputs": [],
- "source": [
- "vsampler = VSampler()\n",
- "linear_schedule = LinearSchedule()\n",
- "samples_config = {\n",
- " \"num_items\": 3,\n",
- " \"channels\": 1,\n",
- " \"sampling_rate\": fs,\n",
- " \"sampling_steps\": [3,5,10,25,50,100],\n",
- " \"use_ema_model\": True,\n",
- " \"diffusion_sampler\": vsampler,\n",
- " \"length\": 262144,\n",
- " \"diffusion_schedule\": linear_schedule\n",
- "}\n",
- "s = SampleLogger(**samples_config)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "ffe84ea2-6e3f-42f0-a261-57649574a601",
- "metadata": {},
- "outputs": [],
- "source": []
- },
- {
- "cell_type": "code",
- "execution_count": 14,
- "id": "8f8f3cda-da27-477c-b553-bca4eaad69ea",
- "metadata": {},
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "GPU available: True (cuda), used: True\n",
- "TPU available: False, using: 0 TPU cores\n",
- "IPU available: False, using: 0 IPUs\n",
- "HPU available: False, using: 0 HPUs\n"
- ]
- }
- ],
- "source": [
- "trainer = pl.Trainer(limit_train_batches=100, max_epochs=100, accelerator='gpu', devices=[1], callbacks=[s], logger=wandb_logger)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "47b8760a-8ee3-4212-8817-a804fd02fade",
- "metadata": {},
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0,1,2,3]\n",
- "\n",
- " | Name | Type | Params\n",
- "--------------------------------------------------\n",
- "0 | model | AudioDiffusionModel | 74.3 M\n",
- "1 | model_ema | EMA | 148 M \n",
- "--------------------------------------------------\n",
- "74.3 M Trainable params\n",
- "74.3 M Non-trainable params\n",
- "148 M Total params\n",
- "594.631 Total estimated model params size (MB)\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Sanity Checking: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "/opt/conda/lib/python3.10/site-packages/pytorch_lightning/trainer/connectors/data_connector.py:224: PossibleUserWarning: The dataloader, val_dataloader 0, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` (try 48 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.\n",
- " rank_zero_warn(\n",
- "/opt/conda/lib/python3.10/site-packages/pytorch_lightning/trainer/connectors/data_connector.py:224: PossibleUserWarning: The dataloader, train_dataloader, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` (try 48 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.\n",
- " rank_zero_warn(\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5327d73bb6114877adb4e9f991058eea",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Training: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c6e6b42717824054b576e47f92878ef5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
- "source": [
- "trainer.fit(model=diffModel, train_dataloaders=data, val_dataloaders=val_data)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "1f64d981-c9dc-4afa-b783-d017f99633da",
- "metadata": {},
- "outputs": [],
- "source": []
- },
- {
- "cell_type": "code",
- "execution_count": 12,
- "id": "53bba197-83eb-40a2-b748-a4c25e628356",
- "metadata": {},
- "outputs": [],
- "source": []
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "49db25f0-8bda-4693-9872-cbf24c40b575",
- "metadata": {},
- "outputs": [],
- "source": []
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "29ed502f-2daf-4210-81ff-a90ade519086",
- "metadata": {},
- "outputs": [],
- "source": [
- "# Old code below"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 14,
- "id": "bd8a1cb4-42b5-43bc-9a12-f594ce069b33",
- "metadata": {},
- "outputs": [
- {
- "ename": "NameError",
- "evalue": "name 'device' is not defined",
- "output_type": "error",
- "traceback": [
- "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
- "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
- "Cell \u001b[0;32mIn [14], line 12\u001b[0m\n\u001b[1;32m 10\u001b[0m signal2 \u001b[38;5;241m=\u001b[39m torch\u001b[38;5;241m.\u001b[39msin(\u001b[38;5;241m2\u001b[39m \u001b[38;5;241m*\u001b[39m torch\u001b[38;5;241m.\u001b[39mpi \u001b[38;5;241m*\u001b[39m (f\u001b[38;5;241m*\u001b[39m\u001b[38;5;241m2\u001b[39m) \u001b[38;5;241m*\u001b[39m samples)\n\u001b[1;32m 11\u001b[0m stacked_signal \u001b[38;5;241m=\u001b[39m torch\u001b[38;5;241m.\u001b[39mstack((signal1, signal2))\u001b[38;5;241m.\u001b[39munsqueeze(\u001b[38;5;241m1\u001b[39m)\n\u001b[0;32m---> 12\u001b[0m stacked_signal \u001b[38;5;241m=\u001b[39m stacked_signal\u001b[38;5;241m.\u001b[39mto(\u001b[43mdevice\u001b[49m)\n\u001b[1;32m 13\u001b[0m loss \u001b[38;5;241m=\u001b[39m model(stacked_signal)\n\u001b[1;32m 14\u001b[0m loss\u001b[38;5;241m.\u001b[39mbackward() \n",
- "\u001b[0;31mNameError\u001b[0m: name 'device' is not defined"
- ]
- }
- ],
- "source": [
- "fs = 22050\n",
- "t = 2 ** 18 / 22050\n",
- "samples = torch.arange(t * fs) / fs\n",
- "\n",
- "for i in range(300, 8000):\n",
- " f = i\n",
- " # Create 2 sine waves (one at f=step, other is octave up) \n",
- " # There is aliasing at higher freq, but since it is sinusoids, that doesn't matter too much\n",
- " signal1 = torch.sin(2 * torch.pi * f * samples)\n",
- " signal2 = torch.sin(2 * torch.pi * (f*2) * samples)\n",
- " stacked_signal = torch.stack((signal1, signal2)).unsqueeze(1)\n",
- " stacked_signal = stacked_signal.to(device)\n",
- " loss = model(stacked_signal)\n",
- " loss.backward() \n",
- " if i % 10 == 0:\n",
- " print(\"Step\", i)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 8,
- "id": "71d17c51-842c-40a1-81a1-a53bf358bc8a",
- "metadata": {},
- "outputs": [],
- "source": [
- "# Sample 2 sources given start noise\n",
- "noise = torch.randn(2, 1, 2 ** 18)\n",
- "noise = noise.to(device)\n",
- "sampled = model.sample(\n",
- " noise=noise,\n",
- " num_steps=10 # Suggested range: 2-50\n",
- ") # [2, 1, 2 ** 18]"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 9,
- "id": "59d71efa-05ac-4545-84da-8c09c033dfd7",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- " \n",
- " "
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 9,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "z = sampled[1]\n",
- "Audio(z.cpu(), rate=22050)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 12,
- "id": "81eddd71-bba7-4c62-8d50-900b295bb2f8",
- "metadata": {},
- "outputs": [
- {
- "ename": "NameError",
- "evalue": "name 'z' is not defined",
- "output_type": "error",
- "traceback": [
- "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
- "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
- "Cell \u001b[0;32mIn [12], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43mz\u001b[49m\u001b[38;5;241m.\u001b[39mshape\n",
- "\u001b[0;31mNameError\u001b[0m: name 'z' is not defined"
- ]
- }
- ],
- "source": [
- "z.shape"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "8a3f582f-a956-4326-872b-416cc13b77ee",
- "metadata": {},
- "outputs": [],
- "source": []
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "Python 3 (ipykernel)",
- "language": "python",
- "name": "python3"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 5
-}
diff --git a/notebooks/egfx.ipynb b/notebooks/egfx.ipynb
deleted file mode 100644
index b7e8a06aa5f13f258da389f325dae884c24183f0..0000000000000000000000000000000000000000
--- a/notebooks/egfx.ipynb
+++ /dev/null
@@ -1,603 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "code",
- "execution_count": 28,
- "metadata": {},
- "outputs": [],
- "source": [
- "import mirdata\n",
- "from torch.utils.data import Dataset, DataLoader\n",
- "import torchaudio\n",
- "import torchaudio.transforms as T\n",
- "import torch.nn.functional as F\n",
- "from pathlib import Path\n",
- "from typing import List\n",
- "import torch\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 24,
- "metadata": {},
- "outputs": [],
- "source": [
- "effect_type = [\"Phaser\"]\n",
- "root=Path(\"./data/egfx\")\n",
- "wet_files = []\n",
- "dry_files = []\n",
- "labels = []"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 18,
- "metadata": {},
- "outputs": [],
- "source": [
- "for i, effect in enumerate(effect_type):\n",
- " for pickup in Path(root / effect).iterdir():\n",
- " wet_files += list(pickup.glob(\"*.wav\"))\n",
- " dry_files += list(root.glob(f\"Clean/{pickup.name}/**/*.wav\"))\n",
- " \n",
- " labels += [i] * len(wet_files)\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 26,
- "metadata": {},
- "outputs": [],
- "source": [
- "LENGTH = 2**18 # 12 seconds\n",
- "ORIG_SR = 48000"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 27,
- "metadata": {},
- "outputs": [],
- "source": [
- "class GuitarFXDataset(Dataset):\n",
- " def __init__(\n",
- " self,\n",
- " root: str,\n",
- " sample_rate: int,\n",
- " length: int = LENGTH,\n",
- " effect_type: List[str] = None,\n",
- " ):\n",
- " self.length = length\n",
- " self.wet_files = []\n",
- " self.dry_files = []\n",
- " self.labels = []\n",
- " self.root = Path(root)\n",
- " if effect_type is None:\n",
- " effect_type = [\n",
- " d.name for d in self.root.iterdir() if d.is_dir() and d != \"Clean\"\n",
- " ]\n",
- " for i, effect in enumerate(effect_type):\n",
- " for pickup in Path(self.root / effect).iterdir():\n",
- " self.wet_files += sorted(list(pickup.glob(\"*.wav\")))\n",
- " self.dry_files += sorted(\n",
- " list(self.root.glob(f\"Clean/{pickup.name}/**/*.wav\"))\n",
- " )\n",
- " self.labels += [i] * len(self.wet_files)\n",
- " print(\n",
- " f\"Found {len(self.wet_files)} wet files and {len(self.dry_files)} dry files\"\n",
- " )\n",
- " self.resampler = T.Resample(ORIG_SR, sample_rate)\n",
- "\n",
- " def __len__(self):\n",
- " return len(self.dry_files)\n",
- "\n",
- " def __getitem__(self, idx):\n",
- " print(idx, self.wet_files[idx], self.dry_files[idx])\n",
- " x, sr = torchaudio.load(self.wet_files[idx])\n",
- " y, sr = torchaudio.load(self.dry_files[idx])\n",
- " effect_label = self.labels[idx]\n",
- "\n",
- " resampled_x = self.resampler(x)\n",
- " resampled_y = self.resampler(y)\n",
- " # Pad or crop to length\n",
- " if resampled_x.shape[-1] < self.length:\n",
- " resampled_x = F.pad(resampled_x, (0, self.length - resampled_x.shape[1]))\n",
- " elif resampled_x.shape[-1] > self.length:\n",
- " resampled_x = resampled_x[:, : self.length]\n",
- " if resampled_y.shape[-1] < self.length:\n",
- " resampled_y = F.pad(resampled_y, (0, self.length - resampled_y.shape[1]))\n",
- " elif resampled_y.shape[-1] > self.length:\n",
- " resampled_y = resampled_y[:, : self.length]\n",
- " return (resampled_x, resampled_y, effect_label)\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 29,
- "metadata": {},
- "outputs": [],
- "source": [
- "\n",
- "SAMPLE_RATE = 22050\n",
- "TRAIN_SPLIT = 0.8"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 32,
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "Found 690 wet files and 690 dry files\n"
- ]
- }
- ],
- "source": [
- "guitfx = GuitarFXDataset(\n",
- " root=\"./data/egfx\",\n",
- " sample_rate=SAMPLE_RATE,\n",
- " effect_type=[\"Phaser\"],\n",
- ")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 33,
- "metadata": {},
- "outputs": [],
- "source": [
- "train_size = int(TRAIN_SPLIT * len(guitfx))\n",
- "val_size = len(guitfx) - train_size\n",
- "train_dataset, val_dataset = torch.utils.data.random_split(\n",
- " guitfx, [train_size, val_size]\n",
- ")\n",
- "val = DataLoader(val_dataset, batch_size=2)\n"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": []
- },
- {
- "cell_type": "code",
- "execution_count": 37,
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "[560, 150, 218, 404, 292, 509, 10, 315, 554, 6, 169, 116, 601, 309, 280, 510, 559, 197, 613, 424, 500, 460, 273, 467, 190, 534, 642, 112, 635, 283, 217, 7, 679, 526, 73, 102, 134, 263, 449, 142, 215, 154, 181, 378, 425, 278, 208, 58, 323, 210, 388, 363, 249, 57, 479, 79, 508, 429, 237, 390, 435, 62, 254, 528, 614, 311, 680, 61, 374, 668, 373, 594, 9, 677, 188, 2, 91, 633, 549, 257, 170, 183, 465, 502, 244, 664, 632, 356, 581, 145, 81, 85, 232, 250, 571, 118, 319, 308, 536, 592, 607, 566, 609, 302, 576, 354, 35, 493, 593, 437, 636, 495, 506, 153, 638, 164, 229, 456, 34, 518, 381, 322, 304, 565, 52, 499, 66, 39, 220, 38, 111, 454, 267, 98, 563, 585, 121, 391]\n"
- ]
- }
- ],
- "source": [
- "print(val_dataset.indices)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 38,
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "[tensor([[[0.0482, 0.0772, 0.0682, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0092, 0.0138, 0.0139, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0007, -0.0009, 0.0074, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0007, 0.0036, 0.0064, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0027, 0.0050, 0.0063, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0043, 0.0077, 0.0084, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0007, 0.0023, 0.0026, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0005, 0.0023, 0.0034, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0008, 0.0017, 0.0056, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0008, 0.0016, 0.0016, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0007, 0.0022, 0.0028, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0003, 0.0009, 0.0011, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0071, 0.0107, 0.0078, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0043, 0.0011, -0.0055, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0004, -0.0014, -0.0022, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0013, 0.0045, 0.0072, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0022, 0.0036, 0.0059, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0431, 0.0687, 0.0638, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0009, 0.0030, 0.0047, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0001, -0.0012, -0.0022, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0053, 0.0082, 0.0058, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0035, -0.0036, -0.0021, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0003, 0.0019, 0.0038, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0003, -0.0029, -0.0058, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0069, 0.0106, 0.0078, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0035, -0.0040, -0.0034, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0003, 0.0010, 0.0034, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0020, -0.0076, -0.0117, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0044, 0.0086, 0.0079, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0016, -0.0022, -0.0014, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0006, -0.0020, -0.0020, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0002, -0.0009, -0.0017, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0027, 0.0027, 0.0002, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0033, 0.0048, 0.0028, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0008, 0.0035, 0.0059, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0002, 0.0006, 0.0011, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0056, 0.0341, 0.0562, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0009, -0.0013, -0.0002, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0021, 0.0092, 0.0056, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0007, 0.0021, 0.0023, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0014, 0.0024, 0.0030, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.1450, -0.1390, -0.0209, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 2.6921e-04, 1.6453e-03, 2.7682e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[-3.2024e-02, -1.9613e-01, -4.0412e-01, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0059, -0.0064, -0.0022, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0039, -0.0046, -0.0021, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0002, -0.0021, -0.0037, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0004, -0.0017, -0.0031, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0086, 0.0122, 0.0111, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0114, -0.0113, -0.0039, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0004, 0.0043, 0.0085, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0010, -0.0059, -0.0108, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0069, 0.0105, 0.0097, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0069, 0.0100, 0.0067, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[1.4215e-04, 2.1199e-03, 5.7695e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[9.1938e-05, 1.1531e-03, 2.8006e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0012, 0.0038, 0.0057, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0035, 0.0058, 0.0088, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0004, 0.0013, 0.0014, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0003, 0.0022, 0.0044, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0011, 0.0023, 0.0030, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0033, -0.0038, -0.0007, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0003, 0.0023, 0.0041, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0005, 0.0038, 0.0079, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0020, -0.0012, -0.0042, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0035, 0.0056, 0.0063, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0013, 0.0048, 0.0063, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0005, 0.0026, 0.0049, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0033, -0.0054, -0.0052, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0031, 0.0057, 0.0069, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0021, 0.0064, 0.0081, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0004, 0.0015, 0.0021, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0023, -0.0059, -0.0074, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0087, 0.0125, 0.0101, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0004, -0.0011, -0.0011, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0019, 0.0071, 0.0113, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0046, 0.0039, -0.0007, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0038, 0.0021, 0.0117, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0003, 0.0024, 0.0042, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0048, 0.0240, 0.0323, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0064, 0.0104, 0.0116, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0028, -0.0033, -0.0007, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0010, 0.0047, 0.0074, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0005, 0.0013, 0.0009, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0042, 0.0073, 0.0064, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0015, 0.0029, 0.0041, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0007, 0.0026, 0.0033, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0004, 0.0016, 0.0026, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0016, -0.0054, -0.0048, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0113, 0.0209, 0.0223, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0014, 0.0034, 0.0026, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0004, -0.0024, -0.0011, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0064, 0.0108, 0.0107, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0007, -0.0040, -0.0083, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0005, 0.0018, 0.0035, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0002, 0.0008, 0.0012, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0071, 0.0064, -0.0008, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0024, 0.0039, 0.0042, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0018, 0.0064, 0.0094, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0001, 0.0008, 0.0019, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0075, 0.0099, 0.0065, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0008, 0.0010, 0.0005, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0007, 0.0032, 0.0058, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0006, 0.0023, 0.0029, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0024, -0.0027, -0.0021, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0096, 0.0151, 0.0139, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0003, -0.0012, -0.0023, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0001, -0.0010, -0.0015, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0012, 0.0027, 0.0036, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0030, 0.0039, 0.0039, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0005, 0.0015, 0.0021, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0003, -0.0010, -0.0016, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0006, 0.0012, 0.0014, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0033, -0.0041, -0.0015, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0001, 0.0003, 0.0002, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0005, -0.0021, -0.0035, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0041, 0.0051, 0.0031, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0005, 0.0005, 0.0005, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0006, 0.0025, 0.0042, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0006, 0.0015, 0.0015, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0111, 0.0142, 0.0113, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0015, 0.0030, 0.0035, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 4.1647e-04, 3.4729e-03, 9.2547e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[-6.6249e-05, -7.6026e-04, -1.4447e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0004, 0.0005, 0.0029, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0025, 0.0042, 0.0035, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0004, 0.0015, 0.0015, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0005, 0.0011, 0.0017, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0009, 0.0009, 0.0006, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0147, 0.0051, -0.0118, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0008, 0.0028, 0.0037, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0010, 0.0134, 0.0304, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0015, 0.0026, 0.0049, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0030, 0.0060, 0.0081, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0003, 0.0015, 0.0035, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0002, 0.0010, 0.0015, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0019, 0.0052, 0.0092, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0031, -0.0043, -0.0041, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0002, 0.0005, 0.0007, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0010, -0.0047, -0.0077, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0014, 0.0019, 0.0014, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0005, -0.0015, -0.0017, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0002, 0.0011, 0.0020, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0008, 0.0032, 0.0038, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0097, 0.0098, 0.0010, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0106, 0.0109, 0.0012, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0003, -0.0013, -0.0023, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0002, 0.0021, 0.0052, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0030, 0.0057, 0.0084, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0037, -0.0044, -0.0016, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0013, 0.0051, 0.0077, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0002, 0.0006, 0.0007, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0050, 0.0078, 0.0072, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0022, -0.0033, -0.0034, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0003, 0.0014, 0.0022, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0006, -0.0028, -0.0046, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0014, -0.0020, -0.0014, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0069, 0.0159, 0.0219, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0002, 0.0004, -0.0001, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0008, 0.0033, 0.0045, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0027, -0.0035, -0.0092, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0004, 0.0005, 0.0015, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0029, -0.0107, -0.0177, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0006, 0.0013, 0.0007, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0286, 0.0299, 0.0081, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0002, 0.0009, 0.0020, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-2.5037e-03, -1.1195e-03, 1.1923e-02, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[ 1.5308e-04, -3.6808e-05, -5.5343e-04, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0018, 0.0027, 0.0019, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0055, 0.0096, 0.0124, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0002, 0.0022, 0.0032, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0002, 0.0017, 0.0032, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 3.7041e-03, 5.7321e-03, 5.1036e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[ 2.1164e-03, 1.5563e-03, -7.2010e-05, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([[[0.0013, 0.0040, 0.0052, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0002, 0.0009, 0.0017, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0020, -0.0022, -0.0008, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0088, 0.0130, 0.0157, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-4.7201e-05, -2.4349e-04, -5.1608e-04, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[ 1.2934e-03, 4.1513e-03, 3.6547e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0018, 0.0069, 0.0096, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0026, 0.0024, 0.0006, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 3.0634e-04, 1.1319e-03, 1.7446e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[-8.3813e-05, -7.7285e-04, -1.7113e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0009, 0.0013, 0.0017, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0070, 0.0122, 0.0151, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0001, 0.0013, 0.0024, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0008, 0.0034, 0.0060, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0075, 0.0141, 0.0187, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0023, 0.0025, 0.0019, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0002, 0.0012, 0.0024, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0007, 0.0028, 0.0046, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0115, -0.0051, -0.0278, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0212, 0.0099, -0.0170, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0042, 0.0199, 0.0318, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0018, 0.0141, 0.0247, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0010, -0.0022, -0.0045, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0068, 0.0116, 0.0121, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0005, 0.0037, 0.0072, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0002, 0.0015, 0.0030, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0081, 0.0120, 0.0105, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0209, -0.0408, -0.0275, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0007, 0.0027, 0.0050, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0037, 0.0249, 0.0292, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0067, 0.0102, 0.0098, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0144, 0.0246, 0.0242, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[2.0850e-04, 2.0092e-03, 4.8804e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[5.1832e-05, 1.2148e-03, 4.0634e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0024, -0.0024, -0.0013, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0046, 0.0079, 0.0074, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0005, -0.0025, -0.0036, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0003, 0.0010, 0.0017, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0109, -0.0121, -0.0033, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0011, 0.0015, 0.0020, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0001, 0.0005, 0.0006, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0002, 0.0008, 0.0010, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0015, -0.0018, -0.0014, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0083, -0.0828, -0.1668, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0006, -0.0017, -0.0014, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0118, -0.0768, -0.1046, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0106, -0.0040, -0.0246, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0028, 0.0043, 0.0036, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0040, 0.0172, 0.0272, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0002, 0.0016, 0.0027, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0020, 0.0005, -0.0163, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0065, 0.0113, 0.0133, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0019, -0.0107, -0.0205, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0007, 0.0026, 0.0040, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0010, 0.0020, 0.0023, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0112, 0.0147, 0.0106, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0005, 0.0010, 0.0009, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0017, 0.0062, 0.0095, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0007, -0.0016, -0.0019, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0028, 0.0051, 0.0083, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0003, -0.0010, -0.0008, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0011, 0.0045, 0.0069, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0078, 0.0125, 0.0115, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0046, 0.0071, 0.0058, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-7.1681e-05, -8.8706e-04, -1.7330e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[ 1.1175e-03, 2.9858e-03, 4.5334e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[-0.0027, -0.0049, -0.0051, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0013, -0.0019, -0.0017, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0005, -0.0015, -0.0020, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0003, -0.0022, -0.0038, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0008, 0.0011, 0.0007, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0004, 0.0012, 0.0014, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0007, 0.0024, 0.0034, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0006, 0.0020, 0.0029, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[-1.2539e-03, -6.1979e-04, 1.0325e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[ 6.1576e-05, 2.2814e-04, 9.5116e-04, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([[[8.0004e-05, 1.0549e-03, 2.6432e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[7.4739e-05, 1.3412e-04, 1.7083e-04, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0151, 0.0170, 0.0124, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0022, -0.0067, -0.0094, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[ 0.0005, 0.0016, 0.0019, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0001, -0.0019, -0.0042, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[ 0.0006, 0.0013, 0.0020, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[-0.0153, -0.0197, -0.0135, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[7.0598e-04, 3.5944e-03, 4.8469e-03, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]],\n",
- "\n",
- " [[5.7171e-05, 3.5541e-04, 3.9973e-04, ..., 0.0000e+00,\n",
- " 0.0000e+00, 0.0000e+00]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0013, 0.0020, 0.0025, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0120, 0.0202, 0.0220, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0006, 0.0025, 0.0037, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0004, 0.0027, 0.0058, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0029, 0.0039, 0.0064, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0015, 0.0025, 0.0030, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0004, 0.0048, 0.0087, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0003, 0.0012, 0.0022, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0034, 0.0093, 0.0100, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0007, 0.0014, 0.0018, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[-0.0008, -0.0035, -0.0042, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[ 0.0003, 0.0016, 0.0028, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n",
- "[tensor([[[0.0022, 0.0047, 0.0062, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0082, 0.0121, 0.0115, ..., 0.0000, 0.0000, 0.0000]]]), tensor([[[0.0013, 0.0045, 0.0062, ..., 0.0000, 0.0000, 0.0000]],\n",
- "\n",
- " [[0.0015, 0.0091, 0.0154, ..., 0.0000, 0.0000, 0.0000]]]), tensor([0, 0])]\n"
- ]
- }
- ],
- "source": [
- "for v in val:\n",
- " print(v)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": []
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "env",
- "language": "python",
- "name": "python3"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.9.13"
- },
- "orig_nbformat": 4,
- "vscode": {
- "interpreter": {
- "hash": "94173bdbcc3a07290a92586f1f41e17e9573695669854c49e68cc83ee6746035"
- }
- }
- },
- "nbformat": 4,
- "nbformat_minor": 2
-}
diff --git a/notebooks/guitar_generation_test.ipynb b/notebooks/guitar_generation_test.ipynb
deleted file mode 100644
index 8d13c4e35259261b2444d2c0e4470e33e7ea54ee..0000000000000000000000000000000000000000
--- a/notebooks/guitar_generation_test.ipynb
+++ /dev/null
@@ -1,13832 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "code",
- "execution_count": 1,
- "id": "31564f4e-1c78-4adc-bab5-d7536ca38356",
- "metadata": {},
- "outputs": [],
- "source": [
- "from audio_diffusion_pytorch import AudioDiffusionModel\n",
- "import torch\n",
- "from torch import Tensor, nn, optim\n",
- "from tqdm import tqdm\n",
- "from IPython.display import Audio\n",
- "from pathlib import Path\n",
- "import torchaudio\n",
- "import torchaudio.transforms as T\n",
- "import pytorch_lightning as pl\n",
- "from torch.utils.data import random_split, DataLoader, Dataset\n",
- "import torch.nn.functional as F\n",
- "import wandb\n",
- "from pytorch_lightning.loggers import WandbLogger\n",
- "from einops import rearrange"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 2,
- "id": "c25ed44a-3271-436a-aa5e-1de9290461c5",
- "metadata": {},
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "Failed to detect the name of this notebook, you can set it manually with the WANDB_NOTEBOOK_NAME environment variable to enable code saving.\n",
- "\u001b[34m\u001b[1mwandb\u001b[0m: Currently logged in as: \u001b[33mmattricesound\u001b[0m. Use \u001b[1m`wandb login --relogin`\u001b[0m to force relogin\n"
- ]
- },
- {
- "data": {
- "text/html": [
- "Tracking run with wandb version 0.13.7"
- ],
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "text/html": [
- "Run data is saved locally in ./wandb/run-20230110_005416-34njk5ue
"
- ],
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "text/html": [
- "Syncing run bumbling-night-20 to Weights & Biases (docs)
"
- ],
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
- "source": [
- "wandb_logger = WandbLogger(project=\"RemFX\", save_dir=\"./\")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 3,
- "id": "5d6cb44c-94bd-4f61-92b4-76f359670679",
- "metadata": {},
- "outputs": [],
- "source": [
- "SAMPLE_RATE = 22050\n",
- "LENGTH = 2**17#round(5 * SAMPLE_RATE) 6 seconds"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 4,
- "id": "5578eec7-7a22-410a-bb8b-075e62b579ba",
- "metadata": {},
- "outputs": [],
- "source": [
- "class GuitarDataset(Dataset):\n",
- " def __init__(self, root, length=LENGTH):\n",
- " self.files = list(Path().glob(f\"{root}/**/*.wav\"))\n",
- " self.resampler = T.Resample(48000, SAMPLE_RATE)\n",
- " \n",
- " def __len__(self):\n",
- " return len(self.files)\n",
- " \n",
- " def __getitem__(self, idx):\n",
- " x, sr = torchaudio.load(self.files[idx])\n",
- "# x = x.view() # Duplicate channel\n",
- " resampled_x = self.resampler(x)\n",
- " if resampled_x.shape[1] < LENGTH:\n",
- " resampled_x = F.pad(resampled_x, (0, LENGTH - resampled_x.shape[1]))\n",
- " elif resampled_x.shape[1] > LENGTH:\n",
- " resampled_x = resampled_x[:, :LENGTH]\n",
- " return resampled_x"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 5,
- "id": "401b1525-b375-484c-ad28-4d3469b29520",
- "metadata": {},
- "outputs": [],
- "source": [
- "g = GuitarDataset(Path(\"Clean\"))\n",
- "\n",
- "train_split = 0.8\n",
- "train_size = int(train_split * len(g))\n",
- "val_size = len(g) - train_size\n",
- "\n",
- "train_dataset, val_dataset = torch.utils.data.random_split(g, [train_size, val_size])\n",
- "train = DataLoader(train_dataset, batch_size=2)\n",
- "val = DataLoader(val_dataset, batch_size=2)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 6,
- "id": "077b2bc8-c8b0-4f8e-86d7-aa3b944c107b",
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "torch.Size([2, 1, 131072])\n",
- "690 552 138\n"
- ]
- }
- ],
- "source": [
- "dataiter = iter(train)\n",
- "x = next(dataiter)\n",
- "print(x.shape)\n",
- "print(len(g), train_size, val_size)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "0f9c71be-05d7-472f-84fc-7c95afa892c0",
- "metadata": {},
- "outputs": [],
- "source": [
- "\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 7,
- "id": "ff5f6e99-0d17-47b8-bfea-06271a7e1c40",
- "metadata": {},
- "outputs": [],
- "source": [
- "# model = AudioDiffusionModel(in_channels=1)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 8,
- "id": "44423c82-91e7-4295-9cb8-611562967d75",
- "metadata": {},
- "outputs": [],
- "source": [
- "class WrapperModel(pl.LightningModule):\n",
- " def __init__(self):\n",
- " super().__init__()\n",
- " self.model = AudioDiffusionModel(in_channels=1)\n",
- " \n",
- " def forward(self, x: torch.Tensor):\n",
- " return self.model(x)\n",
- "\n",
- " def sample(self, *args, **kwargs) -> Tensor:\n",
- " return self.model.sample(*args, **kwargs)\n",
- " \n",
- " def training_step(self, batch, batch_idx):\n",
- " loss = self.common_step(batch, batch_idx, mode=\"train\")\n",
- " return loss\n",
- "\n",
- " def validation_step(self, batch, batch_idx):\n",
- " loss = self.common_step(batch, batch_idx, mode=\"val\")\n",
- "\n",
- " def common_step(self, batch, batch_idx, mode: str = \"train\"):\n",
- " loss = self(batch)\n",
- " self.log(f\"{mode}_loss\", loss, on_step=True, on_epoch=True)\n",
- " return loss\n",
- " \n",
- " def configure_optimizers(self):\n",
- " return torch.optim.Adam(self.parameters(), lr=1e-4, betas=(0.95, 0.999), eps=1e-6, weight_decay=1e-3)\n",
- "\n",
- " def on_validation_epoch_start(self):\n",
- " self.log_next = True\n",
- " \n",
- " def on_validation_batch_start(\n",
- " self, batch, batch_idx, dataloader_idx\n",
- " ):\n",
- " if self.log_next:\n",
- " self.log_sample(batch)\n",
- " self.log_next = False\n",
- "\n",
- " @torch.no_grad()\n",
- " def log_sample(self, batch, num_steps=10):\n",
- " # is_train = pl_module.training\n",
- " # if is_train:\n",
- " # pl_module.eval()\n",
- " \n",
- " # Get start diffusion noise\n",
- " noise = torch.randn(batch.shape, device=self.device)\n",
- " sampled = self.model.sample(\n",
- " noise=noise,\n",
- " num_steps=num_steps # Suggested range: 2-50\n",
- " ) \n",
- " self.log_wandb_audio_batch(\n",
- " id=\"sample\",\n",
- " samples=sampled,\n",
- " sampling_rate=SAMPLE_RATE,\n",
- " caption=f\"Sampled in {num_steps} steps\",\n",
- " )\n",
- "\n",
- " # if is_train:\n",
- " # pl_module.train()\n",
- " \n",
- " @torch.no_grad()\n",
- " def log_wandb_audio_batch(self, id: str, samples: Tensor, sampling_rate: int, caption: str = \"\"\n",
- " ):\n",
- " num_items = samples.shape[0]\n",
- " samples = rearrange(samples, \"b c t -> b t c\")\n",
- " for idx in range(num_items):\n",
- " wandb.log(\n",
- " {\n",
- " f\"sample_{idx}_{id}\": wandb.Audio(\n",
- " samples[idx].cpu().numpy(),\n",
- " caption=caption,\n",
- " sample_rate=sampling_rate,\n",
- " )\n",
- "\n",
- " }\n",
- " )\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 9,
- "id": "db4b3260-406e-4bfc-bdd6-08d8f736d080",
- "metadata": {},
- "outputs": [],
- "source": [
- "model = WrapperModel()"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 10,
- "id": "55da1120-7392-4e0a-82a5-06d3697d46e3",
- "metadata": {},
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "GPU available: True (cuda), used: True\n",
- "TPU available: False, using: 0 TPU cores\n",
- "IPU available: False, using: 0 IPUs\n",
- "HPU available: False, using: 0 HPUs\n"
- ]
- }
- ],
- "source": [
- "trainer = pl.Trainer(limit_train_batches=100, max_epochs=1000, accelerator='gpu', devices=[1], logger=wandb_logger)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 11,
- "id": "fecc3960-539a-4f72-b86a-2a482c393105",
- "metadata": {},
- "outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0,1,2,3]\n",
- "\n",
- " | Name | Type | Params\n",
- "----------------------------------------------\n",
- "0 | model | AudioDiffusionModel | 106 M \n",
- "----------------------------------------------\n",
- "106 M Trainable params\n",
- "0 Non-trainable params\n",
- "106 M Total params\n",
- "424.786 Total estimated model params size (MB)\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Sanity Checking: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "/home/jovyan/.local/lib/python3.10/site-packages/pytorch_lightning/trainer/connectors/data_connector.py:224: PossibleUserWarning: The dataloader, val_dataloader 0, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` (try 48 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.\n",
- " rank_zero_warn(\n",
- "/home/jovyan/.local/lib/python3.10/site-packages/pytorch_lightning/trainer/connectors/data_connector.py:224: PossibleUserWarning: The dataloader, train_dataloader, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` (try 48 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.\n",
- " rank_zero_warn(\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9c392e9b3b81409baf84f7e4a7a5be3c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Training: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "425751a6870a472da9b96f201d274225",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4f48a2c746dd4550aba1878f245ea6f5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ea81f2ada5d1415aa0edf9389e81fc77",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5c6bbd5834cf451882992b2716ac2185",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "95758fd3d9cd468ea9a6164d7406c380",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "517ca419688e4f86b6b12a6243b36ced",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2ebd64581ebc471d85a00a5707b2a521",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "408df14430b6435f8bbb4973767c078f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9d7d424408664f92bee2f8c9823d7785",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f098893314ee44c98d9e0d5f795cc8b8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "53ac6cd59dbf48da8649bb5ae0c51dc0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4472341b146c4fc69652098aa38fa1f2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a9ef7bb0cfcd4e12966392cb49298a6a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6965609f6f7a4184b73491780df2ad71",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8830a21f6b6047ba9e4fcff6b9befd49",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5defd638a4af490cbc9989fc5a2af3b1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "96bac7513eff49a881916704e67776a6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a7e2dccf8fbd42b4b0f260c2bfe28ad1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "216b130cf8aa4323ad92209aa857cded",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "937d7818a18e4f57b4fc152a4cee99fb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f767e9c241984091802fde9514fa24de",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "adbc18bfc75c42b39ee3a5d08ea07c80",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b2b8bb0b385340e38bd2e11c3472ddc1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6edd9bb0a1a64f52b465f2d1b0a185df",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e6d232dec006451692465c24c9853c14",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cabe8d3dac714cd0a2b8033e78f7dbd6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2f0be21037de42d8b84d022ed2e12bbf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "33491282229f43769a4ce117a0562f50",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "178cea186b8f4ee68076256f6675dd5e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a134a56bd81e4ff28761ac66942c2d83",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9a3625dcc3c84cbd87ae2386d61aa57e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9a1018c45cbd4fd5ba506a73703d95c2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ad8a44d047e84a19a7dd5e3a0e670b8f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7040b90d80a54b59b68ab9a6dfcde2d3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "df45f45d9c0c40e985ffc8a514c6bb2e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e73c4733b6dc4cd2a1a1caa46b55ce69",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5fb6b2174d8e4352918cd62bb3c55672",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "19c54689dd684109af5765228c1d4a0d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a21f8532f5bd4ebda274497b76a5ef8a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dede8168c46a4e3e9111d06b06259c52",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1c12e7baa8a84e90a4c0b623e0f13a01",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "853ef79615134fca886645577d656a53",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fe9e9f40383c4406b241a12b16e2f2be",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9338355e6b3d48af9c6307d918303fe0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d79fbc2a068f48bd81f5f04fb9a689c9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e49e783d543747a7bbb676741ccbde28",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4b01fc09d356403abddf35e0848b08f6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cb5c77f617ca44298fd319a8dc68e7a1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5c84adeff51943069921cf03680b19b4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e48a822d5ce44ea5b2de6c5a07a837a4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0d75fbb7177c4993bc053810e05259c1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "43c15166238e470f9bbde825a0be523c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "313c7d5c0b914265ab29b6ad175476b0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "09b8e5d102df42b2a913aa171bda1bad",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2defd66be872498e9980b644c494d3e5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "90e1399f888b4cc9931ad6ecb1f942eb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "831e8aa1db2a4a7484133dcf297799fa",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "80bc5406cf6a48b88fada4fdc69f36c6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "43395533b3174b4ea5c9c38c73fd5302",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e902a7e52ae941a48b8dbb1314a01a5d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a20b81332cfb4b948c4eb03a62761151",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5b3429605c3b474d8d90860c064bc4b6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d2dfb3f713264fea95a4f4a6d00bfa79",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e32ab8051c084a448a1f37a427f43a27",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "44ab57312baf4c0da6fec588313243eb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "81939e890fd34e2d8965b7e4f666fd09",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "484f9c2af9dc48cfafbe6a5029b51cc1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e30b39419b714ac0a2e8517ed6c130cc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e191811790f9464787fb814473f90bb2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b5849f821eb04b8bb25c08aaaeaff05e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e52cff12488f4670ae2817eb2f2a9e64",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a052477f3fb6479cbc67158ebb74b1ca",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0a55019573204cdba993faa21a175423",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c60dd38a04394d51beb6ee1c73945a84",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "37fd3e18c16246249f53af4857deb24a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "caae92cc72f045f992f771b9e0a3e0a7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cf85acb2d7314dc086c61ac7f2968ad8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b79661f9abea4d24906d5fd57ed979d4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6786b99b6c214f52bff71a64373886d6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "21e604121a0e46bf9fbb2972d3758118",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "276c627b4ab340b6964f7de2e58aa7a7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "09022ec34c47412c9be265fe93458c70",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1c4cf7ab3e0c4f3f837013f284a759f4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d50e89574bed48b486a40e877c93a840",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "630ba6478c0d4b36a54379e74433de18",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1eeef8482f3347adaec45cb64ef5d3f9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "de2451da4ba944aebd7db6927826d38b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e189dd37099640f29e8bb792b0bf3952",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2b559800506e41419c220f0921a13a9e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ac4383935e3f4e48abdf6828aaf86c0a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "be86b998bc8743169ae08ff8850c3414",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4e0906fa743641e080fa82f4b7bedeab",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8ed0d83bdc9f4f14893909d0a10f6817",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "063274a3ff4f4c5bb71511add28a2939",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ba3b9b9a008a4e6296f29872d7a58f28",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b0d1e698d7ed40178730c51a608151a8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "436ba862f9ed465dabf00716e440a5a3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4ccf579cdf35462b8267e3712c4c4ea6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "76d3aa5466494f0d901221737ac9cff8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c6fd4092eeb6431889aa7b6d511dccea",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "81744963a40a4954add506b42f5a688c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d14d52f4bc5f41ca8db9c67ea307934b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f23bd521edd04067bda3e38c2554ac6d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f87f58cfbd164f388134b507fb131191",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "40524803805a43ac999d0f76e1a43fb7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cc75e6bdb2c14288a7cb44777ba0701f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9b80207f887b46cf8abb9a9594553409",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "41cc775134054677a1d4d2ed9dd0d302",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fac8eedff7084f25a864695ab651d6b1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e5e2491541834256923096600723ee0c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7a4bfab53929423dad66462239b4f2af",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b44ee4807c084ebbaccd5e3b953846e4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c8691f37af7f4b2d8353b1f6eb837463",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5ed6a1fb524745648728fae4b5302031",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ae12ed0ac4754b368c9eb8739c673095",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3b12c458a4984048b2d19b89873462a5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f3de8fc3ce54430086c8da7889b06b34",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9f1160a5639a4382b313f308edcbcf1b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "43da3d5b11f14ad3874c192fd09ffc0a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2d4af2a8c5fc4f27accdc0e3f612a04f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5153edca10f24ba29887fab8d573b3d0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "efa571e49fc2473bb2191daaf56b94ec",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "280bd200b0c4499f8b56c186abeaef07",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8e121fd130bb44ed90eff6f4e78802d0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "97b01fb3ca7349268cb96baad9bc78e9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "be94f7ea6be74b0dbc06163dcadf9700",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "96b98b74ee32495480c5f3dba5427e78",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4ea37bed525d43ef8fc34e6e099d547d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "32c0ea49a1d84347aed5baa698c04d3b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e09bf1b0238940edb23ac525805e6c94",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8f968e735e1847dbae64319b6b6f8d9e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dd374587ce57463e9751f76b9bb8befe",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b7ab17cd09a941f6bde34a113912e911",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "739bb17cbac44f159f160496bd346041",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e491c89f89c14fe894b597a5e83467fd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "627fbf016991400facc7f04753c0f8d5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "22e96fc75eec463da52e5639dade7e7e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "756c6962b3044c5db6a77fc6eae4cc91",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8db3ebc7aa024c6bb9de489aba276960",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f227f4e753454fdf82e06846af35256c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "715da00f5b5d44b3af18e1282ddc58c7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "88b313c86814419d9f097bb16141903d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7d9eaead6fa84cf2981d8db2b91c1883",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6dd6df6c1c2c4a7eb5b50fd721471da6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8f79275c55b24997851a9cdad54a7f56",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2df9ac161415483e831590b9ceb9fbe5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3e9069314bc741fea892153744446d01",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5e8f92b77d404074a8359ecc18985bf9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2ff615641b2540cbb88484e1f28f924c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8694d58ec8e24accb12c52e20046c4b4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2b7326af8a5c4bbdb81026a19c503145",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e79dac9cbb5b4e4bab263e21ee66f983",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "88d739fe048d421ba3c7a67829d58c2d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "402bd6f521fe4e029fdf9a6aab5cfc17",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2ebe9f4fbbb34b31a6952c0f1c72f5c7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "aa7ede65fc264946a2157ebae7a0d836",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fe064c605a5741979ac1ab11b25397c3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "68591ed10d2f44da966e4bbd5f5c7cb8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f5f285e7595c484fabdde8fba7ac89a5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "030a5d57302d4a95bc40eed5c7256b47",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "133acec40b2c49bab354d6f43fb26f1e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "611ca1110a49457b9816ef27b96dff65",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "958f3594cf70498fb6cfbe33be0d47ac",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e9d1b77629674ebbb8fa330a825f4b18",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "54221a27338f46e6b22400ef894bf768",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8ea37f2c764b42c0b07ebaf3bfd2e216",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3f7880f13db54b25846a2f2a797590b5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a643662043b64322803f1290d629eefc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "21239bdc954244c1b9bf706187336898",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e8db100e7cc94420bd96b5839d601b78",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4da085d7a8bd4bb5a5d24c2e9c1f735f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "45c13a1cc94141a78b59c15bdaf08b22",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2ce82d2c17df4987874fd8df4f107598",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5da1dadb09bf4e0b8df5d4e01235680e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "af84bcbab17647d4a218b05c648b0a90",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "95734ee6e6ea495c938c1c4e50d52f58",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4222b3c5925442c5ba6187da141ff5a5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "618bafa36dff48cbbd6fe6d9950e88bb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2aad0864caa147188848c199419e7aaa",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a27da7e3b4314f738faa87cd61876d23",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7e367045d79a4a548c503dc311789736",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "df91e190fd49459997363865e7cfc654",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b87e7fb8839c4b59ba1b7a29711754a1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "431dc80dad92457bb37b0f88ed555f6e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "825c3ae25ab3420c9ec07a6eb631669c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fd36297ae6024a5484d65bbb4726ec68",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f26d6dbfff8341618745110975a5a449",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9951715299d54b898204efc3e7cff377",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "803cd5ad60214c83bf943f4049d300c5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5e00e57cb6ed4d178b08a3e49c2a69db",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "181ef334283d45b59c61b5323d59d45e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4af9eb6932b1436aa4c7d287e4397088",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b6b02b34abc94573aeff2db68f9533d2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9530c729fba94790a45e31eee1276b2e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "227a42eaeb7541e9b573d7ad9cca4e3b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "13595e99bd3c49f9b846b3069a5c0ae5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0cfa93aab8fc4336b9f04847b88964fb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "aa0a4406367e4283aa4c734fb5d3a922",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ddec86762bcc45b58f192cd87fc4953a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7ed511a800a9415b8ba7659176a51b37",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "af44ff27d9b542b6b79894c59f6212fd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2142aa37a5394fa480d759f42a2066c4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3ace6676845d470f94407deb8d161935",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bf0d8581a12a4cbe9b089b052dbfd71f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "78914c0edfbd40948101b5cd0b0782a9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a5a118abcdf7405a80f04248f760f4b9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "85bd5ac7d17941e6a8c0d232d06d23a7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "25bc69b5096541f4bb7d0b288aeb45c4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a1578a55a207425b8d12137ab9f203ae",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "49a46ade55c64d6e8e17122bbb215a50",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "11e096b3b3b04a9cb92b5113125a232a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "824712f080974358978cb78f5f2c1059",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "afa159b7b3ae45c3bc304c0eb09644db",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ccbf35ad4a054f6991f6abe7cf74c57b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "54153282c14040c49ce41fe1290d71fd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "90a8a1c19be5454ea6b05021483bfec4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3091ef18470f4680bbd035908dc36aef",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "632c7483ff9e474ea3b3f06934ce597d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7f83ab508b114394b285143f8dcf90c9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "eba9dd1143ab4f139df1c11525d40802",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "34aaa9fe4f974ad388de97bb21fcec8e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d0b132590d564d39b7f38f060279938a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "722f9f4376fe40e5b7cc69d35d74d188",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e9a091543b1749659474df871132d84e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fec6baf98e504015b238d639bd5fa59d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5a9cddb5ac894efa89d88966c7797a05",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0a5c9976e4414244b829df062a2a0d4a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "16f937d5dc7e42949f6026b3c44d5439",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "156b1cbcc9b94070af1325e81b67b2b1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1f0011ab93f64d3b8f63f5e7fd2e3740",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2f2ad3c3af0e4cc6b64103d255392870",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fca38af010a44b7db6c0a8f675faddec",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "20957641b492491483d2809ef642ebe7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b08937231bca4cc2b3c7b5ed0cd018b7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a368670948054c36aec25aa08975901b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6dde0d526c204e419aae813da93a3fd6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e0c2db4f5c314c818a8bcf6a6cf8a267",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "34a3cb034a9f46ddb1290ce870e4f959",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f8adce5f4f7642fd96ea3ab14ae945f8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "60459987894e4700a620ab9ac8fa4fc2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bdf408be51da4540a1ff218aef5f4ebd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "32a81840710e40fc98c60707415f2e7d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8a8d39de8c37408c847e3e10ac3441b5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f2564f9508fe4ef59a04366a93f8d232",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e654f2f8bcbb40fe947d17f3befde0b2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0ca1d4f4ee5947ecaef8618438ec24e1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0c913324b9b447abb26775901b6e52d7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a1103b7f02be402fabeef5f318a01632",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2dcd0a7037e444a5855dd746a6833f55",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3cb4586e1ace4fcd9292d3496546f9be",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ea4828b42de64cc39fe6ae26b2aa9c45",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d395f64e29d54a728067be7b39b24d8d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "caf658d8d3374c4bafe3d93b7b55a98c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "24e774edd1084f4d83039a5050bef24d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "36bdc05b1d5b4b29848d48a95c87862f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "869b1812db8d438ba6aeaa4eda07da09",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5b87c4d28acb4f35a90b4e7ba46f460b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ee09ce4561ce401eba0cacad761ca3cd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4404a46e7a96478da57034070aaa8dd9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "44a37364d0dc4aa08ba955a8441233b1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a28cfa6ed519490bae7fb26d8dda1336",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a81056138ef84585ae74747d56534ee1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3809ce14050c4ba3addff42ae0843d8f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cbc4c02cd2604197804bf72c6a8cc423",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6b0f358719ba42bdb70a69f5e43eed91",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e55b169a6a4448beaac664ff94263fa1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fb26524e365d47b6addb349a0e6a90e6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6b8a773132d8478fa1db8f178f186d7e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "488cb8b1c695485aa0fac1b5496fccb4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "380685bdb8a845758aca8ef075546804",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "20a65c974fb34ddfb184a6ba93a7b540",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "de0a3370f339449f90ed003fb161cedb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4ebf77c3493b41b1a6b7bf75ab838b7d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5036cefc50d243e287f89974edba1bc0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "467d1c860ddc445ea8b0557211640b12",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bef4746e656d4c3ba840118f0b7a802a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7d43ea7b1e4f46e5a00fd6b30233a74b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9d13dba5e42e443096cca3e765aaffcb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "335872fc77f740a6b15933703e770a80",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4b89917865e24c3a94a1a8c69936d6c1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7a53874aaed64540b00bfe3232eb3b07",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ff97ad8b21044563b0daaf1efb2fb337",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "74aa376593f749d9864ca76ca6f8918c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "967877ecfbe644a997303ca565677a31",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6ab5baf83b564882831eed17aa15aa6a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dfd7c82075434e139932ad2f1874dca1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "af7fcca3dcde4baa83a60da38d532139",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a480afe926d44cd28a6698c4ad918ea1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f5411f91bbee4d31a07e69bf7b5fa0fa",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "030987f54caa4a488ba659d23b38add8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "04f6bd370e524a4f8e3b39be04746c17",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6bcd3586cc4b4bb2b35fdd79032a7388",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e5e1b2b83357472f80b53acdeb3b4b79",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d3984219bd9344fb989c8937f939acaf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5d52a2bb29ab4b6fb929476f23714397",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a7c46329b2a34b919ce1a11e7722540f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c5edd7aa813243f0af84bf7e91e58486",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d51f0a3e16fd4648a960ee7974037850",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d51905683a9646669cb2dcbd90e48a56",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d533e99343ba47469cd59664e1b155d5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2a9930c697c54e448f7832b4e2a800b6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "302478899fed4b8ab6351f73bdd44664",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "68fca5b386be4d0fa107a0c420942c02",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e1a8fb47917b4bf0af67e7a0c54cb3f9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a1576b71f1ed4320b9affefc2ff87abf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "42e1187ca72b4a518808dd608815fa8f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "872f410864f446aea77213f3d62970b1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "01069e8b3c1d4c33a300e320194a8de0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "116a4654f7fe48c5addc257c8f14b7d3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "18f1dffee18f4c3198abb52b62bb1210",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "def4c5e52a16450fb1e28b5f5400071c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "81719ac12883410ea49af3885e13ae81",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f7ffc2f57d8640f1893cb97c50db7a9f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "befcc8c096e14edaa969799e47493fbc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7b70295922534493b90037243ed2b17a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c7cd7cd261de427bb90f6df2df477f13",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3b6ff265183c4b6aa3664051a839aeca",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "63b22d13d0d6407cbcb57f941798e9e6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "39972df7000149e684e1b89510a12d89",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7d10dca3c087443f8582bc836321b33c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "355a6a7296604a889d6f33daed5f2046",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3b4e17c95a7548f38cb57e334e5ee5ff",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6c953d0a15d84763a804f9c4657643a0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4c3ff0c161bb4236bb7efd3bc91307f0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f075a32e1eee4d49a186cb1027c0b6cf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f48ef23e273640aaa379b189143c0987",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "27763c16b6cf4344bce0bd22608ce57d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "859ce4c4ec3945ff8566c0922cb5215d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "175769836e6943858ea1de754139f4d3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e1abc1afecd14235b5cc7b6950db4258",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "41be97e15115472d92650c4b116f7f91",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "192be7d724554a94b6c9cac4831a78bb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f0d5402944174662b64cc4235bb1c71e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bc51e7fdefdc407481684866f403f588",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a53e5724f03b4aa6a0c9ddbfa75970c9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7a0d03ff3a294930975cca1dd044b387",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2d8578c627ee43019ae84e1a2dd77d11",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f10cdbbb1ee14e20a7b18a838cbc5714",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e434144169b54de6b4d834bdae342ca4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "032db1417d044f449ff9fd2281159279",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7915edcd59b14ead8d904b760a5f8766",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9e3083ae0b294ca1b9b07d053ab44ed9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "44f3a44169f74c82ba2bd20ac4ef4edc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "25454252f6ef4ab898212c5136ac2817",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "59cbdcf2b1514f399900af65c8ed84b6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e3cb01c80a0e41a78b6dd5ff8320117e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dbfd3ad039ce4d878cd73607b2816829",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "358492ccdf404d0ea8c0f4d2efa642e7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a386eb3d29674f36b6f8001a61a52b20",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "700e395180ad4fcfb1a0097cb873dd8d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f1db947cec96462b8a7bf6b156447a62",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "06c98dd07aef43dfbe7ed05d54e92946",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a9de53f238974abe9e3f3251a63e09e0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "561b0f0817c14138baa95e88853ad9dd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5a851e0123504e4d953eedefb6eea21e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "627e36e006be43b48f971efc36d9f7a2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6f70fc3f10f54184a5269182b9bc36f0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "52a9a1cac07f40d6a50d6b8e88cc9536",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "90ecb983ee8547a4b0c1a3ed567aa945",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "48a18219978649d0ba01768a93f44e53",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "821dc800b5e747af9236768ba2611bd0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0525b95655b44506928b2645c4c54c79",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "18e528889ecf466e8c99ba5e30f211aa",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ba267c91c0a7441f9bc537acf09fc208",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d767c05f4aaf47159a5f9fd52f6bad3a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e6ffc367eb2e405691bec6fb38224ac0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a067fc28dff94fb3bab9b2f92938b309",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c12b181802ad456f91fea0351b4a9fd2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "88e5dea9e49d43d8bd9541b1138086a3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f099e0a8e4de46af9f967bceb700d7bf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2841a3c8c5b341d993f6fe592599fda3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ec2205982c744270a75fe3b072538bf2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c282f338fcfd4419ab57b400cc36976d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "91ed634e809d4c23b247a70aa488c6cc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ee342081776f4393ac48c19cc8837771",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "55420b9bb57d40dca2690bfc599b5d5e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f2e5e4d2372148fe9773ba17d01050c4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7a880685f9ee4010b3200fd4625545ca",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c73c0418cb64401ca2f2e1a1ef7c5c5d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "79b5d76b0aac4b3a80a7b327948c3381",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9bd4be00ee734d36850f14fba3db2b00",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e51c91656c63401f8e08f20c6afc5899",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0da8e900b54847488dfd9d33a4ce2010",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ede8c903f822450aa9d35c4307a0d161",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6249b8d3cca443698d3d70eab06d9dce",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e8a0dca4e9484a46b58515f662db811c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5a0f5aa568b240ca9f35d18d48c7093b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f8df7bca74f943cb9964926eeed2ff4a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5f8b5be1703f43f6b40e2f5a5efd78e9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8367b48ab4a9485f804b80d06f6ddf4f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ce20f4f68f8f4d2ea1f07c2621a3f973",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "70be3f071b77489fa06fdf0088529b8a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "11199ea7fd4240af8eaf749be8ef0d85",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ba259c2115524a138b73f7472fb39af6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5b5fc0b70a104d24a78a0cb348024a22",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cc62a3c4e4754ac58c1aa3034c0e58bb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d54a1eb474f647e1bfd38b359f9177dd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "65b87b32b1e548feac8a5112533ebe7d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fd1a4b333fa0494682b82b6ef364091d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6885efb4c7b44716b6316bb809e51de9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "55fa68c6889841d997b95eccb0a27b57",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "24e9db1424d5421589278e3e61f481aa",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "34568b57c5844c26a7177cf155676c7e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "22b516ec1e5b4d85a7acd25c5b4c0511",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1985f328096a4491b7fdc343ca6f2fa9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c54cb10fc6f240ffaf5b0426683c12b9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "500d6951738a4cc9bc00db3f3d09a36a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "77addec375fa4f7eb07e45ef27840daf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1d9e23f4a0bc43deaf0048eab9d66593",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5529b92c1451461cb48281885da2f610",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "455d81459dcb4eb98781afbdd78b7cac",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "72cd8b0b530a4e43905ecade4179a5c0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2fd13915b30e47e7afe30ca6ae7abfd5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "de23c9d3f5494354bc7d85f815e148c2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c0f6cc8528914fd09833646ab55b329e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4b5752a98004446b9b41d387793d1ee2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "eba5a9f6f7cc4f36ab1b4050bbea0772",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "30a2feb9c1974963a178bcec82d4c132",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5478d433f8ee408f86aea47eb367e590",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1f35fb31075d4bae8990e79406a408e2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8cd438bcd60142b295c06455b550bc04",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9c9287d5e89c42b198a130f3fc7efb3d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6246fbd56fb046f188537adb29026d56",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "364e82a586464a1ea65f117acde743c8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9530b40a37f747cc94853b8ebdddacb7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "edb07e5301294296860c73db0f78b4f0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b7348b285c0f47acaa0ff618d719361d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "61019318bd284d3ebf895c506ae410ec",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ba7aaaee9bd843c8a3664e62c909bc64",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fa00b1d9ffb54221b9e8cda5f932f5c7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "837fdc74e7924f9fa6d72dcbe7a39c87",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "26781c691df845f69af608d9c7b6763b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "34c12ad438484e4aba95159435a1105b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "083eed92343a4601adf76bcb5e465aae",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f1e5127b7c964453a3b83f4cd2ab8235",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4e3e7a9b921f468eaf4a155f0402aefb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "76aee32316f74767a0a450c9ae02a72e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "302fc1c57fda44d7824d73bf018b8287",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cb4685d731e54de2a0ab3a6c607c0b31",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "de3c8ac291e7426fbc60d29899412c11",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c2166df2c3c949f1af170f3e96cfe9fa",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "24fa63686ebc4415af29d6ba98daf3d0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1c7e1c2d956a456aa992d67516b861b4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f9f5a16383f44b8b80ee78a193c5fd8c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "74e5c4ef12204058b0a73b5263c793d2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1304ed9f2f6a46dbba6f407147433a88",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d656e8182aec403f85c372e86995607c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bc71796cb8544d9faad397abfc905e39",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f362280c090e4adf81f0a7d7190d9e8d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "aff9c0cf262346e7900416bba190a8c8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "be0ae81967644011a53313643b1dea68",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "823625f7ce5f48d183b00c7d7dbf6bcc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7c33dddea47c454f8a42e82946543832",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "056c9bb3f6c14ae39933b98d64081467",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0bfbd5c5cd7645ceb63bc0b2626b7215",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8ee79ef20ab24cd69d6db1059ec8ac16",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "68c4f9026b0244d1bbe73110b81205e0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2c23bb1950db4aca93bebb2fb6df92af",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b10a5a06585b4ca38f93860fa4131941",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cfc8fa1e7d6f4d6095ccb5d9eec2363a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "189c1a17c2134dae96909c6a67975019",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2cd73c74735b4cbfbd7a45096af60779",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "797ed2dc531a4297b1a33334a85a10d4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7a40392af2ad4cbcb831033185a9dc8b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "834a3443188b4dd286b40773e60940f1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e2041e6ab40d4e2a8c0d4f291e255276",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "679d2a2bfbdd4969853ee2bc3c74dbb1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3146fbdf89c04b0daf09e2af5a866252",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "10e1dd9a6f5a480099a0adc2b94e7b4f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1f05414c2f4843f1a9021963e91ea5d9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7ca836d414324dbfa77f87195ae49189",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "91233406aef7472eabef44d27ff93f92",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "db2762b76f464337b33d87a6acbcc233",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "296c58151e9140f19649c61096cc24d5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e9817d17929a41718755b082bab76a5c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "42eca9b2a35946a884338bdba57f3c96",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bf07d3f44f224910a77a7a69958a3f93",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1f741f9abd28403f8543204e9bbc100f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1aa9e73e8e7044588da19ba1d28689ef",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "41675cf765c44a2ca4490ae62a0732d2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7481e309b6254945b78bb66ee7b8f2aa",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4ee0d3d09a4a4cc6845742567222e5fe",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "23ad5c916d504188b6dd900c6a254cc9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "78dde14630b1421cb01abb7dff6ea928",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "df43a4bd3c91475f81003dd2dd38f2e2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ff63757366b04327a98d3f21f2ca505b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b10cb14c002e46ae88f5181185fce6cf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "285a18be63bf4bfe8efb2c76a4d79c5c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5ce790e7ed1d4d2f87b7783bebb11c5e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "06f39866420f484b9eaaa6582308f718",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bd8563a500df477ab8293636af9e3e3c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2ade8f0416f0480d8a77f0ae905fe5ac",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e61955c63ba64989ba48c395b86d534a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8df977bf1c30441cb33cb4bbaea56582",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3bb7ffd96fe5460eb32d97853f573622",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "20857b5ad02f4eaab7050502c7b47914",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ea08a4d2383043ae820f2bdf955b7ccb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7e75478ed9784ae086cca5dbfdb500b2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c3a170894e0c45cdae32d7863487a0e4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "35fd4a46533c4c069905e1be06c99988",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "754d9886ac9c4ef99acc9dacfcbf85b2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6bcee7170fbd445fad838181563fe287",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4b3dae3c4d844432bb09431ca4b8d13b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a8ac4b1704de438a897b891a2b5c1e83",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1b7c7d9f8560432685eb01a7ccd6b7f3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c6a78abd288d4a79a790ad67e9b4fb6f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2032f0d8554e4d84b6601f40e18cd5ac",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0ae21e058a664560a5c5bf12ea656f85",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e0d8c64067544323ab623b20c4102ecf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "41789676a4dc46ed95f65a776a2fecfc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d0a5d41a2dff4c75a243436c23692ccb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bee486b24194415580a65fc8bf995a68",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cdaa8bb714da4c3093c756873eceddac",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "10c4e0c0497f4a9fbb85919b352b12b1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e4e33f0b1e7b45b6aa8dbd5a882bafaa",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "12bc2d39b620415d92b7e5274847d4f2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8dfafea966d4428388108a95f6b1b14e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a6ae7401e4a348a8b8d3dc7d52862c32",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3546ffcd216c4850adc2fc9accd7d818",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c6f04c5886734a1c8b33ebe06efb9acc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "48f85ea9cd5c4f5e8b55f7e3848791cb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3b49af414a4f42c38c13fe4bd2fb4368",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c04208d5cded4c1d8d5e6c1967188091",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "328019435f224db699770b526b1b80f5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5de93e2a693a4ec0be33cef3a11f7cf8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1e90266704c94825b9b1872f582d80df",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "46ed8c33b2b94b5d976966f990515ac1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "40b4d5a9ac4541d9a87ab9928f790f6c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8f9216eec5814b23a886db964b44d1f8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3bb88f9598014a29a18939aacd76ee41",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "048962f232ca477b9f01cdfe23492dc1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "49d0becc3a7a465a88fb41516ad0960d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a71eab1e7c8543fda1c5c779b1c33544",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6c80491fa79147688f1cdc26076680a6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "40a09605b5f14476a83c690857cc3518",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "70732bde4cd744e7ba78824bf5c39751",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "02ccd3c44aed42ddaaf58e78aa6b2763",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8ee0d87685924b1dada812e7938b82f2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d7be79160a9845e191f333537d79e849",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d3fdca42f2ce4b9b89dfce4bb823d8de",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "40d5a47b7cc64145a6517c1c168a74a9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ecfa9bbec71c43e0b3c7f8aed9e7b2b2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4314c047300d4c7bae4ec59ee2f32f98",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "aafb5d2a49a6474e9d0c6c9f9b9ea8d2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8d46d73d443d403ea717846e50453057",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7b3389b9940a4a3a81972e6f20f40b6d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a7bb6494face4524ade510f7b9e7fed7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4f98028b442347f18d6885f6b491aa20",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "181dbae2c3bc4252a3c1fd9ac52b20f5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ed914c0083ef4210bfde7b3c22801b99",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "44a202686a154abda8d70a3f6f17dfda",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bafee744e19045258a082fa82fb54fc0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2a7c875de51a4d0f9f119fc6ab258666",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "131c99ede10c475f90197a087f0b58fb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d922f741ee49456ba389dc3765ddb7b1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "927875de7eb241d6aa30cadb49c6a6b9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4fb4f4303f8c4d56a1d24a730a9ca397",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b74e3fb628214a69ab03a581377e72bd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a72daebedf824b5cb7e5d5592ef71775",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "113d8dd3d2314121960ad45e44b8eb92",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d75ec64b2db147cfbadfb32c5b95e940",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "38c43341d70f473bad7883df323d8911",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9fd3d3a831b84f8eb21eb56742863776",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cdf6b04bfe3240f2b667b7040296c990",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "22723ca4013d42c0866ae5fc2d844153",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a518c7733a9243a99e78c35641d32fed",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f4cc72d4f452448bb9d3d19cfbc43e5a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "857ba6f34397402299e872379f627223",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3725a0425aff4b31a77019b29931ae91",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "58d52dffd12d46eca108d2e620b55e75",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "60c8e81c2b294358a2609943f487845d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2eb9b63a89d447b3b413df305dd0ae1d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8cdd2c1691a644699c181284784ec4c0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "77d16bc78c464f7f9e17df064c08e7a1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0ea6351014134978b88e66917a017aa1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5d62ab3262c94c08962bd04788a3d802",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5a865ef09ba64e138dcc26a5c40f52b0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ba9f5cb6925b4c6ba302420b12c38829",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4955e2492f5c41a4b195e92efd150c3d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6d865ffc2c62477c8ae3dc7e46152781",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a116ce590d374d2585bd0284ccf973ec",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "da58da41740544bfb2230de0fd61f73e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "54f141ad04ee49aa9e20b187f5ff5d47",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ba894e23bc0d432695514bf4944ec6ad",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "527e9dfc0f4546a2800c3f265068bcde",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1419b67d1494410a8eda430826506160",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8ba9629b50db4e86a4555263c6d43115",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d6f88665f3cc443895950522eed55055",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0640e146ec8c431991038514fdc35a94",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "546d475e480b470eadee5ca589c0bdb1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "885b87490fd547f9abe41bda7d8308d2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0a109beafd8b4c71bff91087b164f84e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e43531cac58e4a87a590e1ee331a8336",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c2286d30303d44c48bf7f8841c22055e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "84e874c47cda46ebb41097435aafab67",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "056cc66453a14e83967d55c38db3cc09",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ed3acc7053484a49910bc098d91fc1e7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f4ee0032c4254b7fb9765182da79ede0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1441824ae9e8405cafdba0267b2605f5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "697e20460cb64000a8252ea7a31927f4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5a7f3d7eb65847b2b8d738910d931fcd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c0837989ac8246fba0fe9f400ee5a114",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9170b5e78f4f4b14a554faa9830317e4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1caa70bf53c24d65877ed039274346ac",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ff9fe7d43af64bf29e000c25bb96051c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "86dd75143bee433dbceda78f08482cf0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8f249a641c6f448a8a611475a2888c03",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2ef84575bc5f46feb10464cbbea25f21",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1311027dd44547dabb593a14a4baffc4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "956131a01c5a408d9db7b9a6a020909d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "96f7abc461ee4adfb169def9126b770e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ba0c3a80f85d40fbb6fe3cfa0d1c792a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9833c8a0c9e543f68680d243f2175682",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "121e0d2c00b14c048b3bdd79caae96ba",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "de6ea3b6b9bb4bde9a8041d7d16b7d89",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a9fde47d07be4e87ac2bccf1fedf6300",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ed98b8e216ce4a6c83aa77a1bfd6fac7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0897d3282035438faf984e3d528dfb55",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b4e076ffe04b41c29caa868af8649ed1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f6a39bd92c2b4a03ac9f8fd6d1c7a2ac",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fac595268833478fa276cc038898c881",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "766bb4524c7044ba840ee4e06072874f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "171ac94f40e547829097864a246256db",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4e7aef4eb9b04b41a692cc595f001ea6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "756ca2d2b17a4d7484a521c909e67940",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9e117b9ea16d4f1f980a4271a43878e1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e9467e1be42946d1926fcf5d5cbb243a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5b7130447b59471da3f87dda20beeb83",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c3505761f806423ab82b46e73cf8f4ef",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ec5a3f0d77864cb8a7f7a28fa0e7eb20",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "210f4074ba5f49bebf906a67a0451678",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "92ef3069e27c452188ce6e7427fed197",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "350aa0fcc02c46ee8efa5ed513618768",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d35687786c084649a6ea444db45b5a7b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bba8e92da92748b2820148fcc6801f6e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "086fca8258fd4cf98a3b4e2ad35897ea",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5ec767f236e34705a3fe54f8dc4b6afc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b6179fb9b50d41b0922a129c52a0c99f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9e65628033074cc0912627132356ab72",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "591dbe7eb0434d37946f88858899e8dd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d732cd0fc33b4b41b65a5aa4476f4171",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d9e1859a2f294d39a714413ab30f4926",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "aad3c1431137457b82bcd640925fa37b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "649661ced0894fa6b3b1534c7206aa5f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "eb2cef5af3924eab80a5b7ea98c1e55a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2c0e842a19854fe98ba05e47343fe9a7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "62414a62dfda469e9344e9df85786955",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8b0334eb62b844adabda0a8d9e9a1673",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d169e8f61fdb4469b3fece292bc9ba09",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9142b5a9eb3c4d8b8619b9c2adc5d75a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "38f340ec9320452fb76f3b88304660d2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6050e519c1974823922ce8f8d36ae7bb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3f9e0a8361244d8197bc540efbd90019",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1fb9e32fe68e4a5aa2b2ec2c936401f4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d2915bc9127c48b9b4915c6a6cda7432",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "406482edf7774749bab46bd51e8a2099",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "13e15d16ce8048bc92fd2de426947372",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bde732cf6ddb4f6eb63671527908771a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "83161bf797ed4fdd953ee41ac19f49d7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "740a876a16b0468c8986870f6f3b8e74",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ffad5050ef19461b8032e6d22ba5d1fe",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "002e17c8c161486f9682869dbb7e00bd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c9655bc07b5b46f7af7de3e11133ee2b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7b32485482b8447e8db5381f84f06ddf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c504a0e569174c28b6314cdfd59d026e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d5630697e61641eeb7d6ea2ce9014ddf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e71a2486b0f7489eac0ea6628be85146",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "306ea045bff24334a2aed7069904e730",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4a6cb6c3fc3e43818ee4ff4da4c171c8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "36b9aa7c66b34349ae7a039669c69185",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4c36bf3b408f4369954a2d9cfc4c2237",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c2af2c18c4f94d3db0bfa5ee25a7db0b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8052ec3d06cc480db3a659c4d479a093",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "461ca2bc6c2c429a8e2d818229392303",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "734c1d55c96c454dbf21cac605bc0c17",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4a2b435540374e4887d5f13d113c4a73",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "624c8b7b80744013afcf069e70d0bc1b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "06bd8afd101b4176a45113a943409983",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c0b4796ded194db584db7d0fccf856f5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cafabc2cf1ca4c5b91630d2415c34519",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fe3752c372044cd98784a78677fb4a63",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "11a88c6b1c9e478bb726f0ab2742f68d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ef683e25774c4871bfade13253e38688",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7a1e0975b4114177bb02037b8b4e18c0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "502b9b32da1f4a898a641a41e50c9c9c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "702c18f186e743b2937937c28d16445e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "133a1c3db1644e0d8cfa199e0b638152",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e93232c4816e471d9df051cd088996f2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c5602d1d9a054b63a253920cdf78640d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "78ee4173e4574b1583f50e12d4c14bc4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ea90a5980c984bbebbc3f4073cc71c8c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dde9438b1f184148b21954964b57ab22",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a0270c52dbc1490897da528d581598cd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fbe79254a4c74c3db9a650c162791889",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2aadbefc463e4e3eb7c12cade3b5dc55",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "16730d6b724d4e18bcaf755542a5a0b9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8f3e606c061d461cb170d813a1618df8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dd7f0a98a36e4da78516e97f3c0f626e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "89c17c1f90ec43bcacf37fb3c42aaad8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "910f41649e50451894172ce62ea12855",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "23518caeef6b430a9d026f83ab0824bd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "362e9149475a4d828a390647c8a5d1b5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d433cdb7aaeb4e5c8d5492f46ae54bb8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bebe5c670dd84e648596c02fb7b7202e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ea88026d7ed44ecf919772a6a43199bc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "08656ce72fdf4849bf2a476d718e7370",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "94621d290ae3460f84ff162359f17cb4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "95a75305198d4f21af4cae85bf7a1332",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "54d82c7513994ec29fecfd472bc05096",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c1a39b77526f4afbaa8d1353e2199a6d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6ff0923b0ff34c08856b9038c19df9e0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "73abfb88588e4e19ba5723a27b5df78a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e617999912364b3d90dfb07b2dcbddcf",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7ab63e3827f248cdbdf2ecfe0c1ad9d4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7d0719f821e5477ba3a891608d40fc0e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "36a8f8511e3f4dbe8984abaa5e2025a8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "77a95145ea9d47d79c297b2bc8833c66",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5ec84d2e530d4aeea1e8e8b0f58f20f3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4d78c3f7f0d647c6b04a2042f233f004",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7f41658c0b4e4850b395c99888be3eef",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "01616cd97ef74d7da841f3135d7bc5dc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b99cc93697f3452a835ff0e4b7627bca",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fdec03ecd2364773b00dd368387e4583",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0f7855d324e6444d89d1e3242475555c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c17f5b95c33a48898d64df6c354ea219",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b1d7576e4e0d45cabcf8551132420376",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "53a7341a587549908f428f186e49f2fa",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0d0baca5e69d49588c51af56192b2c16",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4c6ff21635f24a4d8e1d22f1fbd74a82",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7d33976fb7b04b32a962cc95724c1890",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "47dc65a387ca49c3876f21aec2760530",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5fe3be9c465747939212bcd00139ae2b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "076a893fdbed4182901220c957c9b984",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d094e598986d4198a732afb278e8d0e6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dc78962a541744ecac71315438dae4fb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0175be8475f94ac5a894edc61ea8acd8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5f8391b104954e788c73a66b01de12a7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f6f1fb72ca7a4ff0b77b25290fae6a6e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9e9e374c6aac48588e1e67763a2d4f4e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d29b5566f97d47d6a20deb2be67b905c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f4654f08d90c4899b6d2e91fe759f2d7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5ef2f91dc7f04504b7103384f66e374c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7e0051b549934681b81ee449ec02d694",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1c68e758ae834bf3b47ba718c942fb51",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b915bde6149848168629f72b956acec0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f223cb3f8f59460b9b25751d9b448826",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5d1bf9ab80764b9686f274a557be47b8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1d3b4647537441beb3e83c1eb097d85e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "772c9441527d4d92a0e351b5f90ade86",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bad72ce251e24520a4337ac56d8a05b7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "48163de7fa1a47b8929b2af174080106",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "30db95038c0d455b8221497af01b1a82",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d88a9d925ac84e1a93dab81e7999d29c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f916ebab0f8849bf9ab1a6b1895a7dc4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0c0ae82882cc4a519cacebd0b1481717",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c29de9ac110541f3a761f054c3e53039",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "bee7ecd454a54838b290427abb59a870",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9e6ef2ec42cf4d7badfa5adc34862fe6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "47d8725e85bb4163904b7d261bda8692",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0db56353f28640eb9df1838fb9dc4f4e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cd4ade124f674984b8bb8280793b46ac",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c86472c140fb4c74858f227987003092",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "868b296e6fe647d1b06e40cfdb2e9c8e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7050d669f3f042639c6ba0d325bc4e04",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "88330034922741a1a4c29b925e336284",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5613197766294ba9a3ff9be1b0b874cd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9a5c4d74c4fc40a5a40d03b7fabdfd23",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "aeb2a6f985e64988ae66282b3955deb6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0741d4d24299422689e6ef0d389c7d34",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0bc244bedb924c5ba95dfd1503cc7d74",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "36e9424890154bc491fe207958cb6ffc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e352274feaec477fb875d386c2c3fde1",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f9a7592b1d02484ca476cc783acb292e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "04a1c2efd0b54f3ba98a58ac1c1cf9b5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3e36d0cc37b74757b7136b5c66602712",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ddc6f956441a4604beada0a1e83c10f4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d1953a5896d84763a2af78c37c316687",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c175281ca2a3451cb4090ec0db2c9404",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "56fd12f780c347b980a3cb44bb146a10",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c84461cf7d144916b8832ee75e5ba445",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a51eaeac130a4c66a5f949919e044b50",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8d1464337b45425a8050375d6afdaec0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0f754efad17341f3a8362d990d9fb1b0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5a2d035d10444bbeab5574df62336a0f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6dd493f2114146b4b287e1b9f7961c81",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7453383b834e43abb50c8a31696d8395",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a6e359323a86436baa589f57380c689b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "18f123061ac241c5ae124f31a940ab0c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "070a11276eba4b1a8388f2669f13656f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2d575997796946c29faf6b31ae606b2b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "893b53a6ad2a4beea70b3015cb41bf51",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ec51fb3dc3ce4bd8a4e9509a2a5748d9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "32843dae46b0475f8ea72a3e001a93e7",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ad8d49a8915f440abe65cb81a5229233",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cddc103ea33b4889870cfeb895cec8cd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "418fd9e0cda4458fb06bd7403daf68ff",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a17b291c36584665933582aba6c585cc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "60a1579e183b404b9957a75794b19085",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cf63b489a85c4e678c78d1a528ae8696",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d43676219d1949eab4e2f49298fe7630",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4aeb7f4849c84ced99e9efec5bded8d3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2222fe3906e8437abbf070bac424f8c5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5fa32ddb36a243c0a7c08c31e11b3fd9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cf5dfd81aea34f9a9b58aba5b4b7c554",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "681306575b17425ab895b756bc7e562e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6296276669f54690a2de7b336fa52387",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ad186cbef85f491ab468f2deca35515b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "debcb7c96f0546ac96620fd6fce7cd23",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9a696bcb31c14cca88b9693c9b307ab2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a596604de12f415fb4129c57b5fb91df",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c689dd95efd84221b70de0f4fd84be37",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9863cac833d24e8bb3c632b5df88debe",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cb2a77c26b7944e48ed2d966599dee74",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "7fce3b58ecdd447aab822797c3f6ad30",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6a3a15272f91401b940e7285be08db19",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "b9f28514d6ed4ab1a948f5a6e18cd778",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1a88740f05584513ac35e50fd11f5872",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "c327a24979a845a6bb5e5a8f16258f36",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6c028f775d924c8d82c2024dba717397",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "33b88c5e14474a7faf51fae8f84af75a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a8cfd724f17f416ba148dcee4b126364",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3f0d08be9a1b4144aed210fe7dfd06c3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "82a68acba3bb4d44b17f9558dd6aafd6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dd91652fcd4f4f2cac629ff77745baa5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "03051f29119c4ff488c189d4ada83a44",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dd1457265cee4aa9b192a01eb9b7705d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "58abea329c3943038b70d9d14e5f6f3f",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0267996e86164044b699211587967fae",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "738c141db86048eba918a07f2883e0c6",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1660ff55328941be89d7aeb12afb67fc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9800ef3ed37c4f3b87797fce6232a793",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5df5d53437cd471d85e408ead875867e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "868f0cd6a58c480585d6edd24d0b7bd3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f9e1ee78823f48dbb6c2b3bc7dcc6cd2",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cda8abe54cb34d0e8c0a9c4c9ca87898",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ecd7aced8c9d4249a110d7f9ef9a8494",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "5ac2874a651e473f9529581eebc6ef0a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "IOPub message rate exceeded.\n",
- "The Jupyter server will temporarily stop sending output\n",
- "to the client in order to avoid crashing it.\n",
- "To change this limit, set the config variable\n",
- "`--ServerApp.iopub_msg_rate_limit`.\n",
- "\n",
- "Current values:\n",
- "ServerApp.iopub_msg_rate_limit=1000.0 (msgs/sec)\n",
- "ServerApp.rate_limit_window=3.0 (secs)\n",
- "\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d39221fee52d444dae41ba41fecaefd3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e786504690de4178be3791a999704782",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ddbbc2b836564c2aa24d7fc2474f4aec",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3b0a460005b74f449a87aaa74a632d0e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4e224754a4284358a3e3793e40f1c3fc",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e08cfa4cbcfb4213aac6418d5b8e8515",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "wandb: Network error (ReadTimeout), entering retry loop.\n",
- "\u001b[34m\u001b[1mwandb\u001b[0m: Network error resolved after 0:00:27.999081, resuming normal operation.\n"
- ]
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cf277bdadb2f4eef8a09e552d6d7b2c9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "924ad1870517415386eef77c375cb651",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "642bac42f7904ea6afbf18bc8c5af363",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "963ed33b3cde453c984110e7d501728e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1a9452be3eda4ce8ba9f7982db88623b",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8c8cb9fd952b42b38421be6ec9576c0e",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2f1261811ec844d6b6d7dc70eb95e8bd",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "96d2035573de4879b4b1085500e3af56",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0ebbb65a1caf40eeb328838f11a7d6d9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4aa9c8aed7c1485fa7dfd744788be2eb",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "db98b6aebc7f44dcbc23498f3acf7c44",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ca000508d3474e71ac4adbabd62f64a5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d4cc57178bff4a34ba6519e65807a917",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6d5695ac066a4271b605caaa441b88e4",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "48cb28b761ca42feb19f34da5c106a6c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4da0723c86bc4b6abba8b56957426f79",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "63904a1ed0f5498aae2c9e49d0147de8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "73fd4ba3ec97426fa833b51a0928ed59",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3c59ad95ad7b4ae0a6d74d7ccffb7360",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "49a5bd00c5fa4a90be80326cbf1b98e3",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "dbaa3aa689b94a2188c4a5496438c476",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9a8ebe475da644d4ab18289f5b15996a",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fbfefacaee5c41b9b98a5be158d82753",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "0258545830c74959a5f4b5d8632c0d68",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2aadd4f03fd74203a14484a479a07e75",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "a4bdcfcc2a0e4ce6b0039750994d3506",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "ba7760b4a28d4234aa4dcf4a0dac5774",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2901c88bd4e84b93a4f30089bcc3dc19",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "cb21c71e1c124387994de726317a0550",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "fb5540440bb74dd9a715b689f93bf397",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "6da3c56fb9354be6b7c699df7491f7b5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "3224f9067e4140b98c9b3de93c0b58af",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1c0a42df769f45438d6de1cf9b13f658",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "9f7f698208ae40378b0f98421beb3efe",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e63ab0618151497d8986e32064e2f508",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "d15f3a2575c94dd0bab66a59346136f0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "af33bd52daaa489ea555e425186cea94",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "66428f6dafc64ad4a9dd283c47f52d53",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1c55e63428be49d39b0e8e5c1fce34f0",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "99125fcded604169b661d44778c5ed50",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "28f52b773f594b5a8c952b62d57b644c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "8d200641b7a546c8b6504e19a27e1374",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "1b57b6760ca046ebbf4fa939a3dc4691",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "f125b822d2b94af6a9c9c719d43d8a9c",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "04689f2311424a1c87904bd31edecae9",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e75afac9f02f4cdfb972768be6eaf046",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Validation: 0it [00:00, ?it/s]"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "`Trainer.fit` stopped: `max_epochs=1000` reached.\n"
- ]
- }
- ],
- "source": [
- "trainer.fit(model=model, train_dataloaders=train, val_dataloaders=val)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 59,
- "id": "5f23e13b-a415-4848-9b52-7b535f1f51cb",
- "metadata": {},
- "outputs": [],
- "source": [
- "noise = torch.randn(2, 1, LENGTH)\n",
- "sampled = model.sample(\n",
- " noise=noise,\n",
- " num_steps=10 # Suggested range: 2-50\n",
- ") # [2, 1, 2 ** 18]"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 60,
- "id": "1c9c7b80-4e11-4ec6-98e2-37263b62dc60",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- " \n",
- " "
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 60,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "Audio(sampled[0], rate=SAMPLE_RATE)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 54,
- "id": "a7d15cb9-6fea-4c43-bdc4-10133e72736a",
- "metadata": {},
- "outputs": [],
- "source": [
- "test = \"hi\""
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 56,
- "id": "ba6fd715-abbc-4dba-8822-a7046ca12ece",
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "hi\n"
- ]
- }
- ],
- "source": [
- "print(test)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 62,
- "id": "1f8a4c43-ecff-4409-ace3-69ca80c08cdd",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- " \n",
- " "
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 62,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "Audio(x[1], rate=SAMPLE_RATE)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "da8c525c-e6b5-4638-aba8-871ccadcf323",
- "metadata": {},
- "outputs": [],
- "source": []
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "Python 3 (ipykernel)",
- "language": "python",
- "name": "python3"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.10.6"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 5
-}
diff --git a/remfx/callbacks.py b/remfx/callbacks.py
index 28bdbdcc6daa182239d1941b471e3f934aeb0d47..32bceffb9ca9dc7f5dea467b38d8fdf9181a231d 100644
--- a/remfx/callbacks.py
+++ b/remfx/callbacks.py
@@ -42,9 +42,7 @@ class AudioCallback(Callback):
)
self.log_train_audio = False
- def on_validation_batch_start(
- self, trainer, pl_module, batch, batch_idx, dataloader_idx
- ):
+ def on_validation_batch_start(self, trainer, pl_module, batch, batch_idx):
x, target, _, rem_fx_labels = batch
# Only run on first batch
if batch_idx == 0 and self.log_audio:
@@ -92,6 +90,8 @@ def log_wandb_audio_batch(
caption: str = "",
max_items: int = 10,
):
+ if type(logger) != pl.loggers.WandbLogger:
+ return
num_items = samples.shape[0]
samples = rearrange(samples, "b c t -> b t c")
for idx in range(num_items):
diff --git a/remfx/classifier.py b/remfx/classifier.py
index 5bcde24657d459ee5ddea22b7bd29c6b53cbb953..1c35f1ace744993563c753241519bfea4f4abb28 100644
--- a/remfx/classifier.py
+++ b/remfx/classifier.py
@@ -173,10 +173,10 @@ class Cnn14(nn.Module):
self.fc1 = nn.Linear(2048, 2048, bias=True)
- # self.fc_audioset = nn.Linear(2048, num_classes, bias=True)
- self.heads = torch.nn.ModuleList()
- for _ in range(num_classes):
- self.heads.append(nn.Linear(2048, 1, bias=True))
+ self.fc_audioset = nn.Linear(2048, num_classes, bias=True)
+ # self.heads = torch.nn.ModuleList()
+ # for _ in range(num_classes):
+ # self.heads.append(nn.Linear(2048, 1, bias=True))
self.init_weight()
@@ -192,7 +192,7 @@ class Cnn14(nn.Module):
def init_weight(self):
init_bn(self.bn0)
init_layer(self.fc1)
- # init_layer(self.fc_audioset)
+ init_layer(self.fc_audioset)
def forward(self, x: torch.Tensor, train: bool = False):
"""
@@ -212,12 +212,12 @@ class Cnn14(nn.Module):
# axs[1].imshow(x[0, :, :, :].detach().squeeze().cpu().numpy())
# plt.savefig("spec_augment.png", dpi=300)
- # x = x.permute(0, 2, 1, 3)
- # x = self.bn0(x)
- # x = x.permute(0, 2, 1, 3)
+ x = x.permute(0, 2, 1, 3)
+ x = self.bn0(x)
+ x = x.permute(0, 2, 1, 3)
# apply standardization
- x = (x - x.mean(dim=0, keepdim=True)) / x.std(dim=0, keepdim=True)
+ # x = (x - x.mean(dim=0, keepdim=True)) / x.std(dim=0, keepdim=True)
x = self.conv_block1(x, pool_size=(2, 2), pool_type="avg")
x = F.dropout(x, p=0.2, training=train)
@@ -239,13 +239,13 @@ class Cnn14(nn.Module):
x = F.dropout(x, p=0.5, training=train)
x = F.relu_(self.fc1(x))
- outputs = []
- for head in self.heads:
- outputs.append(torch.sigmoid(head(x)))
+ # outputs = []
+ # for head in self.heads:
+ # outputs.append(torch.sigmoid(head(x)))
- # clipwise_output = self.fc_audioset(x)
-
- return outputs
+ clipwise_output = self.fc_audioset(x)
+ return clipwise_output
+ # return outputs
class ConvBlock(nn.Module):
diff --git a/remfx/datasets.py b/remfx/datasets.py
index 82e2489f661e73c27ec1415f4ba5f76fef1ac915..41cee8afb4f947b98ddbbb9bd3e6df70d18d654c 100644
--- a/remfx/datasets.py
+++ b/remfx/datasets.py
@@ -18,7 +18,6 @@ from auraloss.freq import MultiResolutionSTFTLoss
STFT_THRESH = 1e-3
ALL_EFFECTS = effect_lib.Pedalboard_Effects
-# print(ALL_EFFECTS)
vocalset_splits = {
@@ -45,16 +44,6 @@ vocalset_splits = {
}
guitarset_splits = {"train": ["00", "01", "02", "03"], "val": ["04"], "test": ["05"]}
-idmt_guitar_splits = {
- "train": ["classical", "country_folk", "jazz", "latin", "metal", "pop"],
- "val": ["reggae", "ska"],
- "test": ["rock", "blues"],
-}
-idmt_bass_splits = {
- "train": ["BE", "BEQ"],
- "val": ["VIF"],
- "test": ["VIS"],
-}
dsd_100_splits = {
"train": ["train"],
"val": ["val"],
@@ -93,38 +82,8 @@ def locate_files(root: str, mode: str):
]
print(f"Found {len(files)} files in GuitarSet {mode}.")
file_list.append(sorted(files))
- # # ------------------------- IDMT-SMT-GUITAR -------------------------
- # idmt_smt_guitar_dir = os.path.join(root, "IDMT-SMT-GUITAR_V2")
- # if os.path.isdir(idmt_smt_guitar_dir):
- # files = glob.glob(
- # os.path.join(
- # idmt_smt_guitar_dir, "IDMT-SMT-GUITAR_V2", "dataset4", "**", "*.wav"
- # ),
- # recursive=True,
- # )
- # files = [
- # f
- # for f in files
- # if os.path.basename(f).split("_")[0] in idmt_guitar_splits[mode]
- # ]
- # file_list.append(sorted(files))
- # print(f"Found {len(files)} files in IDMT-SMT-Guitar {mode}.")
- # ------------------------- IDMT-SMT-BASS -------------------------
- # idmt_smt_bass_dir = os.path.join(root, "IDMT-SMT-BASS")
- # if os.path.isdir(idmt_smt_bass_dir):
- # files = glob.glob(
- # os.path.join(idmt_smt_bass_dir, "**", "*.wav"),
- # recursive=True,
- # )
- # files = [
- # f
- # for f in files
- # if os.path.basename(os.path.dirname(f)) in idmt_bass_splits[mode]
- # ]
- # file_list.append(sorted(files))
- # print(f"Found {len(files)} files in IDMT-SMT-Bass {mode}.")
# ------------------------- DSD100 ---------------------------------
- dsd_100_dir = os.path.join(root, "DSD100")
+ dsd_100_dir = os.path.join(root, "DSD100/DSD100")
if os.path.isdir(dsd_100_dir):
files = glob.glob(
os.path.join(dsd_100_dir, mode, "**", "*.wav"),
@@ -468,7 +427,13 @@ class EffectDataset(Dataset):
chunk = None
random_dataset_choice = random.choice(self.files)
while chunk is None:
- random_file_choice = random.choice(random_dataset_choice)
+ try:
+ random_file_choice = random.choice(random_dataset_choice)
+ except IndexError:
+ print("IndexError")
+ print(random_dataset_choice)
+ print(random_file_choice)
+ raise IndexError
chunk = select_random_chunk(
random_file_choice, self.chunk_size, self.sample_rate
)
@@ -613,7 +578,10 @@ class EffectDataset(Dataset):
normalized_wet = self.normalize(wet)
# Check STFT, pick different effects if necessary
- stft = self.mrstft(normalized_wet, normalized_dry)
+ if num_removed_effects == 0:
+ # No need to check if no effects removed
+ break
+ stft = self.mrstft(normalized_wet.unsqueeze(0), normalized_dry.unsqueeze(0))
return normalized_dry, normalized_wet, dry_labels_tensor, wet_labels_tensor
diff --git a/remfx/models.py b/remfx/models.py
index 75dd03b7dc882eb2d994ff588f0d63af79392c32..ea3dc73a6dd21cfd13aab7b899b2831a67c2543c 100644
--- a/remfx/models.py
+++ b/remfx/models.py
@@ -4,16 +4,13 @@ import torchmetrics
import pytorch_lightning as pl
from torch import Tensor, nn
from torchaudio.models import HDemucs
-from audio_diffusion_pytorch import DiffusionModel
from auraloss.time import SISDRLoss
from auraloss.freq import MultiResolutionSTFTLoss
from umx.openunmix.model import OpenUnmix, Separator
-from remfx.utils import FADLoss, spectrogram
+from remfx.utils import spectrogram
from remfx.tcn import TCN
from remfx.utils import causal_crop
-from remfx.callbacks import log_wandb_audio_batch
-from einops import rearrange
from remfx import effects
import asteroid
import random
@@ -51,7 +48,7 @@ class RemFXChainInference(pl.LightningModule):
self.output_str = "IN_SISDR,OUT_SISDR,IN_STFT,OUT_STFT\n"
self.use_all_effect_models = use_all_effect_models
- def forward(self, batch, batch_idx, order=None):
+ def forward(self, batch, batch_idx, order=None, verbose=False):
x, y, _, rem_fx_labels = batch
# Use chain of effects defined in config
if order:
@@ -79,25 +76,19 @@ class RemFXChainInference(pl.LightningModule):
]
for effect_label in rem_fx_labels
]
+ effects_present_name = [
+ [
+ ALL_EFFECTS[i].__name__
+ for i, effect in enumerate(effect_label)
+ if effect == 1.0
+ ]
+ for effect_label in rem_fx_labels
+ ]
+ if verbose:
+ print("Detected effects:", effects_present_name[0])
+ print("Removing effects...")
output = []
- # input_samples = rearrange(x, "b c t -> c (b t)").unsqueeze(0)
- # target_samples = rearrange(y, "b c t -> c (b t)").unsqueeze(0)
-
- # log_wandb_audio_batch(
- # logger=self.logger,
- # id="input_effected_audio",
- # samples=input_samples.cpu(),
- # sampling_rate=self.sample_rate,
- # caption="Input Data",
- # )
- # log_wandb_audio_batch(
- # logger=self.logger,
- # id="target_audio",
- # samples=target_samples.cpu(),
- # sampling_rate=self.sample_rate,
- # caption="Target Data",
- # )
with torch.no_grad():
for i, (elem, effects_list) in enumerate(zip(x, effects_present)):
elem = elem.unsqueeze(0) # Add batch dim
@@ -107,40 +98,12 @@ class RemFXChainInference(pl.LightningModule):
effect for effect in effects_order if effect in effect_list_names
]
- # log_wandb_audio_batch(
- # logger=self.logger,
- # id=f"{i}_Before",
- # samples=elem.cpu(),
- # sampling_rate=self.sample_rate,
- # caption=effects,
- # )
for effect in effects:
# Sample the model
elem = self.model[effect].model.sample(elem)
- # log_wandb_audio_batch(
- # logger=self.logger,
- # id=f"{i}_{effect}",
- # samples=elem.cpu(),
- # sampling_rate=self.sample_rate,
- # caption=effects,
- # )
- # log_wandb_audio_batch(
- # logger=self.logger,
- # id=f"{i}_After",
- # samples=elem.cpu(),
- # sampling_rate=self.sample_rate,
- # caption=effects,
- # )
output.append(elem.squeeze(0))
output = torch.stack(output)
- # log_wandb_audio_batch(
- # logger=self.logger,
- # id="output_audio",
- # samples=output_samples.cpu(),
- # sampling_rate=self.sample_rate,
- # caption="Output Data",
- # )
loss = self.mrstftloss(output, y) + self.l1loss(output, y) * 100
return loss, output
@@ -182,13 +145,14 @@ class RemFXChainInference(pl.LightningModule):
)
# print(f"Input_{metric}", negate * self.metrics[metric](x, y))
# print(f"test_{metric}", negate * self.metrics[metric](output, y))
- self.output_str += f"{negate * self.metrics[metric](x, y).item():.4f},{negate * self.metrics[metric](output, y).item():.4f},"
- self.output_str += "\n"
+ # self.output_str += f"{negate * self.metrics[metric](x, y).item():.4f},{negate * self.metrics[metric](output, y).item():.4f},"
+ # self.output_str += "\n"
return loss
def on_test_end(self) -> None:
- with open("output.csv", "w") as f:
- f.write(self.output_str)
+ pass
+ # with open("output.csv", "w") as f:
+ # f.write(self.output_str)
def sample(self, batch):
return self.forward(batch, 0)[1]
@@ -300,13 +264,14 @@ class RemFX(pl.LightningModule):
)
# print(f"Input_{metric}", negate * self.metrics[metric](x, y))
# print(f"test_{metric}", negate * self.metrics[metric](output, y))
- self.output_str += f"{negate * self.metrics[metric](x, y).item():.4f},{negate * self.metrics[metric](output, y).item():.4f},"
- self.output_str += "\n"
+ # self.output_str += f"{negate * self.metrics[metric](x, y).item():.4f},{negate * self.metrics[metric](output, y).item():.4f},"
+ # self.output_str += "\n"
return loss
def on_test_end(self) -> None:
- with open("output.csv", "w") as f:
- f.write(self.output_str)
+ pass
+ # with open("output.csv", "w") as f:
+ # f.write(self.output_str)
class OpenUnmixModel(nn.Module):
@@ -377,21 +342,6 @@ class DemucsModel(nn.Module):
return self.model(x).squeeze(1)
-class DiffusionGenerationModel(nn.Module):
- def __init__(self, n_channels: int = 1):
- super().__init__()
- self.model = DiffusionModel(in_channels=n_channels)
-
- def forward(self, batch):
- x, target = batch
- sampled_out = self.model.sample(x)
- return self.model(x), sampled_out
-
- def sample(self, x: Tensor, num_steps: int = 10) -> Tensor:
- noise = torch.randn(x.shape).to(x)
- return self.model.sample(noise, num_steps=num_steps)
-
-
class DPTNetModel(nn.Module):
def __init__(self, sample_rate, num_bins, **kwargs):
super().__init__()
diff --git a/remfx/tcn.py b/remfx/tcn.py
index d63fb2512a1184c3178942d1a9bd5d9a6c6d19e4..50a4ca08a6575d4c73e39816add9004be7d65752 100644
--- a/remfx/tcn.py
+++ b/remfx/tcn.py
@@ -125,7 +125,6 @@ class TCN(nn.Module):
self.buffer = torch.zeros(2, self.receptive_field + self.block_size - 1)
def forward(self, x: Tensor) -> Tensor:
- x_in = x
for _, block in enumerate(self.process_blocks):
x = block(x)
y_hat = torch.tanh(self.output(x))
diff --git a/remfx/utils.py b/remfx/utils.py
index 61d93da102f766bd7170aaa9dcf020004aa7db22..7dd4565f0ae92f0fd128721c4249ce5424913896 100644
--- a/remfx/utils.py
+++ b/remfx/utils.py
@@ -3,8 +3,6 @@ from typing import List, Tuple
import pytorch_lightning as pl
from omegaconf import DictConfig
from pytorch_lightning.utilities import rank_zero_only
-from frechet_audio_distance import FrechetAudioDistance
-import numpy as np
import torch
import torchaudio
from torch import nn
@@ -74,38 +72,10 @@ def log_hyperparameters(
if "callbacks" in config:
hparams["callbacks"] = config["callbacks"]
- logger.experiment.config.update(hparams)
-
-
-class FADLoss(torch.nn.Module):
- def __init__(self, sample_rate: float):
- super().__init__()
- self.fad = FrechetAudioDistance(
- use_pca=False, use_activation=False, verbose=False
- )
- self.fad.model = self.fad.model.to("cpu")
- self.sr = sample_rate
-
- def forward(self, audio_background, audio_eval):
- embds_background = []
- embds_eval = []
- for sample in audio_background:
- embd = self.fad.model.forward(sample.T.cpu().detach().numpy(), self.sr)
- embds_background.append(embd.cpu().detach().numpy())
- for sample in audio_eval:
- embd = self.fad.model.forward(sample.T.cpu().detach().numpy(), self.sr)
- embds_eval.append(embd.cpu().detach().numpy())
- embds_background = np.concatenate(embds_background, axis=0)
- embds_eval = np.concatenate(embds_eval, axis=0)
- mu_background, sigma_background = self.fad.calculate_embd_statistics(
- embds_background
- )
- mu_eval, sigma_eval = self.fad.calculate_embd_statistics(embds_eval)
-
- fad_score = self.fad.calculate_frechet_distance(
- mu_background, sigma_background, mu_eval, sigma_eval
- )
- return fad_score
+ if type(trainer.logger) == pl.loggers.CSVLogger:
+ logger.log_hyperparams(hparams)
+ else:
+ logger.experiment.config.update(hparams)
def create_random_chunks(
diff --git a/remfx_detect.sh b/remfx_detect.sh
new file mode 100755
index 0000000000000000000000000000000000000000..45a385bb82c5434323f26cb9a78ac8ca8ec3c511
--- /dev/null
+++ b/remfx_detect.sh
@@ -0,0 +1,39 @@
+#! /bin/bash
+
+# Example usage:
+# ./remfx_detect.sh wet.wav -o examples/output.wav
+# first argument is required, second argument is optional
+
+# Check if first argument is empty
+if [ -z "$1" ]
+then
+ echo "No audio input path supplied"
+ exit 1
+fi
+
+audio_input=$1
+# Shift first argument away
+shift
+output_path=""
+
+while getopts ":o:" opt; do
+ case $opt in
+ o)
+ output_path=$OPTARG
+ ;;
+ \?)
+ echo "Invalid option: -$OPTARG" >&2
+ ;;
+ esac
+done
+
+
+# Run script
+# If output path is blank, leave it blank
+
+if [ -z "$output_path" ]
+then
+ python scripts/remfx_detect.py +exp=remfx_detect +audio_input=$audio_input
+ exit 0
+fi
+python scripts/remfx_detect.py +exp=remfx_detect +audio_input=$audio_input +output_path=$output_path
diff --git a/scripts/download.py b/scripts/download.py
index faf0aa34508fcd8faebd261a27628680b8ba0618..8aa9f3343d4d3e05cc8ca2232e4d8a66cb753227 100644
--- a/scripts/download.py
+++ b/scripts/download.py
@@ -6,56 +6,62 @@ import shutil
def download_zip_dataset(dataset_url: str, output_dir: str):
zip_filename = os.path.basename(dataset_url)
zip_name = zip_filename.replace(".zip", "")
- os.system(f"wget -P {output_dir} {dataset_url}")
- os.system(
- f"""unzip {os.path.join(output_dir, zip_filename)} -d {os.path.join(output_dir, zip_name)}"""
- )
- os.system(f"rm {os.path.join(output_dir, zip_filename)}")
+ if not os.path.exists(os.path.join(output_dir, zip_name)):
+ os.system(f"wget -P {output_dir} {dataset_url}")
+ os.system(
+ f"""unzip {os.path.join(output_dir, zip_filename)} -d {os.path.join(output_dir, zip_name)}"""
+ )
+ os.system(f"rm {os.path.join(output_dir, zip_filename)}")
+ else:
+ print(
+ f"Dataset {zip_name} already downloaded at {output_dir}, skipping download."
+ )
def process_dataset(dataset_dir: str, output_dir: str):
- if dataset_dir == "VocalSet1-2":
- pass
- elif dataset_dir == "audio_mono-mic":
+ if dataset_dir == "vocalset":
pass
- elif dataset_dir == "IDMT-SMT-GUITAR_V2":
+ elif dataset_dir == "guitarset":
pass
- elif dataset_dir == "IDMT-SMT-BASS":
+ elif dataset_dir == "idmt-smt-drums":
pass
- elif dataset_dir == "IDMT-SMT-DRUMS-V2":
- pass
- elif dataset_dir == "DSD100":
- shutil.rmtree(os.path.join(output_dir, dataset_dir, "Mixtures"))
- for dir in os.listdir(os.path.join(output_dir, dataset_dir, "Sources", "Dev")):
- source = os.path.join(output_dir, dataset_dir, "Sources", "Dev", dir)
- shutil.move(source, os.path.join(output_dir, dataset_dir))
- shutil.rmtree(os.path.join(output_dir, dataset_dir, "Sources", "Dev"))
- for dir in os.listdir(os.path.join(output_dir, dataset_dir, "Sources", "Test")):
- source = os.path.join(output_dir, dataset_dir, "Sources", "Test", dir)
- shutil.move(source, os.path.join(output_dir, dataset_dir))
- shutil.rmtree(os.path.join(output_dir, dataset_dir, "Sources", "Test"))
- shutil.rmtree(os.path.join(output_dir, dataset_dir, "Sources"))
+ elif dataset_dir == "dsd100":
+ dataset_root_dir = "DSD100/DSD100"
- os.mkdir(os.path.join(output_dir, dataset_dir, "train"))
- os.mkdir(os.path.join(output_dir, dataset_dir, "val"))
- os.mkdir(os.path.join(output_dir, dataset_dir, "test"))
- files = os.listdir(os.path.join(output_dir, dataset_dir))
+ shutil.rmtree(os.path.join(output_dir, dataset_root_dir, "Mixtures"))
+ for dir in os.listdir(
+ os.path.join(output_dir, dataset_root_dir, "Sources", "Dev")
+ ):
+ source = os.path.join(output_dir, dataset_root_dir, "Sources", "Dev", dir)
+ shutil.move(source, os.path.join(output_dir, dataset_root_dir))
+ shutil.rmtree(os.path.join(output_dir, dataset_root_dir, "Sources", "Dev"))
+ for dir in os.listdir(
+ os.path.join(output_dir, dataset_root_dir, "Sources", "Test")
+ ):
+ source = os.path.join(output_dir, dataset_root_dir, "Sources", "Test", dir)
+ shutil.move(source, os.path.join(output_dir, dataset_root_dir))
+ shutil.rmtree(os.path.join(output_dir, dataset_root_dir, "Sources", "Test"))
+ shutil.rmtree(os.path.join(output_dir, dataset_root_dir, "Sources"))
+ os.mkdir(os.path.join(output_dir, dataset_root_dir, "train"))
+ os.mkdir(os.path.join(output_dir, dataset_root_dir, "val"))
+ os.mkdir(os.path.join(output_dir, dataset_root_dir, "test"))
+ files = os.listdir(os.path.join(output_dir, dataset_root_dir))
num = 0
for dir in files:
- if not os.path.isdir(os.path.join(output_dir, dataset_dir, dir)):
+ if not os.path.isdir(os.path.join(output_dir, dataset_root_dir, dir)):
continue
if dir == "train" or dir == "val" or dir == "test":
continue
- source = os.path.join(output_dir, dataset_dir, dir, "bass.wav")
+ source = os.path.join(output_dir, dataset_root_dir, dir, "bass.wav")
if num < 80:
- dest = os.path.join(output_dir, dataset_dir, "train", f"{num}.wav")
+ dest = os.path.join(output_dir, dataset_root_dir, "train", f"{num}.wav")
elif num < 90:
- dest = os.path.join(output_dir, dataset_dir, "val", f"{num}.wav")
+ dest = os.path.join(output_dir, dataset_root_dir, "val", f"{num}.wav")
else:
- dest = os.path.join(output_dir, dataset_dir, "test", f"{num}.wav")
+ dest = os.path.join(output_dir, dataset_root_dir, "test", f"{num}.wav")
shutil.move(source, dest)
- shutil.rmtree(os.path.join(output_dir, dataset_dir, dir))
+ shutil.rmtree(os.path.join(output_dir, dataset_root_dir, dir))
num += 1
else:
@@ -69,23 +75,26 @@ if __name__ == "__main__":
choices=[
"vocalset",
"guitarset",
- "idmt-smt-guitar",
"dsd100",
"idmt-smt-drums",
],
nargs="+",
)
+ parser.add_argument("--output_dir", default="./data/remfx-data")
args = parser.parse_args()
+ if not os.path.exists(args.output_dir):
+ os.makedirs(args.output_dir)
+
dataset_urls = {
"vocalset": "https://zenodo.org/record/1442513/files/VocalSet1-2.zip",
"guitarset": "https://zenodo.org/record/3371780/files/audio_mono-mic.zip",
- "IDMT-SMT-GUITAR_V2": "https://zenodo.org/record/7544110/files/IDMT-SMT-GUITAR_V2.zip",
- "DSD100": "http://liutkus.net/DSD100.zip",
- "IDMT-SMT-DRUMS-V2": "https://zenodo.org/record/7544164/files/IDMT-SMT-DRUMS-V2.zip",
+ "dsd100": "http://liutkus.net/DSD100.zip",
+ "idmt-smt-drums": "https://zenodo.org/record/7544164/files/IDMT-SMT-DRUMS-V2.zip",
}
for dataset_name, dataset_url in dataset_urls.items():
if dataset_name in args.dataset_names:
- download_zip_dataset(dataset_url, "~/data/remfx-data")
- process_dataset(dataset_name, "~/data/remfx-data")
+ print("Downloading dataset: ", dataset_name)
+ download_zip_dataset(dataset_url, args.output_dir)
+ process_dataset(dataset_name, args.output_dir)
diff --git a/scripts/download_egfx.sh b/scripts/download_egfx.sh
deleted file mode 100755
index d62bb9af3d6349643b41030f28529a9394886bb0..0000000000000000000000000000000000000000
--- a/scripts/download_egfx.sh
+++ /dev/null
@@ -1,22 +0,0 @@
-#/bin/bash
-mkdir -p data
-cd data
-mkdir -p egfx
-cd egfx
-wget https://zenodo.org/record/7044411/files/BluesDriver.zip?download=1 -O BluesDriver.zip
-wget https://zenodo.org/record/7044411/files/Chorus.zip?download=1 -O Chorus.zip
-wget https://zenodo.org/record/7044411/files/Clean.zip?download=1 -O Clean.zip
-wget https://zenodo.org/record/7044411/files/Digital-Delay.zip?download=1 -O Digital-Delay.zip
-wget https://zenodo.org/record/7044411/files/Flanger.zip?download=1 -O Flanger.zip
-wget https://zenodo.org/record/7044411/files/Hall-Reverb.zip?download=1 -O Hall-Reverb.zip
-wget https://zenodo.org/record/7044411/files/Phaser.zip?download=1 -O Phaser.zip
-wget https://zenodo.org/record/7044411/files/Plate-Reverb.zip?download=1 -O Plate-Reverb.zip
-wget https://zenodo.org/record/7044411/files/RAT.zip?download=1 -O RAT.zip
-wget https://zenodo.org/record/7044411/files/Spring-Reverb.zip?download=1 -O Spring-Reverb.zip
-wget https://zenodo.org/record/7044411/files/Sweep-Echo.zip?download=1 -O Sweep-Echo.zip
-wget https://zenodo.org/record/7044411/files/TapeEcho.zip?download=1 -O TapeEcho.zip
-wget https://zenodo.org/record/7044411/files/TubeScreamer.zip?download=1 -O TubeScreamer.zip
-unzip -n \*.zip
-rm -rf *.zip
-
-
diff --git a/scripts/generate_dataset.py b/scripts/generate_dataset.py
new file mode 100644
index 0000000000000000000000000000000000000000..2b961f7ff4a73fa4d95ae18a87cca91563148c70
--- /dev/null
+++ b/scripts/generate_dataset.py
@@ -0,0 +1,15 @@
+import pytorch_lightning as pl
+import hydra
+from omegaconf import DictConfig
+
+
+@hydra.main(version_base=None, config_path="../cfg", config_name="config.yaml")
+def main(cfg: DictConfig):
+ # Apply seed for reproducibility
+ if cfg.seed:
+ pl.seed_everything(cfg.seed)
+ datamodule = hydra.utils.instantiate(cfg.datamodule, _convert_="partial")
+
+
+if __name__ == "__main__":
+ main()
diff --git a/scripts/remfx_detect.py b/scripts/remfx_detect.py
new file mode 100644
index 0000000000000000000000000000000000000000..b98c4eaf0a9dcdc09383c94ba787b0810ff34d8b
--- /dev/null
+++ b/scripts/remfx_detect.py
@@ -0,0 +1,65 @@
+import hydra
+from omegaconf import DictConfig
+import torch
+from remfx.models import RemFXChainInference
+import torchaudio
+
+
+@hydra.main(
+ version_base=None,
+ config_path="../cfg",
+ config_name="config.yaml",
+)
+def main(cfg: DictConfig):
+ print("Loading models...")
+ models = {}
+ for effect in cfg.ckpts:
+ model = hydra.utils.instantiate(cfg.ckpts[effect].model, _convert_="partial")
+ ckpt_path = cfg.ckpts[effect].ckpt_path
+ device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
+ state_dict = torch.load(ckpt_path, map_location=device)["state_dict"]
+ model.load_state_dict(state_dict)
+ model.to(device)
+ models[effect] = model
+
+ classifier = hydra.utils.instantiate(cfg.classifier, _convert_="partial")
+ ckpt_path = cfg.classifier_ckpt
+ device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
+ state_dict = torch.load(ckpt_path, map_location=device)["state_dict"]
+ classifier.load_state_dict(state_dict)
+ classifier.to(device)
+
+ inference_model = RemFXChainInference(
+ models,
+ sample_rate=cfg.sample_rate,
+ num_bins=cfg.num_bins,
+ effect_order=cfg.inference_effects_ordering,
+ classifier=classifier,
+ shuffle_effect_order=cfg.inference_effects_shuffle,
+ use_all_effect_models=cfg.inference_use_all_effect_models,
+ )
+
+ audio_file = cfg.audio_input
+ print("Loading", audio_file)
+ audio, sr = torchaudio.load(audio_file)
+ # Resample
+ audio = torchaudio.transforms.Resample(sr, cfg.sample_rate)(audio)
+ # Convert to mono
+ audio = audio.mean(0, keepdim=True)
+ # Add dimension for batch
+ audio = audio.unsqueeze(0)
+ audio = audio.to(device)
+ batch = [audio, audio, None, None]
+
+ _, y = inference_model(batch, 0, verbose=True)
+ y = y.cpu()
+ if "output_path" in cfg:
+ output_path = cfg.output_path
+ else:
+ output_path = "./output.wav"
+ print("Saving output to", output_path)
+ torchaudio.save(output_path, y[0], sample_rate=cfg.sample_rate)
+
+
+if __name__ == "__main__":
+ main()
diff --git a/scripts/test.py b/scripts/test.py
index 57cecd9b2d3f50270e5b8f4eaf310eb0e0e8afd8..bd24b66c6d0591fd2114c9478703f2a5823d8d0c 100644
--- a/scripts/test.py
+++ b/scripts/test.py
@@ -2,7 +2,6 @@ import pytorch_lightning as pl
import hydra
from omegaconf import DictConfig
import remfx.utils as utils
-from pytorch_lightning.utilities.model_summary import ModelSummary
import torch
log = utils.get_logger(__name__)
diff --git a/setup.py b/setup.py
index d7d841087c5c5c2d48054d020f46551cd48f0425..07effff61690ab42caab6914b08f380b0578175a 100644
--- a/setup.py
+++ b/setup.py
@@ -3,7 +3,7 @@ from setuptools import setup, find_packages
NAME = "remfx"
DESCRIPTION = "Universal audio effect removal"
-URL = ""
+URL = "https://github.com/mhrice/RemFx"
EMAIL = "m.rice@se22.qmul.ac.uk"
AUTHOR = "Matthew Rice"
REQUIRES_PYTHON = ">=3.8.0"
@@ -35,18 +35,14 @@ setup(
"scipy",
"numpy",
"torchvision",
- "pytorch-lightning",
+ "pytorch-lightning>=2.0.0",
"numba",
"wandb",
- "audio-diffusion-pytorch",
- "ema_pytorch",
"einops",
- "librosa",
"hydra-core",
"auraloss",
"pyloudnorm",
"pedalboard",
- "frechet_audio_distance",
"asteroid",
],
include_package_data=True,
diff --git a/shell_vars.sh b/shell_vars.sh
deleted file mode 100755
index 0294f944d22ece49be62768a6efca1bf54bc7104..0000000000000000000000000000000000000000
--- a/shell_vars.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-export DATASET_ROOT="./data/remfx-data"
-export WANDB_PROJECT="RemFX"
-export WANDB_ENTITY="mattricesound"
\ No newline at end of file
diff --git a/train_all.sh b/train_all.sh
deleted file mode 100755
index 49f9d3f8d972d935fc5f01c6cf5174aed4306489..0000000000000000000000000000000000000000
--- a/train_all.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-python scripts/train.py +exp=5-5_cls.yaml model=cls_wav2vec2 render_files=False logs_dir=/scratch/cjs-log
-python scripts/train.py +exp=5-5_cls.yaml model=cls_panns_44k render_files=False logs_dir=/scratch/cjs-log
-python scripts/train.py +exp=5-5_cls.yaml model=cls_panns_16k render_files=False logs_dir=/scratch/cjs-log
-python scripts/train.py +exp=5-5_cls.yaml model=cls_panns_pt render_files=False logs_dir=/scratch/cjs-log
-python scripts/train.py +exp=5-5_cls.yaml model=cls_vggish render_files=False logs_dir=/scratch/cjs-log
-python scripts/train.py +exp=5-5_cls.yaml model=cls_wav2clip render_files=False logs_dir=/scratch/cjs-log
\ No newline at end of file