Commit 9bf12735 authored by Ines Filipa Fernandes Ramos's avatar Ines Filipa Fernandes Ramos
Browse files

commit

parent 51206602
%% Cell type:markdown id: tags:
 
# Demo Notebook with simulated RGCs data
 
%% Cell type:code id: tags:
 
``` python
%matplotlib inline
%load_ext autoreload
%autoreload 2
%load_ext memory_profiler
```
 
%% Cell type:code id: tags:
 
``` python
import torch
import numpy as np
import matplotlib.pyplot as plt
from collections import OrderedDict
import neuralpredictors as neur
from neuralpredictors.data.datasets import StaticImageSet, FileTreeDataset
import MEI
import matplotlib as mpl
```
 
%% Output
The autoreload extension is already loaded. To reload it, use:
%reload_ext autoreload
%% Cell type:markdown id: tags:
 
# Build the dataloaders
 
%% Cell type:markdown id: tags:
 
The dataloaders object is a dictionary of 3 dictionaries: train, validation and test. Each of them contains the respective data from all datasets combined that were specified in paths. Here we only provide one dataset. While the responses are normalized, we exclude the input images from normalization. The following config was used in the paper (all arguments not in the config have the default value of the function).
 
%% Cell type:code id: tags:
 
``` python
#Use dataloaders with generated RGC data
from lurz2020.datasets.mouse_loaders import static_loaders
 
paths = ['D://inception_loop/RGC_sim/data/static27012021']
 
dataset_config = {'paths': paths,
'batch_size': 64,
'seed': 1,
'cuda': True,
'normalize': True,
'exclude': "images"}
 
dataloaders_RGCs = static_loaders(**dataset_config)
dat = FileTreeDataset('D://inception_loop/RGC_sim/data/static27012021', "images", "responses")
```
 
%% Cell type:code id: tags:
 
``` python
x= np.load("D://inception_loop/RGC_sim/data/static20022021/meta/trials/scan_idx.npy")
x
```
 
%% Output
 
array([14, 14, 14, ..., 14, 14, 14])
 
%% Cell type:markdown id: tags:
 
### Look at the data
 
%% Cell type:code id: tags:
 
``` python
tier = 'train'
dataset_name = '27012021'
 
images, responses = [], []
for x, y in dataloaders_RGCs[tier][dataset_name]:
images.append(x.squeeze().cpu().data.numpy())
responses.append(y.squeeze().cpu().data.numpy())
 
images = np.vstack(images)
responses = np.vstack(responses)
 
print('The \"{}\" set of dataset \"{}\" contains the responses of {} RGC neurons to {} images'.format(tier, dataset_name, responses.shape[1], responses.shape[0]))
```
 
%% Output
 
The "train" set of dataset "27012021" contains the responses of 2304 RGC neurons to 4472 images
 
%% Cell type:code id: tags:
 
``` python
# show some example images and the neural responses
n_images = 5
max_response = responses[:n_images].max()
 
for i in range(n_images):
fig, axs = plt.subplots(1, 2, figsize=(15,4))
axs[0].imshow(images[i])
axs[1].plot(responses[i])
axs[1].set_xlabel('neurons')
axs[1].set_ylabel('responses')
axs[1].set_ylim([0, max_response])
plt.show()
```
 
%% Output
 
 
 
 
 
 
%% Cell type:markdown id: tags:
 
# Build the model, transfer core, train and evaluate performance - 4 instances
 
%% Cell type:markdown id: tags:
 
Get 4 instances of the model for MEI generation:
 
%% Cell type:code id: tags:
 
``` python
%%time
%%memit
from lurz2020.models.models import se2d_fullgaussian2d
from lurz2020.training.trainers import standard_trainer as trainer
from lurz2020.utility.measures import get_correlations, get_fraction_oracles
 
#Generate 4 instances of the same model with different seeds, for MEI generation
n_seeds = 4
 
models = []
train_correlation_models = []
validation_correlation_models = []
test_correlation_models = []
fraction_oracle = []
 
#Model config
model_config = {'init_mu_range': 0.55,
'init_sigma': 0.4,
'input_kern': 15,
'hidden_kern': 13,
'gamma_input': 1.0,
'grid_mean_predictor': None,
'gamma_readout': 2.439}
 
 
#Change trainer config to not track and print the training progress
trainer_config = {'track_training': False,
'detach_core': True}
 
for i in range(n_seeds):
 
model = se2d_fullgaussian2d(**model_config, dataloaders=dataloaders_RGCs, seed=i)
#Load the weights of the transfer core
transfer_model = torch.load('D://inception_loop/original_code/Lurz_2020_code/notebooks/models/transfer_model.pth.tar')
model.load_state_dict(transfer_model, strict=False)
#Run training
score, output, model_state = trainer(model=model, dataloaders=dataloaders_RGCs, seed=1, **trainer_config)
#Get performance of model
train_correlation_models.append(get_correlations(model, dataloaders_RGCs["train"], device='cuda', as_dict=False, per_neuron=False))
validation_correlation_models.append(get_correlations(model, dataloaders_RGCs["validation"], device='cuda', as_dict=False, per_neuron=False))
test_correlation_models.append(get_correlations(model, dataloaders_RGCs["test"], device='cuda', as_dict=False, per_neuron=False))
 
oracle_dataloader = static_loaders(**dataset_config, return_test_sampler=True, tier='test')
fraction_oracle.append(get_fraction_oracles(model=model, dataloaders=oracle_dataloader, device='cuda')[0])
 
print('-----------------------------------------')
print(f'Model instance #{i}')
print('Correlation (train set): {0:.3f}'.format(train_correlation_models[i]))
print('Correlation (validation set): {0:.3f}'.format(validation_correlation_models[i]))
print('Correlation (test set): {0:.3f}'.format(test_correlation_models[i]))
print('-----------------------------------------')
print('Fraction oracle (test set): {0:.3f}'.format(fraction_oracle[i]))
 
models.append(model)
#Save model state for loading later
torch.save(model_state, 'D://inception_loop/RGC_sim/models/model_'+str(i)+'.pth')
```
 
%% Output
 
Epoch 1: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.60it/s]
 
[001|00/05] ---> 0.23407305777072906
 
Epoch 2: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.78it/s]
 
[002|00/05] ---> 0.29668185114860535
 
Epoch 3: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.23it/s]
 
[003|00/05] ---> 0.3375687599182129
 
Epoch 4: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 25.36it/s]
 
[004|00/05] ---> 0.3720092177391052
 
Epoch 5: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 26.04it/s]
 
[005|00/05] ---> 0.40209096670150757
 
Epoch 6: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.78it/s]
 
[006|00/05] ---> 0.4222107529640198
 
Epoch 7: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.95it/s]
 
[007|00/05] ---> 0.43884357810020447
 
Epoch 8: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.75it/s]
 
[008|00/05] ---> 0.4509202241897583
 
Epoch 9: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.42it/s]
 
[009|00/05] ---> 0.4619576036930084
 
Epoch 10: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.35it/s]
 
[010|00/05] ---> 0.4768645465373993
 
Epoch 11: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.02it/s]
 
[011|00/05] ---> 0.48412057757377625
 
Epoch 12: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.08it/s]
 
[012|00/05] ---> 0.4915325343608856
 
Epoch 13: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.14it/s]
 
[013|00/05] ---> 0.4976453185081482
 
Epoch 14: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.01it/s]
 
[014|00/05] ---> 0.5054040551185608
 
Epoch 15: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.34it/s]
 
[015|00/05] ---> 0.5070977210998535
 
Epoch 16: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.34it/s]
 
[016|00/05] ---> 0.5132291316986084
 
Epoch 17: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.91it/s]
 
[017|00/05] ---> 0.5208368301391602
 
Epoch 18: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.22it/s]
 
[018|00/05] ---> 0.5226337909698486
 
Epoch 19: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.29it/s]
 
[019|00/05] ---> 0.5245917439460754
 
Epoch 20: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.25it/s]
 
[020|00/05] ---> 0.5302238464355469
 
Epoch 21: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.88it/s]
 
[021|00/05] ---> 0.5344535112380981
 
Epoch 22: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.34it/s]
 
[022|01/05] -/-> 0.5327614545822144
 
Epoch 23: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.09it/s]
 
[023|01/05] ---> 0.5406898856163025
 
Epoch 24: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.22it/s]
 
[024|00/05] ---> 0.5439794063568115
 
Epoch 25: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.77it/s]
 
[025|01/05] -/-> 0.5398200154304504
 
Epoch 26: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.90it/s]
 
[026|01/05] ---> 0.5470251441001892
 
Epoch 27: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.19it/s]
 
[027|01/05] -/-> 0.5431471467018127
 
Epoch 28: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.72it/s]
 
[028|02/05] -/-> 0.5463071465492249
 
Epoch 29: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.96it/s]
 
[029|02/05] ---> 0.5533322095870972
 
Epoch 30: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.96it/s]
 
[030|01/05] -/-> 0.5518671274185181
 
Epoch 31: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.34it/s]
 
[031|02/05] -/-> 0.5495620965957642
 
Epoch 32: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.18it/s]
 
[032|02/05] ---> 0.5544109344482422
 
Epoch 33: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.23it/s]
 
[033|00/05] ---> 0.5553478598594666
 
Epoch 34: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.54it/s]
 
[034|00/05] ---> 0.5608093738555908
 
Epoch 35: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.18it/s]
 
[035|01/05] -/-> 0.5579965114593506
 
Epoch 36: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.81it/s]
 
[036|02/05] -/-> 0.5578139424324036
 
Epoch 37: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.05it/s]
 
[037|02/05] ---> 0.5613127946853638
 
Epoch 38: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.87it/s]
 
[038|00/05] ---> 0.5638325810432434
 
Epoch 39: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.71it/s]
 
[039|01/05] -/-> 0.5620004534721375
 
Epoch 40: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.88it/s]
 
[040|01/05] ---> 0.564683198928833
 
Epoch 41: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.26it/s]
 
[041|01/05] -/-> 0.5639308094978333
 
Epoch 42: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.24it/s]
 
[042|02/05] -/-> 0.5626509785652161
 
Epoch 43: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.83it/s]
 
[043|02/05] ---> 0.5658485293388367
 
Epoch 44: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.91it/s]
 
[044|00/05] ---> 0.5662789344787598
 
Epoch 45: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.06it/s]
 
[045|01/05] -/-> 0.5660897493362427
 
Epoch 46: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.26it/s]
 
[046|02/05] -/-> 0.5640143156051636
 
Epoch 47: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.76it/s]
 
[047|02/05] ---> 0.5667811036109924
 
Epoch 48: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.17it/s]
 
[048|00/05] ---> 0.5698473453521729
 
Epoch 49: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.13it/s]
 
[049|00/05] ---> 0.5721409916877747
 
Epoch 50: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.72it/s]
 
[050|01/05] -/-> 0.5696413516998291
 
Epoch 51: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.00it/s]
 
[051|01/05] ---> 0.57364422082901
 
Epoch 52: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.90it/s]
 
[052|01/05] -/-> 0.5731521248817444
 
Epoch 53: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.45it/s]
 
[053|02/05] -/-> 0.5690122246742249
 
Epoch 54: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.84it/s]
 
[054|02/05] ---> 0.5738064646720886
 
Epoch 55: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.09it/s]
 
[055|00/05] ---> 0.5742394328117371
 
Epoch 56: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.44it/s]
 
[056|01/05] -/-> 0.5721994042396545
 
Epoch 57: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.00it/s]
 
[057|02/05] -/-> 0.5714521408081055
 
Epoch 58: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.02it/s]
 
[058|02/05] ---> 0.5770822763442993
 
Epoch 59: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.19it/s]
 
[059|01/05] -/-> 0.5755298137664795
 
Epoch 60: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.01it/s]
 
[060|02/05] -/-> 0.5753090977668762
 
Epoch 61: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.07it/s]
 
[061|03/05] -/-> 0.576008677482605
 
Epoch 62: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.83it/s]
 
[062|04/05] -/-> 0.5744680762290955
 
Epoch 63: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.19it/s]
 
[063|04/05] ---> 0.5811778903007507
 
Epoch 64: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.14it/s]
 
[064|01/05] -/-> 0.5797889232635498
 
Epoch 65: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.89it/s]
 
[065|02/05] -/-> 0.5762240886688232
 
Epoch 66: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.54it/s]
 
[066|03/05] -/-> 0.5749619007110596
 
Epoch 67: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.01it/s]
 
[067|04/05] -/-> 0.5756767988204956
 
Epoch 68: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.06it/s]
 
[068|05/05] -/-> 0.579120397567749
 
Epoch 69: 4%|████▍ | 3/70 [00:00<00:02, 22.73it/s]
 
Restoring best model after lr decay! 0.579120 ---> 0.581178
 
Epoch 69: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.37it/s]
 
[069|00/05] ---> 0.5816249847412109
 
Epoch 70: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.87it/s]
 
[070|01/05] -/-> 0.5781106948852539
 
Epoch 71: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.07it/s]
 
[071|02/05] -/-> 0.5774279832839966
 
Epoch 72: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.42it/s]
 
[072|03/05] -/-> 0.5774174928665161
 
Epoch 73: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.06it/s]
 
[073|04/05] -/-> 0.5782034397125244
 
Epoch 74: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.89it/s]
 
[074|05/05] -/-> 0.579627275466919
 
Epoch 75: 1%|█▍ | 1/70 [00:00<00:11, 6.25it/s]
 
Restoring best model after lr decay! 0.579627 ---> 0.581625
 
Epoch 75: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.03it/s]
 
Epoch 75: reducing learning rate of group 0 to 1.5000e-03.
[075|01/05] -/-> 0.5771796107292175
 
Epoch 76: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.97it/s]
 
[076|02/05] -/-> 0.5777609944343567
 
Epoch 77: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.97it/s]
 
[077|03/05] -/-> 0.5768876671791077
 
Epoch 78: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.33it/s]
 
[078|03/05] ---> 0.5830768942832947
 
Epoch 79: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.46it/s]
 
[079|01/05] -/-> 0.5808678865432739
 
Epoch 80: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.72it/s]
 
[080|02/05] -/-> 0.5802747011184692
 
Epoch 81: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.45it/s]
 
[081|03/05] -/-> 0.5789622664451599
 
Epoch 82: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.84it/s]
 
[082|04/05] -/-> 0.5808247327804565
 
Epoch 83: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.95it/s]
 
[083|05/05] -/-> 0.5801978707313538
Restoring best model after lr decay! 0.580198 ---> 0.583077
Restoring best model! 0.583077 ---> 0.583077
Returning only test sampler with repeats...
-----------------------------------------
Model instance #0
Correlation (train set): 0.623
Correlation (validation set): 0.583
Correlation (test set): 0.536
-----------------------------------------
Fraction oracle (test set): 0.567
 
Epoch 1: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.06it/s]
 
[001|00/05] ---> 0.23026373982429504
 
Epoch 2: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.98it/s]
 
[002|00/05] ---> 0.2931402027606964
 
Epoch 3: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.64it/s]
 
[003|00/05] ---> 0.3348645865917206
 
Epoch 4: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.49it/s]
 
[004|00/05] ---> 0.3697623014450073
 
Epoch 5: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.54it/s]
 
[005|00/05] ---> 0.39938026666641235
 
Epoch 6: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.18it/s]
 
[006|00/05] ---> 0.4190826714038849
 
Epoch 7: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.42it/s]
 
[007|00/05] ---> 0.43589603900909424
 
Epoch 8: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.96it/s]
 
[008|00/05] ---> 0.4498882293701172
 
Epoch 9: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.63it/s]
 
[009|00/05] ---> 0.4613884389400482
 
Epoch 10: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.54it/s]
 
[010|00/05] ---> 0.47651708126068115
 
Epoch 11: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.44it/s]
 
[011|00/05] ---> 0.48318973183631897
 
Epoch 12: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.65it/s]
 
[012|00/05] ---> 0.4901617765426636
 
Epoch 13: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.54it/s]
 
[013|00/05] ---> 0.4954003691673279
 
Epoch 14: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.49it/s]
 
[014|00/05] ---> 0.5032791495323181
 
Epoch 15: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.43it/s]
 
[015|00/05] ---> 0.5056930780410767
 
Epoch 16: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.64it/s]
 
[016|00/05] ---> 0.512408971786499
 
Epoch 17: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.65it/s]
 
[017|00/05] ---> 0.520350456237793
 
Epoch 18: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.66it/s]
 
[018|00/05] ---> 0.5215756893157959
 
Epoch 19: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.65it/s]
 
[019|00/05] ---> 0.5242307186126709
 
Epoch 20: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.84it/s]
 
[020|00/05] ---> 0.5294774770736694
 
Epoch 21: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.72it/s]
 
[021|00/05] ---> 0.5337187647819519
 
Epoch 22: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.47it/s]
 
[022|01/05] -/-> 0.5318487286567688
 
Epoch 23: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.74it/s]
 
[023|01/05] ---> 0.539139986038208
 
Epoch 24: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.63it/s]
 
[024|00/05] ---> 0.542059063911438
 
Epoch 25: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.46it/s]
 
[025|01/05] -/-> 0.5380580425262451
 
Epoch 26: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.76it/s]
 
[026|01/05] ---> 0.5453126430511475
 
Epoch 27: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.43it/s]
 
[027|01/05] -/-> 0.5409465432167053
 
Epoch 28: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.66it/s]
 
[028|02/05] -/-> 0.5450394153594971
 
Epoch 29: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.54it/s]
 
[029|02/05] ---> 0.5513254404067993
 
Epoch 30: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.57it/s]
 
[030|01/05] -/-> 0.5492904186248779
 
Epoch 31: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.65it/s]
 
[031|02/05] -/-> 0.5477545261383057
 
Epoch 32: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.69it/s]
 
[032|02/05] ---> 0.5530498027801514
 
Epoch 33: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.71it/s]
 
[033|00/05] ---> 0.5539110898971558
 
Epoch 34: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.27it/s]
 
[034|00/05] ---> 0.5591872334480286
 
Epoch 35: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.34it/s]
 
[035|01/05] -/-> 0.5564436912536621
 
Epoch 36: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.66it/s]
 
[036|02/05] -/-> 0.55576092004776
 
Epoch 37: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.76it/s]
 
[037|02/05] ---> 0.559333086013794
 
Epoch 38: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.31it/s]
 
[038|00/05] ---> 0.5612305998802185
 
Epoch 39: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.71it/s]
 
[039|01/05] -/-> 0.5599708557128906
 
Epoch 40: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.66it/s]
 
[040|01/05] ---> 0.5625169277191162
 
Epoch 41: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.90it/s]
 
[041|01/05] -/-> 0.5616977214813232
 
Epoch 42: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.77it/s]
 
[042|02/05] -/-> 0.5598475337028503
 
Epoch 43: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.81it/s]
 
[043|02/05] ---> 0.5626038312911987
 
Epoch 44: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.19it/s]
 
[044|00/05] ---> 0.56276935338974
 
Epoch 45: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.28it/s]
 
[045|00/05] ---> 0.5628985166549683
 
Epoch 46: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.65it/s]
 
[046|01/05] -/-> 0.561089277267456
 
Epoch 47: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.37it/s]
 
[047|01/05] ---> 0.5632113814353943
 
Epoch 48: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.68it/s]
 
[048|00/05] ---> 0.5662349462509155
 
Epoch 49: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.68it/s]
 
[049|00/05] ---> 0.5679631233215332
 
Epoch 50: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.72it/s]
 
[050|01/05] -/-> 0.5659940242767334
 
Epoch 51: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.76it/s]
 
[051|01/05] ---> 0.569395899772644
 
Epoch 52: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.77it/s]
 
[052|01/05] -/-> 0.568669855594635
 
Epoch 53: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.68it/s]
 
[053|02/05] -/-> 0.5647162199020386
 
Epoch 54: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.52it/s]
 
[054|03/05] -/-> 0.5693768262863159
 
Epoch 55: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.36it/s]
 
[055|03/05] ---> 0.5697006583213806
 
Epoch 56: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.82it/s]
 
[056|01/05] -/-> 0.5681019425392151
 
Epoch 57: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.63it/s]
 
[057|02/05] -/-> 0.5670108199119568
 
Epoch 58: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.87it/s]
 
[058|02/05] ---> 0.5721347332000732
 
Epoch 59: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.45it/s]
 
[059|01/05] -/-> 0.5704193115234375
 
Epoch 60: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.44it/s]
 
[060|02/05] -/-> 0.5703175067901611
 
Epoch 61: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.81it/s]
 
[061|03/05] -/-> 0.5709869861602783
 
Epoch 62: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.79it/s]
 
[062|04/05] -/-> 0.5696129202842712
 
Epoch 63: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.91it/s]
 
[063|04/05] ---> 0.5765106678009033
 
Epoch 64: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.43it/s]
 
[064|01/05] -/-> 0.5744590759277344
 
Epoch 65: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.81it/s]
 
[065|02/05] -/-> 0.571563720703125
 
Epoch 66: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.74it/s]
 
[066|03/05] -/-> 0.5703476071357727
 
Epoch 67: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.81it/s]
 
[067|04/05] -/-> 0.5707998275756836
 
Epoch 68: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.62it/s]
 
[068|05/05] -/-> 0.5736790895462036
 
Epoch 69: 4%|████▍ | 3/70 [00:00<00:02, 22.73it/s]
 
Restoring best model after lr decay! 0.573679 ---> 0.576511
 
Epoch 69: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.59it/s]
 
[069|00/05] ---> 0.5766668915748596
 
Epoch 70: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.03it/s]
 
[070|01/05] -/-> 0.5732266902923584
 
Epoch 71: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 25.58it/s]
 
[071|02/05] -/-> 0.5728083848953247
 
Epoch 72: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 26.25it/s]
 
[072|03/05] -/-> 0.5724377036094666
 
Epoch 73: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 26.07it/s]
 
[073|04/05] -/-> 0.5729930400848389
 
Epoch 74: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.93it/s]
 
[074|05/05] -/-> 0.574021577835083
 
Epoch 75: 4%|████▍ | 3/70 [00:00<00:02, 22.90it/s]
 
Restoring best model after lr decay! 0.574022 ---> 0.576667
 
Epoch 75: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.50it/s]
 
Epoch 75: reducing learning rate of group 0 to 1.5000e-03.
[075|01/05] -/-> 0.571913480758667
 
Epoch 76: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.48it/s]
 
[076|02/05] -/-> 0.5724478960037231
 
Epoch 77: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.69it/s]
 
[077|03/05] -/-> 0.5716409683227539
 
Epoch 78: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.08it/s]
 
[078|03/05] ---> 0.5777611136436462
 
Epoch 79: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.93it/s]
 
[079|01/05] -/-> 0.5757316946983337
 
Epoch 80: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.44it/s]
 
[080|02/05] -/-> 0.574968695640564
 
Epoch 81: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.39it/s]
 
[081|03/05] -/-> 0.573715329170227
 
Epoch 82: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.69it/s]
 
[082|04/05] -/-> 0.5756334662437439
 
Epoch 83: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.31it/s]
 
[083|05/05] -/-> 0.5748741626739502
Restoring best model after lr decay! 0.574874 ---> 0.577761
Restoring best model! 0.577761 ---> 0.577761
Returning only test sampler with repeats...
-----------------------------------------
Model instance #1
Correlation (train set): 0.620
Correlation (validation set): 0.578
Correlation (test set): 0.535
-----------------------------------------
Fraction oracle (test set): 0.565
 
Epoch 1: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.46it/s]
 
[001|00/05] ---> 0.2290954291820526
 
Epoch 2: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.12it/s]
 
[002|00/05] ---> 0.2899487316608429
 
Epoch 3: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.88it/s]
 
[003|00/05] ---> 0.3313034772872925
 
Epoch 4: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.56it/s]
 
[004|00/05] ---> 0.36395394802093506
 
Epoch 5: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.19it/s]
 
[005|00/05] ---> 0.39446938037872314
 
Epoch 6: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.16it/s]
 
[006|00/05] ---> 0.4158376455307007
 
Epoch 7: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.57it/s]
 
[007|00/05] ---> 0.43321719765663147
 
Epoch 8: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.18it/s]
 
[008|00/05] ---> 0.4450099766254425
 
Epoch 9: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.07it/s]
 
[009|00/05] ---> 0.4561106264591217
 
Epoch 10: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.56it/s]
 
[010|00/05] ---> 0.47043541073799133
 
Epoch 11: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.37it/s]
 
[011|00/05] ---> 0.47777217626571655
 
Epoch 12: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.37it/s]
 
[012|00/05] ---> 0.4847922921180725
 
Epoch 13: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.65it/s]
 
[013|00/05] ---> 0.4906849265098572
 
Epoch 14: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.16it/s]
 
[014|00/05] ---> 0.49880191683769226
 
Epoch 15: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.02it/s]
 
[015|00/05] ---> 0.5017046332359314
 
Epoch 16: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.83it/s]
 
[016|00/05] ---> 0.5078375339508057
 
Epoch 17: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.41it/s]
 
[017|00/05] ---> 0.515116274356842
 
Epoch 18: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.37it/s]
 
[018|00/05] ---> 0.5162003636360168
 
Epoch 19: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.70it/s]
 
[019|00/05] ---> 0.5183566212654114
 
Epoch 20: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.23it/s]
 
[020|00/05] ---> 0.5237118005752563
 
Epoch 21: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.28it/s]
 
[021|00/05] ---> 0.5278205275535583
 
Epoch 22: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.19it/s]
 
[022|01/05] -/-> 0.5268072485923767
 
Epoch 23: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.11it/s]
 
[023|01/05] ---> 0.5344802141189575
 
Epoch 24: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.36it/s]
 
[024|00/05] ---> 0.5376237630844116
 
Epoch 25: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.48it/s]
 
[025|01/05] -/-> 0.5339356660842896
 
Epoch 26: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.11it/s]
 
[026|01/05] ---> 0.5414040684700012
 
Epoch 27: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.15it/s]
 
[027|01/05] -/-> 0.5373042225837708
 
Epoch 28: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.51it/s]
 
[028|02/05] -/-> 0.5407546758651733
 
Epoch 29: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.13it/s]
 
[029|02/05] ---> 0.5476356148719788
 
Epoch 30: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.61it/s]
 
[030|01/05] -/-> 0.545714259147644
 
Epoch 31: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.03it/s]
 
[031|02/05] -/-> 0.5436003804206848
 
Epoch 32: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.77it/s]
 
[032|02/05] ---> 0.5488875508308411
 
Epoch 33: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.24it/s]
 
[033|00/05] ---> 0.5497444868087769
 
Epoch 34: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.26it/s]
 
[034|00/05] ---> 0.5554368495941162
 
Epoch 35: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.47it/s]
 
[035|01/05] -/-> 0.5524901747703552
 
Epoch 36: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.47it/s]
 
[036|02/05] -/-> 0.5518407821655273
 
Epoch 37: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.10it/s]
 
[037|03/05] -/-> 0.5551156401634216
 
Epoch 38: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.75it/s]
 
[038|03/05] ---> 0.5572949647903442
 
Epoch 39: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.13it/s]
 
[039|01/05] -/-> 0.5564154386520386
 
Epoch 40: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.49it/s]
 
[040|01/05] ---> 0.5587188601493835
 
Epoch 41: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.60it/s]
 
[041|01/05] -/-> 0.5583072304725647
 
Epoch 42: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.35it/s]
 
[042|02/05] -/-> 0.5565481781959534
 
Epoch 43: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.01it/s]
 
[043|02/05] ---> 0.5592142939567566
 
Epoch 44: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.22it/s]
 
[044|00/05] ---> 0.5595636963844299
 
Epoch 45: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.47it/s]
 
[045|00/05] ---> 0.5600802302360535
 
Epoch 46: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.56it/s]
 
[046|01/05] -/-> 0.5581663250923157
 
Epoch 47: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.66it/s]
 
[047|01/05] ---> 0.560288667678833
 
Epoch 48: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.32it/s]
 
[048|00/05] ---> 0.5631170272827148
 
Epoch 49: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.59it/s]
 
[049|00/05] ---> 0.5646294951438904
 
Epoch 50: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.83it/s]
 
[050|01/05] -/-> 0.5628137588500977
 
Epoch 51: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.46it/s]
 
[051|01/05] ---> 0.5657824277877808
 
Epoch 52: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.69it/s]
 
[052|01/05] -/-> 0.5652105212211609
 
Epoch 53: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.81it/s]
 
[053|02/05] -/-> 0.5608066916465759
 
Epoch 54: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.21it/s]
 
[054|03/05] -/-> 0.5656311511993408
 
Epoch 55: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.52it/s]
 
[055|03/05] ---> 0.5662940144538879
 
Epoch 56: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.02it/s]
 
[056|01/05] -/-> 0.5642282962799072
 
Epoch 57: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.65it/s]
 
[057|02/05] -/-> 0.5630688071250916
 
Epoch 58: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.36it/s]
 
[058|02/05] ---> 0.5681115984916687
 
Epoch 59: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.71it/s]
 
[059|01/05] -/-> 0.5667527318000793
 
Epoch 60: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.37it/s]
 
[060|02/05] -/-> 0.5660671591758728
 
Epoch 61: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.52it/s]
 
[061|03/05] -/-> 0.5669023394584656
 
Epoch 62: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.68it/s]
 
[062|04/05] -/-> 0.5653582811355591
 
Epoch 63: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.62it/s]
 
[063|04/05] ---> 0.5716959834098816
 
Epoch 64: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.49it/s]
 
[064|01/05] -/-> 0.5701110363006592
 
Epoch 65: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.74it/s]
 
[065|02/05] -/-> 0.5667899250984192
 
Epoch 66: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.65it/s]
 
[066|03/05] -/-> 0.5663059949874878
 
Epoch 67: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.49it/s]
 
[067|04/05] -/-> 0.5664122104644775
 
Epoch 68: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.42it/s]
 
[068|05/05] -/-> 0.5695462822914124
 
Epoch 69: 4%|████▍ | 3/70 [00:00<00:02, 23.44it/s]
 
Restoring best model after lr decay! 0.569546 ---> 0.571696
 
Epoch 69: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.64it/s]
 
Epoch 69: reducing learning rate of group 0 to 1.5000e-03.
[069|01/05] -/-> 0.5714928507804871
 
Epoch 70: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.70it/s]
 
[070|02/05] -/-> 0.5707204341888428
 
Epoch 71: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.55it/s]
 
[071|03/05] -/-> 0.5703805088996887
 
Epoch 72: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 26.16it/s]
 
[072|04/05] -/-> 0.5699271559715271
 
Epoch 73: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.52it/s]
 
[073|05/05] -/-> 0.5713420510292053
 
Epoch 74: 4%|████▍ | 3/70 [00:00<00:02, 22.56it/s]
 
Restoring best model after lr decay! 0.571342 ---> 0.571696
 
Epoch 74: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.25it/s]
 
[074|00/05] ---> 0.5753670930862427
 
Epoch 75: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.64it/s]
 
[075|01/05] -/-> 0.5698484778404236
 
Epoch 76: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.03it/s]
 
[076|02/05] -/-> 0.5677907466888428
 
Epoch 77: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.10it/s]
 
[077|03/05] -/-> 0.5668144226074219
 
Epoch 78: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.41it/s]
 
[078|04/05] -/-> 0.5728720426559448
 
Epoch 79: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.42it/s]
 
[079|05/05] -/-> 0.5708081722259521
Restoring best model after lr decay! 0.570808 ---> 0.575367
Restoring best model! 0.575367 ---> 0.575367
Returning only test sampler with repeats...
-----------------------------------------
Model instance #2
Correlation (train set): 0.618
Correlation (validation set): 0.575
Correlation (test set): 0.531
-----------------------------------------
Fraction oracle (test set): 0.562
 
Epoch 1: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.70it/s]
 
[001|00/05] ---> 0.2328161597251892
 
Epoch 2: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.42it/s]
 
[002|00/05] ---> 0.297107458114624
 
Epoch 3: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.57it/s]
 
[003|00/05] ---> 0.33933359384536743
 
Epoch 4: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.65it/s]
 
[004|00/05] ---> 0.37267541885375977
 
Epoch 5: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.97it/s]
 
[005|00/05] ---> 0.40086910128593445
 
Epoch 6: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.69it/s]
 
[006|00/05] ---> 0.4200170636177063
 
Epoch 7: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.73it/s]
 
[007|00/05] ---> 0.4362872838973999
 
Epoch 8: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.84it/s]
 
[008|00/05] ---> 0.44802209734916687
 
Epoch 9: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.98it/s]
 
[009|00/05] ---> 0.4594223201274872
 
Epoch 10: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.91it/s]
 
[010|00/05] ---> 0.47363218665122986
 
Epoch 11: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.02it/s]
 
[011|00/05] ---> 0.48084327578544617
 
Epoch 12: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.71it/s]
 
[012|00/05] ---> 0.488472044467926
 
Epoch 13: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.00it/s]
 
[013|00/05] ---> 0.49434417486190796
 
Epoch 14: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.41it/s]
 
[014|00/05] ---> 0.5021447539329529
 
Epoch 15: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.13it/s]
 
[015|00/05] ---> 0.5046839118003845
 
Epoch 16: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.33it/s]
 
[016|00/05] ---> 0.5116170048713684
 
Epoch 17: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.01it/s]
 
[017|00/05] ---> 0.5197988152503967
 
Epoch 18: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.01it/s]
 
[018|00/05] ---> 0.5215060710906982
 
Epoch 19: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.03it/s]
 
[019|00/05] ---> 0.5239179730415344
 
Epoch 20: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.27it/s]
 
[020|00/05] ---> 0.5291531085968018
 
Epoch 21: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.43it/s]
 
[021|00/05] ---> 0.533699631690979
 
Epoch 22: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.56it/s]
 
[022|01/05] -/-> 0.5323522090911865
 
Epoch 23: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.46it/s]
 
[023|01/05] ---> 0.5404931902885437
 
Epoch 24: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.34it/s]
 
[024|00/05] ---> 0.5442118644714355
 
Epoch 25: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.15it/s]
 
[025|01/05] -/-> 0.5398510694503784
 
Epoch 26: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.12it/s]
 
[026|01/05] ---> 0.5470742583274841
 
Epoch 27: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 26.53it/s]
 
[027|01/05] -/-> 0.5431610941886902
 
Epoch 28: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.61it/s]
 
[028|02/05] -/-> 0.5465921759605408
 
Epoch 29: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.35it/s]
 
[029|02/05] ---> 0.5534579753875732
 
Epoch 30: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.01it/s]
 
[030|01/05] -/-> 0.5522124171257019
 
Epoch 31: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.75it/s]
 
[031|02/05] -/-> 0.5497786998748779
 
Epoch 32: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.13it/s]
 
[032|02/05] ---> 0.5557412505149841
 
Epoch 33: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.84it/s]
 
[033|00/05] ---> 0.5563766956329346
 
Epoch 34: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.79it/s]
 
[034|00/05] ---> 0.5620550513267517
 
Epoch 35: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.54it/s]
 
[035|01/05] -/-> 0.5592361092567444
 
Epoch 36: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.99it/s]
 
[036|02/05] -/-> 0.5590481758117676
 
Epoch 37: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.81it/s]
 
[037|02/05] ---> 0.5621733069419861
 
Epoch 38: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.91it/s]
 
[038|00/05] ---> 0.563853919506073
 
Epoch 39: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.37it/s]
 
[039|01/05] -/-> 0.5630826354026794
 
Epoch 40: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.24it/s]
 
[040|01/05] ---> 0.5652399063110352
 
Epoch 41: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.54it/s]
 
[041|01/05] -/-> 0.5648543834686279
 
Epoch 42: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.00it/s]
 
[042|02/05] -/-> 0.5633581876754761
 
Epoch 43: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.06it/s]
 
[043|02/05] ---> 0.5661106109619141
 
Epoch 44: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.09it/s]
 
[044|00/05] ---> 0.5663430094718933
 
Epoch 45: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 27.19it/s]
 
[045|00/05] ---> 0.5666577219963074
 
Epoch 46: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.07it/s]
 
[046|01/05] -/-> 0.564254105091095
 
Epoch 47: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 26.35it/s]
 
[047|01/05] ---> 0.5671365261077881
 
Epoch 48: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.90it/s]
 
[048|00/05] ---> 0.5698778629302979
 
Epoch 49: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.61it/s]
 
[049|00/05] ---> 0.5718719959259033
 
Epoch 50: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.29it/s]
 
[050|01/05] -/-> 0.569269061088562
 
Epoch 51: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.07it/s]
 
[051|01/05] ---> 0.5727875828742981
 
Epoch 52: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.85it/s]
 
[052|01/05] -/-> 0.5722250938415527
 
Epoch 53: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.81it/s]
 
[053|02/05] -/-> 0.5677307844161987
 
Epoch 54: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.06it/s]
 
[054|03/05] -/-> 0.5721774697303772
 
Epoch 55: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.87it/s]
 
[055|03/05] ---> 0.5730316638946533
 
Epoch 56: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.22it/s]
 
[056|01/05] -/-> 0.570793867111206
 
Epoch 57: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.00it/s]
 
[057|02/05] -/-> 0.5701620578765869
 
Epoch 58: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.46it/s]
 
[058|02/05] ---> 0.5749801993370056
 
Epoch 59: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.55it/s]
 
[059|01/05] -/-> 0.5734383463859558
 
Epoch 60: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.94it/s]
 
[060|02/05] -/-> 0.5735413432121277
 
Epoch 61: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.14it/s]
 
[061|03/05] -/-> 0.5738531947135925
 
Epoch 62: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.99it/s]
 
[062|04/05] -/-> 0.5723398923873901
 
Epoch 63: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.19it/s]
 
[063|04/05] ---> 0.5792900919914246
 
Epoch 64: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.11it/s]
 
[064|01/05] -/-> 0.5772593021392822
 
Epoch 65: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.01it/s]
 
[065|02/05] -/-> 0.5739323496818542
 
Epoch 66: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.70it/s]
 
[066|03/05] -/-> 0.5728225708007812
 
Epoch 67: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.09it/s]
 
[067|04/05] -/-> 0.5732090473175049
 
Epoch 68: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.61it/s]
 
[068|05/05] -/-> 0.5763227939605713
 
Epoch 69: 4%|████▍ | 3/70 [00:00<00:02, 23.26it/s]
 
Restoring best model after lr decay! 0.576323 ---> 0.579290
 
Epoch 69: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.40it/s]
 
Epoch 69: reducing learning rate of group 0 to 1.5000e-03.
[069|01/05] -/-> 0.5790596008300781
 
Epoch 70: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.08it/s]
 
[070|02/05] -/-> 0.5778839588165283
 
Epoch 71: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.81it/s]
 
[071|03/05] -/-> 0.5776650905609131
 
Epoch 72: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.47it/s]
 
[072|04/05] -/-> 0.5770350098609924
 
Epoch 73: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.08it/s]
 
[073|05/05] -/-> 0.5786131024360657
 
Epoch 74: 4%|████▍ | 3/70 [00:00<00:03, 21.90it/s]
 
Restoring best model after lr decay! 0.578613 ---> 0.579290
 
Epoch 74: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.68it/s]
 
[074|00/05] ---> 0.5828195214271545
 
Epoch 75: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.08it/s]
 
[075|01/05] -/-> 0.5770525336265564
 
Epoch 76: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.78it/s]
 
[076|02/05] -/-> 0.5749999284744263
 
Epoch 77: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.22it/s]
 
[077|03/05] -/-> 0.5739960074424744
 
Epoch 78: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.29it/s]
 
[078|04/05] -/-> 0.5801389217376709
 
Epoch 79: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.76it/s]
 
[079|05/05] -/-> 0.5779879689216614
Restoring best model after lr decay! 0.577988 ---> 0.582820
Restoring best model! 0.582820 ---> 0.582820
Returning only test sampler with repeats...
-----------------------------------------
Model instance #3
Correlation (train set): 0.626
Correlation (validation set): 0.583
Correlation (test set): 0.539
-----------------------------------------
Fraction oracle (test set): 0.570
peak memory: 2172.01 MiB, increment: 167.37 MiB
Wall time: 16min 9s
 
%% Cell type:code id: tags:
 
``` python
%%time
%%memit
#Train with fixed seed for readout neurons position initialization
 
from lurz2020.models.models import se2d_fullgaussian2d
from lurz2020.training.trainers import standard_trainer as trainer
from lurz2020.utility.measures import get_correlations, get_fraction_oracles
 
#Generate 4 instances of the same model with different seeds, for MEI generation
n_seeds = 4
 
models = []
train_correlation_models = []
validation_correlation_models = []
test_correlation_models = []
fraction_oracle = []
 
#Model config
model_config = {'init_mu_range': 0.2,
'init_sigma': 0.5,
'input_kern': 15,
'hidden_kern': 13,
'gamma_input': 1.0,
'grid_mean_predictor': None,
'gamma_readout': 2.439}
 
 
#Change trainer config to not track and print the training progress
trainer_config = {'track_training': False,
'detach_core': True}
 
for i in range(n_seeds):
 
model = se2d_fullgaussian2d(**model_config, dataloaders=dataloaders_RGCs, seed=i)
#Load the weights of the transfer core
transfer_model = torch.load('D://inception_loop/original_code/Lurz_2020_code/notebooks/models/transfer_model.pth.tar')
model.load_state_dict(transfer_model, strict=False)
#Run training
score, output, model_state = trainer(model=model, dataloaders=dataloaders_RGCs, seed=1, **trainer_config)
#Get performance of model
train_correlation_models.append(get_correlations(model, dataloaders_RGCs["train"], device='cuda', as_dict=False, per_neuron=False))
validation_correlation_models.append(get_correlations(model, dataloaders_RGCs["validation"], device='cuda', as_dict=False, per_neuron=False))
test_correlation_models.append(get_correlations(model, dataloaders_RGCs["test"], device='cuda', as_dict=False, per_neuron=False))
 
oracle_dataloader = static_loaders(**dataset_config, return_test_sampler=True, tier='test')
fraction_oracle.append(get_fraction_oracles(model=model, dataloaders=oracle_dataloader, device='cuda')[0])
 
print('-----------------------------------------')
print(f'Model instance #{i}')
print('Correlation (train set): {0:.3f}'.format(train_correlation_models[i]))
print('Correlation (validation set): {0:.3f}'.format(validation_correlation_models[i]))
print('Correlation (test set): {0:.3f}'.format(test_correlation_models[i]))
print('-----------------------------------------')
print('Fraction oracle (test set): {0:.3f}'.format(fraction_oracle[i]))
 
models.append(model)
#Save model state for loading later
torch.save(model_state, 'D://inception_loop/RGC_sim/models/model_'+str(i)+'_v2.pth')
```
 
%% Output
 
Epoch 1: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.24it/s]
 
[001|00/05] ---> 0.23459821939468384
 
Epoch 2: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.90it/s]
 
[002|00/05] ---> 0.301495760679245
 
Epoch 3: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.01it/s]
 
[003|00/05] ---> 0.34670138359069824
 
Epoch 4: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 28.85it/s]
 
[004|00/05] ---> 0.3815709352493286
 
Epoch 5: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.00it/s]
 
[005|00/05] ---> 0.412319540977478
 
Epoch 6: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.60it/s]
 
[006|00/05] ---> 0.43426042795181274
 
Epoch 7: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.03it/s]
 
[007|00/05] ---> 0.4524192214012146
 
Epoch 8: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.43it/s]
 
[008|00/05] ---> 0.4666091203689575
 
Epoch 9: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.42it/s]
 
[009|00/05] ---> 0.47858843207359314
 
Epoch 10: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.77it/s]
 
[010|00/05] ---> 0.4937725067138672
 
Epoch 11: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.59it/s]
 
[011|00/05] ---> 0.5013248920440674
 
Epoch 12: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.57it/s]
 
[012|00/05] ---> 0.508674144744873
 
Epoch 13: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.56it/s]
 
[013|00/05] ---> 0.5153431296348572
 
Epoch 14: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.80it/s]
 
[014|00/05] ---> 0.5237187147140503
 
Epoch 15: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.53it/s]
 
[015|00/05] ---> 0.5259684920310974
 
Epoch 16: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.54it/s]
 
[016|00/05] ---> 0.5328088402748108
 
Epoch 17: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.58it/s]
 
[017|00/05] ---> 0.5410084128379822
 
Epoch 18: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 31.03it/s]
 
[018|00/05] ---> 0.5430383086204529
 
Epoch 19: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.55it/s]
 
[019|00/05] ---> 0.5456244945526123
 
Epoch 20: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.60it/s]
 
[020|00/05] ---> 0.5506945252418518
 
Epoch 21: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.82it/s]
 
[021|00/05] ---> 0.5545976161956787
 
Epoch 22: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.66it/s]
 
[022|01/05] -/-> 0.5533415675163269
 
Epoch 23: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.16it/s]
 
[023|01/05] ---> 0.5607472658157349
 
Epoch 24: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.60it/s]
 
[024|00/05] ---> 0.5641764402389526
 
Epoch 25: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.81it/s]
 
[025|01/05] -/-> 0.5606480836868286
 
Epoch 26: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.54it/s]
 
[026|01/05] ---> 0.5680581331253052
 
Epoch 27: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.57it/s]
 
[027|01/05] -/-> 0.5639636516571045
 
Epoch 28: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.41it/s]
 
[028|02/05] -/-> 0.5673320889472961
 
Epoch 29: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.83it/s]
 
[029|02/05] ---> 0.5748711228370667
 
Epoch 30: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 29.21it/s]
 
[030|01/05] -/-> 0.5729529857635498
 
Epoch 31: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.55it/s]
 
[031|02/05] -/-> 0.5710783004760742
 
Epoch 32: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.44it/s]
 
[032|02/05] ---> 0.5763410925865173
 
Epoch 33: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.65it/s]
 
[033|00/05] ---> 0.5772280097007751
 
Epoch 34: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.18it/s]
 
[034|00/05] ---> 0.5831801891326904
 
Epoch 35: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.45it/s]
 
[035|01/05] -/-> 0.5807177424430847
 
Epoch 36: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.45it/s]
 
[036|02/05] -/-> 0.5797880291938782
 
Epoch 37: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.63it/s]
 
[037|02/05] ---> 0.5832706093788147
 
Epoch 38: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.57it/s]
 
[038|00/05] ---> 0.5852133631706238
 
Epoch 39: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.45it/s]
 
[039|01/05] -/-> 0.5844253301620483
 
Epoch 40: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.93it/s]
 
[040|01/05] ---> 0.5867708921432495
 
Epoch 41: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.67it/s]
 
[041|01/05] -/-> 0.5859813690185547
 
Epoch 42: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.43it/s]
 
[042|02/05] -/-> 0.5840797424316406
 
Epoch 43: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.43it/s]
 
[043|02/05] ---> 0.5874516367912292
 
Epoch 44: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.68it/s]
 
[044|00/05] ---> 0.5876851677894592
 
Epoch 45: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.41it/s]
 
[045|01/05] -/-> 0.5875603556632996
 
Epoch 46: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.39it/s]
 
[046|02/05] -/-> 0.5850870609283447
 
Epoch 47: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.46it/s]
 
[047|02/05] ---> 0.5880763530731201
 
Epoch 48: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:02<00:00, 30.74it/s]
 
[048|00/05] ---> 0.5909481048583984