Course
Cookiecutter
To follow up the course use our repository template for a new use case.
Afterwards you can download guidelines and the dataset for the course with make course. Instructions as follows:
pip install cookiecutter
git clone https://github.com/satellogic/iquaflow-use-case-cookiecutter
cookiecutter cookiecutter-iqf-use-case
cd project_name
make course
make build
make notebookshell
You can set a custom port to raise the notebook with the argument NB_PORT=xxxx just after make notebookshell.
If you are in a remote machine remember to tunnel the port so that you can access the browser from localhost
Quality Check (QC)
The Quality Check in iquaflow is done with the modules of SanityCheck and DSStatistics are the classes that will perform sanity check and statistics of image datasets and ground truth. They are stand alone classes, it is to say they can work by proving the path folder of images and ground truth, or they can work with DSWrapper class.
[2]:
import os
import json
import glob
%matplotlib inline
import matplotlib.pyplot as plt
import geopandas as gpd
from IPython.display import Image, display
Statistics and exploration
There are several statistics that can be calculated from the datasets, they can be estimated and summariezed in visualizations. The resulting calculated parameters can be exported as json and the plots as images. The default location is in a subfolder stats within the dataset. The module DsStats performs stats to image datasets and annotations. It can either work as standalone class or with DSWrapper class.
[3]:
from iquaflow.ds_stats import DsStats
from iquaflow.sanity import SanityCheck
A) COCO-like annotations
DsStats has a wide range of methods for calculating certain statistics.
See an example where the average area ratio covered for each annotation (with respect to the image area) is estimated.
[4]:
your_input_folder_here = 'course_data/ds_coco_dataset'
your_statistics_output_folder_here = 'course_data/ds_coco_dataset/statistics'
[5]:
dss = DsStats(
data_path = your_input_folder_here,
output_path = your_statistics_output_folder_here
)
stats = dss.perform_stats()
[6]:
stats[2]
[6]:
{'file': 'course_data/ds_coco_dataset/coco_annotations.json',
'obj': 'area_coverage_by_class',
'stats': {'background': 0.6045334161699303,
'motorcycle': 0.004809992759627526,
'person': 0.23025261017124524,
'bicycle': 0.0002473900134154041,
'knife': 0.0013741397125655364,
'cake': 0.016101207208806815,
'sink': 0.0022001441761363627,
'cow': 0.018467746130952385,
'umbrella': 0.0055450368235930745,
'mouse': 0.002326543232443495,
'keyboard': 0.010605611279902134,
'tv': 0.01246539763659623,
'cat': 0.0018014411251183712,
'bottle': 0.0017547060110396605,
'potted plant': 0.0011422376745975381,
'refrigerator': 0.009386716308593753,
'clock': 0.00027072511245265145,
'spoon': 0.0008101865412832762,
'bowl': 0.004220484571570562,
'orange': 0.000569680693655303,
'oven': 0.014942997928503787,
'handbag': 0.001225641098484849,
'wine glass': 0.0031224585506706426,
'dining table': 0.03399393860023547,
'cup': 0.00015331172008445655,
'backpack': 0.0006342725730688934,
'microwave': 0.017041966175426138}}
[7]:
for imfn in glob.glob(os.path.join(
your_statistics_output_folder_here,
'images/*.png'
)):
display(Image(filename=imfn))
B) Geojson annotations
[8]:
your_input_folder_here = "course_data/ds_geo_dataset"
your_sanitized_output_folder_here = "course_data/ds_geo_dataset" # overwrite it
[13]:
gdf = gpd.read_file("course_data/ds_geo_dataset/annots.geojson")
gdf.head()
[13]:
| image_filename | class_id | geometry | |
|---|---|---|---|
| 0 | sample_geotiff_734006_3725139.tif | 0.0 | POLYGON ((0.000 0.000, 0.000 3.000, 3.000 3.00... |
| 1 | None | 0.0 | POLYGON ((733736.803 3725049.000, 733736.610 3... |
| 2 | sample_geotiff_733601_3725139.tif | 0.0 | None |
| 3 | sample_geotiff_734006_3724779.tif | NaN | POLYGON ((734011.306 3724738.998, 734020.363 3... |
| 4 | sample_geotiff_734006_3725139.tif | 0.0 | POLYGON ((0.000 0.000, 0.000 3.000, 3.000 3.00... |
[18]:
gdf.geometry[0]
[18]:
Sanity check
The SanityCheck module performs sanity to image datasets and ground truth. It can either work as standalone class or with DSWrapper class. It will remove all corrupted samples following the logic in the argument flags. The new sanitized dataset is located in output_path attribute from the SanityCheck instance.
[19]:
sc = SanityCheck(
data_path = your_input_folder_here,
output_path = your_sanitized_output_folder_here
)
sc.autofix()
9 Problems found:
[{'err_file': 'course_data/ds_geo_dataset/annots.geojson', 'err_obj': 'images', 'err_sbi': 4, 'err_code': 'ERR_JSON_IMG_FNAME_DUP', 'err_txt': 'Duplicate file_name "sample_geotiff_734006_3725139.tif" (id:"4") already in list with id:0'}, {'err_file': 'course_data/ds_geo_dataset/annots.geojson', 'err_obj': 'images', 'err_sbi': 10, 'err_code': 'ERR_JSON_IMG_FNAME_DUP', 'err_txt': 'Duplicate file_name "sample_geotiff_733916_3724869.tif" (id:"10") already in list with id:9'}, {'err_file': 'course_data/ds_geo_dataset/annots.geojson', 'err_obj': 'images', 'err_sbi': 12, 'err_code': 'ERR_JSON_IMG_FNAME_DUP', 'err_txt': 'Duplicate file_name "sample_geotiff_734006_3725139.tif" (id:"12") already in list with id:0'}, {'err_file': 'course_data/ds_geo_dataset/annots.geojson', 'err_obj': 'images', 'err_sbi': 13, 'err_code': 'ERR_JSON_IMG_FNAME_DUP', 'err_txt': 'Duplicate file_name "sample_geotiff_734006_3725139.tif" (id:"13") already in list with id:0'}, {'err_file': 'course_data/ds_geo_dataset/annots.geojson', 'err_obj': 'images', 'err_sbi': 15, 'err_code': 'ERR_JSON_IMG_FNAME_DUP', 'err_txt': 'Duplicate file_name "sample_geotiff_733601_3725139.tif" (id:"15") already in list with id:2'}, {'err_file': 'course_data/ds_geo_dataset/annots.geojson', 'err_obj': 'images', 'err_sbi': 16, 'err_code': 'ERR_JSON_IMG_FNAME_DUP', 'err_txt': 'Duplicate file_name "sample_geotiff_733601_3725139.tif" (id:"16") already in list with id:2'}, {'err_file': 'course_data/ds_geo_dataset/annots.geojson', 'err_obj': 'images', 'err_sbi': 17, 'err_code': 'ERR_JSON_IMG_FNAME_DUP', 'err_txt': 'Duplicate file_name "sample_geotiff_734006_3724779.tif" (id:"17") already in list with id:3'}, {'err_file': 'course_data/ds_geo_dataset/annots.geojson', 'err_obj': 'images', 'err_sbi': 18, 'err_code': 'ERR_JSON_IMG_FNAME_DUP', 'err_txt': 'Duplicate file_name "sample_geotiff_734006_3724779.tif" (id:"18") already in list with id:3'}, {'err_file': 'course_data/ds_geo_dataset/annots.geojson', 'err_obj': 'images', 'err_sbi': 19, 'err_code': 'ERR_JSON_IMG_FNAME_DUP', 'err_txt': 'Duplicate file_name "sample_geotiff_734006_3724779.tif" (id:"19") already in list with id:3'}]
Sanitizing geojson like dataset
[21]:
gdf = gpd.read_file("course_data/ds_geo_dataset/annots.geojson")
gdf.head()
[21]:
| image_filename | class_id | geometry | |
|---|---|---|---|
| 0 | sample_geotiff_734006_3725139.tif | 0.0 | POLYGON ((0.000 0.000, 0.000 3.000, 3.000 3.00... |
| 1 | sample_geotiff_734006_3725139.tif | 0.0 | POLYGON ((0.000 0.000, 0.000 3.000, 3.000 3.00... |
| 2 | sample_geotiff_734006_3725004.tif | 0.0 | POLYGON ((734019.900 3724959.000, 734019.516 3... |
| 3 | sample_geotiff_733871_3725094.tif | 0.0 | POLYGON ((733892.678 3725094.000, 733892.969 3... |
| 4 | sample_geotiff_733646_3724914.tif | 0.0 | POLYGON ((733646.000 3724884.255, 733646.398 3... |
[22]:
gdf.geometry[0]
[22]:
[ ]:
for imfn in glob.glob(os.path.join(
your_statistics_output_folder_here,
'images/*.png'
)):
display(Image(filename=imfn))
Statistics
[23]:
dss = DsStats(
data_path = your_input_folder_here,
output_path = your_statistics_output_folder_here
)
stats = dss.perform_stats()
perform geojson stats here
[24]:
for imfn in glob.glob(os.path.join(
your_statistics_output_folder_here,
'images/*.png'
)):
display(Image(filename=imfn))
Interactive QC tools
[26]:
your_input_folder_from_geojson_dataset_here = "course_data/ds_geo_dataset"
your_output_interactive_html_here = "stats.html"
[27]:
df = gpd.read_file(os.path.join(your_input_folder_from_geojson_dataset_here, "annots.geojson"))
# Add more features to explore...
df['area'] = df.area
df['rrarea'] = [p.minimum_rotated_rectangle.area for p in df['geometry']]
df['length'] = [p.length for p in df['geometry']]
[ ]:
DsStats.notebook_annots_summary(
df,
export_html_filename=your_output_interactive_html_here,
fields_to_include=[
"image_filename",
"class_id",
"area"
]
)
Now download the interactive HTML and play with it
Modifiers
[4]:
import os
import cv2
%matplotlib inline
import matplotlib.pyplot as plt
IQF Modifier - JPEG compressor
Make a modified dataset that is a jpeg compressed from the {original_ds_img_dir}.
An example on how to use a modifier:
from iquaflow.datasets import DSModifier_jpg
jpg85 = DSModifier_jpg(params={"quality": 85})
jpg85.modify(data_input="test_datasets/ds_coco_dataset/images")
Custom modifier
Code your own custom modifier in the file custom_iqf.py.
You can add the below function (add noise to an image) in the file custom_iqf.py and call it in the method **_mod_img** of your modifier.
import numpy as np
def add_noise( img, mean=0, std=10 ):
"""This function adds noise to an img array"""
row,col,ch= img.shape
noise = np.random.normal(mean,std,(row,col,ch))
return img + noise.reshape(row,col,ch)
Reminder > A basic custom modifier is build like this:
from typing import Optional, Dict, Any
from iquaflow.datasets import DSModifier, DSModifier_dir
class MyCustomModifier(DSModifier_dir):
def __init__(
self,
ds_modifier: Optional[DSModifier] = None,
params: Dict[str, Any] = {"myparam": 65},
):
self.name = ????????
self.params: Dict[str, Any] = params
self.ds_modifier = ds_modifier
self.params.update({"modifier": "{}".format(self._get_name())})
def _mod_img(self, img: np.array) -> np.array:
# YOUR ARRAY MODIFICATION HERE
return rec_img
Experiment
[4]:
data_path_train = "./course_data/mnist_png/training"
data_path_validation = "./course_data/mnist_png/validation"
from iquaflow.datasets import DSWrapper
ds_train = DSWrapper(data_path=data_path_train)
ds_vali = DSWrapper(data_path=data_path_validation)
[5]:
from iquaflow.datasets import DSModifier, DSModifier_jpg
list_of_modifiers = [ DSModifier_jpg() ]
Review the train.py script
Adapt the user script *train.py* to make it compliant with IQF training script. To do so, check: 1. Input arguments (you might need to rename and add any missing) 2. Output format When the metrics are reported a *results.json* file should be written in the output path. To do so, you can add code at the end of the train.py script to write the json. ———— Reminder > The required input arguments to make it compliant are: trainds, valds, outputpath
Reminder > To write a json: |
```python import json |
with open(‘xxx/results.json’, ‘w’) as outfile: json.dump(data, outfile) ``` |
Reminder > the results.json should be in the following format:
{
'epochs':100,
'batch_sz':15,
'lr':0.001,
'P':[0.101,0.28,0.7,0.91,0.95,0.998],
'R':[0.1,0.28,0.33,0.6,0.95,0.978]
}
Define the TaskExecution
[6]:
from iquaflow.experiments.task_execution import PythonScriptTaskExecution
[7]:
task = PythonScriptTaskExecution(model_script_path='./train.py')
Populate arguments of the ExperimentSetup
Set n_epochs=1 for the extra_train_params. Its value will be a list of variations along parameter n_epochs. Set just 1 variation of n_epochs=1.
[8]:
from iquaflow.experiments import ExperimentSetup
experiment = ExperimentSetup(
experiment_name = 'myexperimentname',
task_instance = task,
ref_dsw_train = ds_train,
ref_dsw_val = ds_vali,
ds_modifiers_list = list_of_modifiers,
extra_train_params = {'n_epochs':[1]}
)
Execute the experiment
The output should be similar to:
****** IQF subprocess --stdout-- *********
Getting dataloaders...
Building model...
Start training...
*********************
epoch 0
train_loss 2.2098962545394896
vali_loss 1.718320608139038
trainloss 2.2098962545394896 0
trainloss 2.2098962545394896 0
valiloss 1.718320608139038 0
valiloss 1.718320608139038 0
****** IQF subprocess --stderr-- *********
100%|██████████| 10/10 [00:23<00:00, 2.32s/it]
100%|██████████| 1/1 [00:00<00:00, 10.74it/s]
[9]:
experiment.execute()
ExperimentInfo to collect results
In this example we pick up a pre-executed experiment under the name experiment_name. The experiment records were saved locally within mlruns folder
[1]:
from iquaflow.experiments import ExperimentInfo, ExperimentVisual
[2]:
experiment_name = 'iq-mnist-use-case'
[3]:
experiment_info = ExperimentInfo(experiment_name)
[4]:
experiment_info.runs
[4]:
{'training#noise_32': {'run_id': 'cf69cb978e4f46708cf0e304f5ca62b4',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.6813082695007324,
'trainloss': 2.2984459400177},
'artifact_path': '/iqf/mlruns/1/cf69cb978e4f46708cf0e304f5ca62b4/artifacts',
'output_pred_path': '/iqf/mlruns/1/cf69cb978e4f46708cf0e304f5ca62b4/artifacts/output.json'},
'training#noise_32_0': {'run_id': 'f570321023554e7bbba78099633d4b0d',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.2969794273376465,
'trainloss': 2.302493762969971},
'artifact_path': '/iqf/mlruns/1/f570321023554e7bbba78099633d4b0d/artifacts',
'output_pred_path': '/iqf/mlruns/1/f570321023554e7bbba78099633d4b0d/artifacts/output.json'},
'training#noise_32_1': {'run_id': '08113f0b02bd42e1a05ed80f42341494',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.312004804611206,
'trainloss': 2.301788902282715},
'artifact_path': '/iqf/mlruns/1/08113f0b02bd42e1a05ed80f42341494/artifacts',
'output_pred_path': '/iqf/mlruns/1/08113f0b02bd42e1a05ed80f42341494/artifacts/output.json'},
'training#noise_32_2': {'run_id': '9217f18e667a43e1bc8826a1c2abacb9',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.219451665878296,
'trainloss': 2.286424231529236},
'artifact_path': '/iqf/mlruns/1/9217f18e667a43e1bc8826a1c2abacb9/artifacts',
'output_pred_path': '/iqf/mlruns/1/9217f18e667a43e1bc8826a1c2abacb9/artifacts/output.json'},
'training#noise_32_3': {'run_id': '7d75ae709a404689b2aaff34eb288482',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.330610752105713,
'trainloss': 2.3012001514434814},
'artifact_path': '/iqf/mlruns/1/7d75ae709a404689b2aaff34eb288482/artifacts',
'output_pred_path': '/iqf/mlruns/1/7d75ae709a404689b2aaff34eb288482/artifacts/output.json'},
'training#noise_32_4': {'run_id': '4a56148d2af248abad11032efb02f7de',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.298588514328003,
'trainloss': 2.3020769596099853},
'artifact_path': '/iqf/mlruns/1/4a56148d2af248abad11032efb02f7de/artifacts',
'output_pred_path': '/iqf/mlruns/1/4a56148d2af248abad11032efb02f7de/artifacts/output.json'},
'training#noise_32_5': {'run_id': '0eb04778413741f0ac146b7e1eeb3424',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.7751691341400146,
'trainloss': 2.29639208316803},
'artifact_path': '/iqf/mlruns/1/0eb04778413741f0ac146b7e1eeb3424/artifacts',
'output_pred_path': '/iqf/mlruns/1/0eb04778413741f0ac146b7e1eeb3424/artifacts/output.json'},
'training#noise_32_6': {'run_id': 'be18c24d2b1f490d8023e93872e9a0fc',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.2799549102783203,
'trainloss': 2.301409673690796},
'artifact_path': '/iqf/mlruns/1/be18c24d2b1f490d8023e93872e9a0fc/artifacts',
'output_pred_path': '/iqf/mlruns/1/be18c24d2b1f490d8023e93872e9a0fc/artifacts/output.json'},
'training#noise_32_7': {'run_id': '547c8ddcd4ef4c169139719b4217b92e',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.3968284130096436,
'trainloss': 2.298329782485962},
'artifact_path': '/iqf/mlruns/1/547c8ddcd4ef4c169139719b4217b92e/artifacts',
'output_pred_path': '/iqf/mlruns/1/547c8ddcd4ef4c169139719b4217b92e/artifacts/output.json'},
'training#noise_32_8': {'run_id': '2278263f64bd407eb53ca1b66113168b',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.291447401046753,
'trainloss': 2.3105172157287597},
'artifact_path': '/iqf/mlruns/1/2278263f64bd407eb53ca1b66113168b/artifacts',
'output_pred_path': '/iqf/mlruns/1/2278263f64bd407eb53ca1b66113168b/artifacts/output.json'},
'training#noise_16': {'run_id': '640fea4d409c496cbf515219d57f9d7c',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.062349796295166,
'trainloss': 2.304751968383789},
'artifact_path': '/iqf/mlruns/1/640fea4d409c496cbf515219d57f9d7c/artifacts',
'output_pred_path': '/iqf/mlruns/1/640fea4d409c496cbf515219d57f9d7c/artifacts/output.json'},
'training#noise_16_0': {'run_id': '73c75c99d53e42a1b9d2937098547ac6',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.363163471221924,
'trainloss': 2.3006351470947264},
'artifact_path': '/iqf/mlruns/1/73c75c99d53e42a1b9d2937098547ac6/artifacts',
'output_pred_path': '/iqf/mlruns/1/73c75c99d53e42a1b9d2937098547ac6/artifacts/output.json'},
'training#noise_16_1': {'run_id': '38a013c96d6b405a9f2858d52a267a4c',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.332733154296875,
'trainloss': 2.301173949241638},
'artifact_path': '/iqf/mlruns/1/38a013c96d6b405a9f2858d52a267a4c/artifacts',
'output_pred_path': '/iqf/mlruns/1/38a013c96d6b405a9f2858d52a267a4c/artifacts/output.json'},
'training#noise_16_2': {'run_id': '3b11683b3e6e4f14ae513f0debab55ba',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.320456027984619,
'trainloss': 2.295995998382568},
'artifact_path': '/iqf/mlruns/1/3b11683b3e6e4f14ae513f0debab55ba/artifacts',
'output_pred_path': '/iqf/mlruns/1/3b11683b3e6e4f14ae513f0debab55ba/artifacts/output.json'},
'training#noise_16_3': {'run_id': '59106d4bca954b928ff18427c98da489',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.0501387119293213,
'trainloss': 2.2877418994903564},
'artifact_path': '/iqf/mlruns/1/59106d4bca954b928ff18427c98da489/artifacts',
'output_pred_path': '/iqf/mlruns/1/59106d4bca954b928ff18427c98da489/artifacts/output.json'},
'training#noise_16_4': {'run_id': '7223c86806bb4fd0b44c0d007db68366',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.273571014404297,
'trainloss': 2.302147459983826},
'artifact_path': '/iqf/mlruns/1/7223c86806bb4fd0b44c0d007db68366/artifacts',
'output_pred_path': '/iqf/mlruns/1/7223c86806bb4fd0b44c0d007db68366/artifacts/output.json'},
'training#noise_16_5': {'run_id': 'f4a9c11a4f9b4fd0a6ff0cd37e666e50',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.308288335800171,
'trainloss': 2.3021106481552125},
'artifact_path': '/iqf/mlruns/1/f4a9c11a4f9b4fd0a6ff0cd37e666e50/artifacts',
'output_pred_path': '/iqf/mlruns/1/f4a9c11a4f9b4fd0a6ff0cd37e666e50/artifacts/output.json'},
'training#noise_16_6': {'run_id': '98c548362f9b4560a79b1a412be59e56',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.2882184982299805,
'trainloss': 2.301657199859619},
'artifact_path': '/iqf/mlruns/1/98c548362f9b4560a79b1a412be59e56/artifacts',
'output_pred_path': '/iqf/mlruns/1/98c548362f9b4560a79b1a412be59e56/artifacts/output.json'},
'training#noise_16_7': {'run_id': '225a6e4aafa54797a025c46fb77aed5c',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 1.8400120735168457,
'trainloss': 2.300149440765381},
'artifact_path': '/iqf/mlruns/1/225a6e4aafa54797a025c46fb77aed5c/artifacts',
'output_pred_path': '/iqf/mlruns/1/225a6e4aafa54797a025c46fb77aed5c/artifacts/output.json'},
'training#noise_16_8': {'run_id': '342cc4f413bd4774a55f769c3037dbba',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.228040933609009,
'trainloss': 2.280415177345276},
'artifact_path': '/iqf/mlruns/1/342cc4f413bd4774a55f769c3037dbba/artifacts',
'output_pred_path': '/iqf/mlruns/1/342cc4f413bd4774a55f769c3037dbba/artifacts/output.json'},
'training#noise_8': {'run_id': '2a6c4c59228d4dfd86e255c4082ca9f2',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 1.9628280401229858,
'trainloss': 2.165922999382019},
'artifact_path': '/iqf/mlruns/1/2a6c4c59228d4dfd86e255c4082ca9f2/artifacts',
'output_pred_path': '/iqf/mlruns/1/2a6c4c59228d4dfd86e255c4082ca9f2/artifacts/output.json'},
'training#noise_8_0': {'run_id': '990043e595e64052a2d7a983e891068f',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.275881767272949,
'trainloss': 2.3007213354110716},
'artifact_path': '/iqf/mlruns/1/990043e595e64052a2d7a983e891068f/artifacts',
'output_pred_path': '/iqf/mlruns/1/990043e595e64052a2d7a983e891068f/artifacts/output.json'},
'training#noise_8_1': {'run_id': '01749731f4d646339cdca31870cc750f',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.24680757522583,
'trainloss': 2.301375675201416},
'artifact_path': '/iqf/mlruns/1/01749731f4d646339cdca31870cc750f/artifacts',
'output_pred_path': '/iqf/mlruns/1/01749731f4d646339cdca31870cc750f/artifacts/output.json'},
'training#noise_8_2': {'run_id': '77e5640ee6e04f4ebe5e32d58857f616',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.2852561473846436,
'trainloss': 2.293689227104187},
'artifact_path': '/iqf/mlruns/1/77e5640ee6e04f4ebe5e32d58857f616/artifacts',
'output_pred_path': '/iqf/mlruns/1/77e5640ee6e04f4ebe5e32d58857f616/artifacts/output.json'},
'training#noise_8_3': {'run_id': 'caefe6a4f1654fd8b67618239294e417',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.461151361465454,
'trainloss': 2.2715328216552733},
'artifact_path': '/iqf/mlruns/1/caefe6a4f1654fd8b67618239294e417/artifacts',
'output_pred_path': '/iqf/mlruns/1/caefe6a4f1654fd8b67618239294e417/artifacts/output.json'},
'training#noise_8_4': {'run_id': '646a23a1e7d9486e8cbe337c2a2d044f',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.266155481338501,
'trainloss': 2.2994936227798464},
'artifact_path': '/iqf/mlruns/1/646a23a1e7d9486e8cbe337c2a2d044f/artifacts',
'output_pred_path': '/iqf/mlruns/1/646a23a1e7d9486e8cbe337c2a2d044f/artifacts/output.json'},
'training#noise_8_5': {'run_id': '721b91ede7b74cc890a6aec8363a9816',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.3001182079315186,
'trainloss': 2.301773762702942},
'artifact_path': '/iqf/mlruns/1/721b91ede7b74cc890a6aec8363a9816/artifacts',
'output_pred_path': '/iqf/mlruns/1/721b91ede7b74cc890a6aec8363a9816/artifacts/output.json'},
'training#noise_8_6': {'run_id': 'e5b4edbf73184672bce1f09fa2dd3fd2',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.391616106033325,
'trainloss': 2.2940316915512087},
'artifact_path': '/iqf/mlruns/1/e5b4edbf73184672bce1f09fa2dd3fd2/artifacts',
'output_pred_path': '/iqf/mlruns/1/e5b4edbf73184672bce1f09fa2dd3fd2/artifacts/output.json'},
'training#noise_8_7': {'run_id': '277d57de405d495a87104a60ff741324',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.271760940551758,
'trainloss': 2.287723755836487},
'artifact_path': '/iqf/mlruns/1/277d57de405d495a87104a60ff741324/artifacts',
'output_pred_path': '/iqf/mlruns/1/277d57de405d495a87104a60ff741324/artifacts/output.json'},
'training#noise_8_8': {'run_id': '11e41fb1e30f417ebdae340d110364a1',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.1302764415740967,
'trainloss': 2.3028623819351197},
'artifact_path': '/iqf/mlruns/1/11e41fb1e30f417ebdae340d110364a1/artifacts',
'output_pred_path': '/iqf/mlruns/1/11e41fb1e30f417ebdae340d110364a1/artifacts/output.json'},
'training#noise_4': {'run_id': 'e083740312f6434c9bb7b9450bac39fe',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 2.631369113922119,
'trainloss': 2.1857864379882814},
'artifact_path': '/iqf/mlruns/1/e083740312f6434c9bb7b9450bac39fe/artifacts',
'output_pred_path': '/iqf/mlruns/1/e083740312f6434c9bb7b9450bac39fe/artifacts/output.json'},
'training#noise_4_0': {'run_id': '8bb4b0ee37044400aa352bf383ad3f67',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 2.430752754211426,
'trainloss': 2.2593146085739138},
'artifact_path': '/iqf/mlruns/1/8bb4b0ee37044400aa352bf383ad3f67/artifacts',
'output_pred_path': '/iqf/mlruns/1/8bb4b0ee37044400aa352bf383ad3f67/artifacts/output.json'},
'training#noise_4_1': {'run_id': '8087dcf2a1b64ff6b8182cf59236dddb',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 1.9226990938186646,
'trainloss': 2.1239922523498533},
'artifact_path': '/iqf/mlruns/1/8087dcf2a1b64ff6b8182cf59236dddb/artifacts',
'output_pred_path': '/iqf/mlruns/1/8087dcf2a1b64ff6b8182cf59236dddb/artifacts/output.json'},
'training#noise_4_2': {'run_id': '3e4eca925da64bae9a6accff4b856bdc',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 2.254438638687134,
'trainloss': 2.2989984512329102},
'artifact_path': '/iqf/mlruns/1/3e4eca925da64bae9a6accff4b856bdc/artifacts',
'output_pred_path': '/iqf/mlruns/1/3e4eca925da64bae9a6accff4b856bdc/artifacts/output.json'},
'training#noise_4_3': {'run_id': '50f8cdbf64e64595ae252459bfdc2e25',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 2.474466562271118,
'trainloss': 2.26266667842865},
'artifact_path': '/iqf/mlruns/1/50f8cdbf64e64595ae252459bfdc2e25/artifacts',
'output_pred_path': '/iqf/mlruns/1/50f8cdbf64e64595ae252459bfdc2e25/artifacts/output.json'},
'training#noise_4_4': {'run_id': '518962997cdd46c9a2e643bb084b37b5',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 1.9248939752578735,
'trainloss': 2.1833428382873534},
'artifact_path': '/iqf/mlruns/1/518962997cdd46c9a2e643bb084b37b5/artifacts',
'output_pred_path': '/iqf/mlruns/1/518962997cdd46c9a2e643bb084b37b5/artifacts/output.json'},
'training#noise_4_5': {'run_id': '3565ed67acbd4375a35570ff8bb28ce6',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 2.9645373821258545,
'trainloss': 2.1688048601150514},
'artifact_path': '/iqf/mlruns/1/3565ed67acbd4375a35570ff8bb28ce6/artifacts',
'output_pred_path': '/iqf/mlruns/1/3565ed67acbd4375a35570ff8bb28ce6/artifacts/output.json'},
'training#noise_4_6': {'run_id': '5cd8eb1662a24c62b08c6da59006e5c5',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 1.755547285079956,
'trainloss': 2.210547685623169},
'artifact_path': '/iqf/mlruns/1/5cd8eb1662a24c62b08c6da59006e5c5/artifacts',
'output_pred_path': '/iqf/mlruns/1/5cd8eb1662a24c62b08c6da59006e5c5/artifacts/output.json'},
'training#noise_4_7': {'run_id': '55aa3a891ff945adb488f0545b80f6d4',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 2.237285852432251,
'trainloss': 2.2578438997268675},
'artifact_path': '/iqf/mlruns/1/55aa3a891ff945adb488f0545b80f6d4/artifacts',
'output_pred_path': '/iqf/mlruns/1/55aa3a891ff945adb488f0545b80f6d4/artifacts/output.json'},
'training#noise_4_8': {'run_id': '9425c9c5018845c793aecdcef4c8c0a2',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 2.7062313556671143,
'trainloss': 2.1979835510253904},
'artifact_path': '/iqf/mlruns/1/9425c9c5018845c793aecdcef4c8c0a2/artifacts',
'output_pred_path': '/iqf/mlruns/1/9425c9c5018845c793aecdcef4c8c0a2/artifacts/output.json'},
'training#noise_2': {'run_id': '29d63d9dc2a84e4b8e246dff5ae74959',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.5241024494171143,
'trainloss': 1.990866732597351},
'artifact_path': '/iqf/mlruns/1/29d63d9dc2a84e4b8e246dff5ae74959/artifacts',
'output_pred_path': '/iqf/mlruns/1/29d63d9dc2a84e4b8e246dff5ae74959/artifacts/output.json'},
'training#noise_2_0': {'run_id': '65c8395483e7430991e00523276c2239',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.532268524169922,
'trainloss': 1.9905881047248841},
'artifact_path': '/iqf/mlruns/1/65c8395483e7430991e00523276c2239/artifacts',
'output_pred_path': '/iqf/mlruns/1/65c8395483e7430991e00523276c2239/artifacts/output.json'},
'training#noise_2_1': {'run_id': '24cb188c65664163982cfafbb2f6129c',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 1.9661037921905518,
'trainloss': 2.0079763770103454},
'artifact_path': '/iqf/mlruns/1/24cb188c65664163982cfafbb2f6129c/artifacts',
'output_pred_path': '/iqf/mlruns/1/24cb188c65664163982cfafbb2f6129c/artifacts/output.json'},
'training#noise_2_2': {'run_id': '6026cb364b8d4a5c9660db533bd8f111',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.5350794792175293,
'trainloss': 1.9970362901687622},
'artifact_path': '/iqf/mlruns/1/6026cb364b8d4a5c9660db533bd8f111/artifacts',
'output_pred_path': '/iqf/mlruns/1/6026cb364b8d4a5c9660db533bd8f111/artifacts/output.json'},
'training#noise_2_3': {'run_id': '47eb2578db9d42dc95bcc6be2ed49f3d',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.4626004695892334,
'trainloss': 2.0264066100120544},
'artifact_path': '/iqf/mlruns/1/47eb2578db9d42dc95bcc6be2ed49f3d/artifacts',
'output_pred_path': '/iqf/mlruns/1/47eb2578db9d42dc95bcc6be2ed49f3d/artifacts/output.json'},
'training#noise_2_4': {'run_id': '0a579ab04e5442bf9fb24903ba03f102',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.5268025398254395,
'trainloss': 1.9679187417030335},
'artifact_path': '/iqf/mlruns/1/0a579ab04e5442bf9fb24903ba03f102/artifacts',
'output_pred_path': '/iqf/mlruns/1/0a579ab04e5442bf9fb24903ba03f102/artifacts/output.json'},
'training#noise_2_5': {'run_id': '3874b8974a2d46e695d1991af3fd508b',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.6010611057281494,
'trainloss': 1.9765751242637635},
'artifact_path': '/iqf/mlruns/1/3874b8974a2d46e695d1991af3fd508b/artifacts',
'output_pred_path': '/iqf/mlruns/1/3874b8974a2d46e695d1991af3fd508b/artifacts/output.json'},
'training#noise_2_6': {'run_id': '719a610925b7447582bd740455845ebc',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.50665545463562,
'trainloss': 2.0411004781723023},
'artifact_path': '/iqf/mlruns/1/719a610925b7447582bd740455845ebc/artifacts',
'output_pred_path': '/iqf/mlruns/1/719a610925b7447582bd740455845ebc/artifacts/output.json'},
'training#noise_2_7': {'run_id': '949c7a12578245fbaffcf470242551e2',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.5609853267669678,
'trainloss': 2.0158525943756103},
'artifact_path': '/iqf/mlruns/1/949c7a12578245fbaffcf470242551e2/artifacts',
'output_pred_path': '/iqf/mlruns/1/949c7a12578245fbaffcf470242551e2/artifacts/output.json'},
'training#noise_2_8': {'run_id': '7c593dca995540339b363532a8e6b13e',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.5542054176330566,
'trainloss': 2.0148182272911073},
'artifact_path': '/iqf/mlruns/1/7c593dca995540339b363532a8e6b13e/artifacts',
'output_pred_path': '/iqf/mlruns/1/7c593dca995540339b363532a8e6b13e/artifacts/output.json'},
'training#noise_1': {'run_id': '72db95bc185341659c290e6b9e8c3bf8',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 2.374929428100586,
'trainloss': 1.754468607902527},
'artifact_path': '/iqf/mlruns/1/72db95bc185341659c290e6b9e8c3bf8/artifacts',
'output_pred_path': '/iqf/mlruns/1/72db95bc185341659c290e6b9e8c3bf8/artifacts/output.json'},
'training#noise_1_0': {'run_id': '830f806c99ce46468aa1b3a03f26ccd1',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 1.8631486892700195,
'trainloss': 1.739339244365692},
'artifact_path': '/iqf/mlruns/1/830f806c99ce46468aa1b3a03f26ccd1/artifacts',
'output_pred_path': '/iqf/mlruns/1/830f806c99ce46468aa1b3a03f26ccd1/artifacts/output.json'},
'training#noise_1_1': {'run_id': '07bd356ece3a4c26972e50d418358b0b',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 1.7350492477416992,
'trainloss': 1.768433678150177},
'artifact_path': '/iqf/mlruns/1/07bd356ece3a4c26972e50d418358b0b/artifacts',
'output_pred_path': '/iqf/mlruns/1/07bd356ece3a4c26972e50d418358b0b/artifacts/output.json'},
'training#noise_1_2': {'run_id': '4b9ab4e7aee841128e28fb1b9b3cd5c5',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 2.127910852432251,
'trainloss': 1.7612999439239503},
'artifact_path': '/iqf/mlruns/1/4b9ab4e7aee841128e28fb1b9b3cd5c5/artifacts',
'output_pred_path': '/iqf/mlruns/1/4b9ab4e7aee841128e28fb1b9b3cd5c5/artifacts/output.json'},
'training#noise_1_3': {'run_id': '8632e9afb84b4040b6ec998c23645b5b',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 2.215237617492676,
'trainloss': 1.7462112069129945},
'artifact_path': '/iqf/mlruns/1/8632e9afb84b4040b6ec998c23645b5b/artifacts',
'output_pred_path': '/iqf/mlruns/1/8632e9afb84b4040b6ec998c23645b5b/artifacts/output.json'},
'training#noise_1_4': {'run_id': '29a0ff66aba04db7915c608b4ac01278',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 2.276259183883667,
'trainloss': 1.7524596810340882},
'artifact_path': '/iqf/mlruns/1/29a0ff66aba04db7915c608b4ac01278/artifacts',
'output_pred_path': '/iqf/mlruns/1/29a0ff66aba04db7915c608b4ac01278/artifacts/output.json'},
'training#noise_1_5': {'run_id': 'cb3d85cf9f904d4c9869a61004f07b93',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 2.3947157859802246,
'trainloss': 1.773430585861206},
'artifact_path': '/iqf/mlruns/1/cb3d85cf9f904d4c9869a61004f07b93/artifacts',
'output_pred_path': '/iqf/mlruns/1/cb3d85cf9f904d4c9869a61004f07b93/artifacts/output.json'},
'training#noise_1_6': {'run_id': 'ffca754a878d4aa59be4b87d84f2ca96',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 1.7509796619415283,
'trainloss': 1.756360399723053},
'artifact_path': '/iqf/mlruns/1/ffca754a878d4aa59be4b87d84f2ca96/artifacts',
'output_pred_path': '/iqf/mlruns/1/ffca754a878d4aa59be4b87d84f2ca96/artifacts/output.json'},
'training#noise_1_7': {'run_id': '6d874382ab324a1b8bcc769cab18ccab',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 2.116266965866089,
'trainloss': 1.749704933166504},
'artifact_path': '/iqf/mlruns/1/6d874382ab324a1b8bcc769cab18ccab/artifacts',
'output_pred_path': '/iqf/mlruns/1/6d874382ab324a1b8bcc769cab18ccab/artifacts/output.json'},
'training#noise_1_8': {'run_id': '4bd64d494b88487db7d9536142e8aeaa',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 1.8145843744277954,
'trainloss': 1.7498734951019288},
'artifact_path': '/iqf/mlruns/1/4bd64d494b88487db7d9536142e8aeaa/artifacts',
'output_pred_path': '/iqf/mlruns/1/4bd64d494b88487db7d9536142e8aeaa/artifacts/output.json'},
'training#noise_0.5': {'run_id': '69c024427ef5450085a89c0249745fc1',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.594852089881897,
'trainloss': 1.6416661739349365},
'artifact_path': '/iqf/mlruns/1/69c024427ef5450085a89c0249745fc1/artifacts',
'output_pred_path': '/iqf/mlruns/1/69c024427ef5450085a89c0249745fc1/artifacts/output.json'},
'training#noise_0.5_0': {'run_id': '4810f8532e6f4302bf723a0bb7c7f38a',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.7107542753219604,
'trainloss': 1.62411869764328},
'artifact_path': '/iqf/mlruns/1/4810f8532e6f4302bf723a0bb7c7f38a/artifacts',
'output_pred_path': '/iqf/mlruns/1/4810f8532e6f4302bf723a0bb7c7f38a/artifacts/output.json'},
'training#noise_0.5_1': {'run_id': '376edb348caa4a139983776aca5781a3',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.811467170715332,
'trainloss': 1.63113374710083},
'artifact_path': '/iqf/mlruns/1/376edb348caa4a139983776aca5781a3/artifacts',
'output_pred_path': '/iqf/mlruns/1/376edb348caa4a139983776aca5781a3/artifacts/output.json'},
'training#noise_0.5_2': {'run_id': 'b614a1842b1c476abfe8df8c687280f9',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 2.216094732284546,
'trainloss': 1.7549191474914552},
'artifact_path': '/iqf/mlruns/1/b614a1842b1c476abfe8df8c687280f9/artifacts',
'output_pred_path': '/iqf/mlruns/1/b614a1842b1c476abfe8df8c687280f9/artifacts/output.json'},
'training#noise_0.5_3': {'run_id': 'ef1e13155d864172bbc491ef68e7c01b',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.5594003200531006,
'trainloss': 1.6489398717880248},
'artifact_path': '/iqf/mlruns/1/ef1e13155d864172bbc491ef68e7c01b/artifacts',
'output_pred_path': '/iqf/mlruns/1/ef1e13155d864172bbc491ef68e7c01b/artifacts/output.json'},
'training#noise_0.5_4': {'run_id': '4759d563167c4e6bb896ce85f080431c',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.5737414360046387,
'trainloss': 1.6205166697502136},
'artifact_path': '/iqf/mlruns/1/4759d563167c4e6bb896ce85f080431c/artifacts',
'output_pred_path': '/iqf/mlruns/1/4759d563167c4e6bb896ce85f080431c/artifacts/output.json'},
'training#noise_0.5_5': {'run_id': '1e2ecb2dde514374a56a2c7ee88b80dc',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.6378087997436523,
'trainloss': 1.6432660818099976},
'artifact_path': '/iqf/mlruns/1/1e2ecb2dde514374a56a2c7ee88b80dc/artifacts',
'output_pred_path': '/iqf/mlruns/1/1e2ecb2dde514374a56a2c7ee88b80dc/artifacts/output.json'},
'training#noise_0.5_6': {'run_id': '840797116e0d4ec6bd21e200ede34d50',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.583939552307129,
'trainloss': 1.6177527189254761},
'artifact_path': '/iqf/mlruns/1/840797116e0d4ec6bd21e200ede34d50/artifacts',
'output_pred_path': '/iqf/mlruns/1/840797116e0d4ec6bd21e200ede34d50/artifacts/output.json'},
'training#noise_0.5_7': {'run_id': '7ee83940d74f4306b216dbef6eee829b',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.6323238611221313,
'trainloss': 1.629381251335144},
'artifact_path': '/iqf/mlruns/1/7ee83940d74f4306b216dbef6eee829b/artifacts',
'output_pred_path': '/iqf/mlruns/1/7ee83940d74f4306b216dbef6eee829b/artifacts/output.json'},
'training#noise_0.5_8': {'run_id': '8270a6d489c44b498f0e81b6c7e98a89',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.8617407083511353,
'trainloss': 1.6316882729530335},
'artifact_path': '/iqf/mlruns/1/8270a6d489c44b498f0e81b6c7e98a89/artifacts',
'output_pred_path': '/iqf/mlruns/1/8270a6d489c44b498f0e81b6c7e98a89/artifacts/output.json'},
'training#noise_0': {'run_id': 'e6080aa7cb4b493ab1052c30027c06b0',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.5340968370437622,
'trainloss': 1.604617166519165},
'artifact_path': '/iqf/mlruns/1/e6080aa7cb4b493ab1052c30027c06b0/artifacts',
'output_pred_path': '/iqf/mlruns/1/e6080aa7cb4b493ab1052c30027c06b0/artifacts/output.json'},
'training#noise_0_0': {'run_id': 'f9f3e80871ff4b839ac51e0a902bfc1a',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.5758434534072876,
'trainloss': 1.602673590183258},
'artifact_path': '/iqf/mlruns/1/f9f3e80871ff4b839ac51e0a902bfc1a/artifacts',
'output_pred_path': '/iqf/mlruns/1/f9f3e80871ff4b839ac51e0a902bfc1a/artifacts/output.json'},
'training#noise_0_1': {'run_id': '48c5f30184f34436b71fcf80aee5aa76',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.558794379234314,
'trainloss': 1.6037792325019837},
'artifact_path': '/iqf/mlruns/1/48c5f30184f34436b71fcf80aee5aa76/artifacts',
'output_pred_path': '/iqf/mlruns/1/48c5f30184f34436b71fcf80aee5aa76/artifacts/output.json'},
'training#noise_0_2': {'run_id': '1c867de2db864685b9ec321eccf6bdf1',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.5146429538726807,
'trainloss': 1.6137815594673157},
'artifact_path': '/iqf/mlruns/1/1c867de2db864685b9ec321eccf6bdf1/artifacts',
'output_pred_path': '/iqf/mlruns/1/1c867de2db864685b9ec321eccf6bdf1/artifacts/output.json'},
'training#noise_0_3': {'run_id': '6ebaca7f116e4e68bf271684b6700370',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.4778436422348022,
'trainloss': 1.6073649287223817},
'artifact_path': '/iqf/mlruns/1/6ebaca7f116e4e68bf271684b6700370/artifacts',
'output_pred_path': '/iqf/mlruns/1/6ebaca7f116e4e68bf271684b6700370/artifacts/output.json'},
'training#noise_0_4': {'run_id': '98dfbc466bb74be6a5967d01082df994',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.5100001096725464,
'trainloss': 1.5999452352523804},
'artifact_path': '/iqf/mlruns/1/98dfbc466bb74be6a5967d01082df994/artifacts',
'output_pred_path': '/iqf/mlruns/1/98dfbc466bb74be6a5967d01082df994/artifacts/output.json'},
'training#noise_0_5': {'run_id': 'c1d39f58085243edabb6fdf40767e749',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.489477515220642,
'trainloss': 1.6064382791519165},
'artifact_path': '/iqf/mlruns/1/c1d39f58085243edabb6fdf40767e749/artifacts',
'output_pred_path': '/iqf/mlruns/1/c1d39f58085243edabb6fdf40767e749/artifacts/output.json'},
'training#noise_0_6': {'run_id': '551d7398e24747bcad2ab57d6ac1e06e',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.5630683898925781,
'trainloss': 1.6009732007980346},
'artifact_path': '/iqf/mlruns/1/551d7398e24747bcad2ab57d6ac1e06e/artifacts',
'output_pred_path': '/iqf/mlruns/1/551d7398e24747bcad2ab57d6ac1e06e/artifacts/output.json'},
'training#noise_0_7': {'run_id': '99c75565045a4c0cbc3f625c2d0b36f0',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.4958316087722778,
'trainloss': 1.6730859518051147},
'artifact_path': '/iqf/mlruns/1/99c75565045a4c0cbc3f625c2d0b36f0/artifacts',
'output_pred_path': '/iqf/mlruns/1/99c75565045a4c0cbc3f625c2d0b36f0/artifacts/output.json'},
'training#noise_0_8': {'run_id': 'e85c8662864b43db98118e221bcb31c4',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.47462797164917,
'trainloss': 1.6073201656341554},
'artifact_path': '/iqf/mlruns/1/e85c8662864b43db98118e221bcb31c4/artifacts',
'output_pred_path': '/iqf/mlruns/1/e85c8662864b43db98118e221bcb31c4/artifacts/output.json'},
'training#noise_0_9': {'run_id': '42fb80b8dcc14d77b4cfdacfa69b4c3b',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'ds_name': 'training#noise_0',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {},
'artifact_path': '/iqf/mlruns/1/42fb80b8dcc14d77b4cfdacfa69b4c3b/artifacts',
'output_pred_path': '/iqf/mlruns/1/42fb80b8dcc14d77b4cfdacfa69b4c3b/artifacts/output.json'},
'training#noise_0_10': {'run_id': '20f2807b74c54c48acaa65db6e6dc0f6',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.4833813905715942,
'trainloss': 1.604529356956482},
'artifact_path': '/iqf/mlruns/1/20f2807b74c54c48acaa65db6e6dc0f6/artifacts',
'output_pred_path': '/iqf/mlruns/1/20f2807b74c54c48acaa65db6e6dc0f6/artifacts/output.json'},
'training#noise_32_9': {'run_id': '735ec6a116584664a2a3e056d90a139a',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'mod': 'noise_32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 2.3890695571899414,
'trainloss': 2.267361855506897},
'artifact_path': '/iqf/mlruns/1/735ec6a116584664a2a3e056d90a139a/artifacts',
'output_pred_path': '/iqf/mlruns/1/735ec6a116584664a2a3e056d90a139a/artifacts/output.json'},
'training#noise_16_9': {'run_id': '374224799420443686464de61072a41c',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'mod': 'noise_16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.3367481231689453,
'trainloss': 2.2836711168289185},
'artifact_path': '/iqf/mlruns/1/374224799420443686464de61072a41c/artifacts',
'output_pred_path': '/iqf/mlruns/1/374224799420443686464de61072a41c/artifacts/output.json'},
'training#noise_8_9': {'run_id': 'add14026e39b4ecd9e103d0844384504',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'mod': 'noise_8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 2.1523826122283936,
'trainloss': 2.274799108505249},
'artifact_path': '/iqf/mlruns/1/add14026e39b4ecd9e103d0844384504/artifacts',
'output_pred_path': '/iqf/mlruns/1/add14026e39b4ecd9e103d0844384504/artifacts/output.json'},
'training#noise_4_9': {'run_id': '07ed768c1d5b45ab86375a50fedfe700',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'mod': 'noise_4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 2.092426061630249,
'trainloss': 2.18160138130188},
'artifact_path': '/iqf/mlruns/1/07ed768c1d5b45ab86375a50fedfe700/artifacts',
'output_pred_path': '/iqf/mlruns/1/07ed768c1d5b45ab86375a50fedfe700/artifacts/output.json'},
'training#noise_2_9': {'run_id': '82ac44422a964135a37eb98100c92502',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'mod': 'noise_2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 2.6259286403656006,
'trainloss': 2.008177697658539},
'artifact_path': '/iqf/mlruns/1/82ac44422a964135a37eb98100c92502/artifacts',
'output_pred_path': '/iqf/mlruns/1/82ac44422a964135a37eb98100c92502/artifacts/output.json'},
'training#noise_1_9': {'run_id': 'd4157be3af97445db38f087767009b73',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'mod': 'noise_1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 2.1755669116973877,
'trainloss': 1.7640108704566955},
'artifact_path': '/iqf/mlruns/1/d4157be3af97445db38f087767009b73/artifacts',
'output_pred_path': '/iqf/mlruns/1/d4157be3af97445db38f087767009b73/artifacts/output.json'},
'training#noise_0.5_9': {'run_id': 'bc07e22498b34a638129ef5e5e0a0acc',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'mod': 'noise_0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.4996483325958252,
'trainloss': 1.6287864208221436},
'artifact_path': '/iqf/mlruns/1/bc07e22498b34a638129ef5e5e0a0acc/artifacts',
'output_pred_path': '/iqf/mlruns/1/bc07e22498b34a638129ef5e5e0a0acc/artifacts/output.json'},
'training#noise_0_11': {'run_id': 'deb18f7840024be98ada2b891664fbf2',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'mod': 'noise_0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.499160885810852,
'trainloss': 1.606120502948761},
'artifact_path': '/iqf/mlruns/1/deb18f7840024be98ada2b891664fbf2/artifacts',
'output_pred_path': '/iqf/mlruns/1/deb18f7840024be98ada2b891664fbf2/artifacts/output.json'},
'training#noise_32_10': {'run_id': '9a342f6c3f394f44939bf866a7ba9bff',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '32',
'sigma': '32',
'modifier_val': 'noise_32',
'modifier': 'noise_32',
'batch_sz': '640',
'ds_name': 'training#noise_32',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_32'},
'metrics_dict': {'valiloss': 3.0110974311828613,
'trainloss': 2.1596466064453126},
'artifact_path': '/iqf/mlruns/1/9a342f6c3f394f44939bf866a7ba9bff/artifacts',
'output_pred_path': '/iqf/mlruns/1/9a342f6c3f394f44939bf866a7ba9bff/artifacts/output.json'},
'training#noise_16_10': {'run_id': 'f42e9c825acd4f59ae5e4b64564f9512',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '16',
'sigma': '16',
'modifier_val': 'noise_16',
'modifier': 'noise_16',
'batch_sz': '640',
'ds_name': 'training#noise_16',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_16'},
'metrics_dict': {'valiloss': 2.9277350902557373,
'trainloss': 2.0579724311828613},
'artifact_path': '/iqf/mlruns/1/f42e9c825acd4f59ae5e4b64564f9512/artifacts',
'output_pred_path': '/iqf/mlruns/1/f42e9c825acd4f59ae5e4b64564f9512/artifacts/output.json'},
'training#noise_8_10': {'run_id': '15347bb9318749769bad9fc5233a249e',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '8',
'sigma': '8',
'modifier_val': 'noise_8',
'modifier': 'noise_8',
'batch_sz': '640',
'ds_name': 'training#noise_8',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_8'},
'metrics_dict': {'valiloss': 1.9226993322372437,
'trainloss': 2.108342981338501},
'artifact_path': '/iqf/mlruns/1/15347bb9318749769bad9fc5233a249e/artifacts',
'output_pred_path': '/iqf/mlruns/1/15347bb9318749769bad9fc5233a249e/artifacts/output.json'},
'training#noise_4_10': {'run_id': '7abfaec6637e499aba6a768de3c83588',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '4',
'sigma': '4',
'modifier_val': 'noise_4',
'modifier': 'noise_4',
'batch_sz': '640',
'ds_name': 'training#noise_4',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_4'},
'metrics_dict': {'valiloss': 2.011084794998169,
'trainloss': 2.007692980766296},
'artifact_path': '/iqf/mlruns/1/7abfaec6637e499aba6a768de3c83588/artifacts',
'output_pred_path': '/iqf/mlruns/1/7abfaec6637e499aba6a768de3c83588/artifacts/output.json'},
'training#noise_2_10': {'run_id': '6197cd5fdb1849aeacaad028c1b17c87',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '2',
'sigma': '2',
'modifier_val': 'noise_2',
'modifier': 'noise_2',
'batch_sz': '640',
'ds_name': 'training#noise_2',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_2'},
'metrics_dict': {'valiloss': 1.8999247550964355,
'trainloss': 1.9831594705581665},
'artifact_path': '/iqf/mlruns/1/6197cd5fdb1849aeacaad028c1b17c87/artifacts',
'output_pred_path': '/iqf/mlruns/1/6197cd5fdb1849aeacaad028c1b17c87/artifacts/output.json'},
'training#noise_1_10': {'run_id': '96239266ab4547969e85189d0a10f603',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '1',
'sigma': '1',
'modifier_val': 'noise_1',
'modifier': 'noise_1',
'batch_sz': '640',
'ds_name': 'training#noise_1',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_1'},
'metrics_dict': {'valiloss': 1.7325690984725952,
'trainloss': 1.7233879566192627},
'artifact_path': '/iqf/mlruns/1/96239266ab4547969e85189d0a10f603/artifacts',
'output_pred_path': '/iqf/mlruns/1/96239266ab4547969e85189d0a10f603/artifacts/output.json'},
'training#noise_0.5_10': {'run_id': '28cf88b861864f109fcb1f76e7fd8d9c',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0.5',
'sigma': '0.5',
'modifier_val': 'noise_0.5',
'modifier': 'noise_0.5',
'batch_sz': '640',
'ds_name': 'training#noise_0.5',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0.5'},
'metrics_dict': {'valiloss': 1.9557956457138062,
'trainloss': 1.6291387796401977},
'artifact_path': '/iqf/mlruns/1/28cf88b861864f109fcb1f76e7fd8d9c/artifacts',
'output_pred_path': '/iqf/mlruns/1/28cf88b861864f109fcb1f76e7fd8d9c/artifacts/output.json'},
'training#noise_0_12': {'run_id': 'efdc13a85fc74abb97784039f484345d',
'run_status': 'FINISHED',
'params_dict': {'sigma_val': '0',
'sigma': '0',
'modifier_val': 'noise_0',
'modifier': 'noise_0',
'batch_sz': '640',
'ds_name': 'training#noise_0',
'n_epochs': '10',
'learning_rate': '0.01',
'ds_name_val': 'validation#noise_0'},
'metrics_dict': {'valiloss': 1.4793601036071777,
'trainloss': 1.6698022365570069},
'artifact_path': '/iqf/mlruns/1/efdc13a85fc74abb97784039f484345d/artifacts',
'output_pred_path': '/iqf/mlruns/1/efdc13a85fc74abb97784039f484345d/artifacts/output.json'}}
[5]:
df = experiment_info.get_df(
ds_params=["modifier"],
metrics=["valiloss",'trainloss'],
dropna = True,
fields_to_float_lst = ["valiloss",'trainloss']
)
[6]:
df
[6]:
| name | ds_modifier | valiloss | trainloss | |
|---|---|---|---|---|
| 0 | training#noise_32 | noise_32 | 2.681308 | 2.298446 |
| 1 | training#noise_32_0 | noise_32 | 2.296979 | 2.302494 |
| 2 | training#noise_32_1 | noise_32 | 2.312005 | 2.301789 |
| 3 | training#noise_32_2 | noise_32 | 2.219452 | 2.286424 |
| 4 | training#noise_32_3 | noise_32 | 2.330611 | 2.301200 |
| ... | ... | ... | ... | ... |
| 93 | training#noise_4_10 | noise_4 | 2.011085 | 2.007693 |
| 94 | training#noise_2_10 | noise_2 | 1.899925 | 1.983159 |
| 95 | training#noise_1_10 | noise_1 | 1.732569 | 1.723388 |
| 96 | training#noise_0.5_10 | noise_0.5 | 1.955796 | 1.629139 |
| 97 | training#noise_0_12 | noise_0 | 1.479360 | 1.669802 |
97 rows × 4 columns
[7]:
ev = ExperimentVisual(df)
[8]:
ev.visualize(
plot_kind='scatter',
xvar='valiloss',
yvar='trainloss',
legend_var='ds_modifier',
title='train & val loss by noise'
)
Visualizations
This shows some basic visualizations offered by iquaflow.
They use dataframes as inputs, these dataframes can be generated by the get_df method from the ExperimentInfo
[9]:
from examples import *
[10]:
df1 = sample_df("agg1")
ev = ExperimentVisual(df1)
[11]:
ev.visualize(
plot_kind='lineplot',
xvar='ds_modifier',
yvar='val_rmse',
legend_var='min_size',
title='Line Plot Example'
)
[12]:
ev.visualize(
plot_kind='bars',
xvar='ds_modifier',
yvar='val_rmse',
legend_var='min_size',
title='Bars Plot Example'
)
[13]:
ev.visualize(
plot_kind='scatter',
xvar='ds_modifier',
yvar='val_rmse',
legend_var='min_size',
title='Scatter Plot Example'
)
[14]:
df2 = sample_df("agg2")
ev2 = ExperimentVisual(df2)
[15]:
ev2.visualize(
plot_kind='lineplot',
xvar='ds_modifier',
yvar='val_rmse',
legend_var='min_size',
title='Line Plot Example',
plot_mean_std=True,
)
[16]:
df3 = sample_df("ROC")
ev3 = ExperimentVisual(df3)
[17]:
ev3.visualize(
xvar="Precision",
yvar="Recall",
legend_var="ds_modifier",
title="ROC"
)