Commit 8108ff8b authored by Ines Filipa Fernandes Ramos's avatar Ines Filipa Fernandes Ramos
Browse files

neurons_for_MEI computed

parent 0bfaccea
%% Cell type:markdown id: tags:
 
# Readout type selection
 
%% Cell type:code id: tags:
 
``` python
%matplotlib inline
%load_ext autoreload
%autoreload 2
%load_ext memory_profiler
```
 
%% Output
The autoreload extension is already loaded. To reload it, use:
%reload_ext autoreload
The memory_profiler extension is already loaded. To reload it, use:
%reload_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: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/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/data/static27012021', "images", "responses")
```
 
%% 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 - 3 readouts types
 
%% Cell type:markdown id: tags:
 
Build 4 instances of the model for three different readouts:
 
%% Cell type:markdown id: tags:
 
Fullgaussian readout:
 
%% 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_tunned = {'init_mu_range': 0.1,
'init_sigma': 0.64,
'input_kern': 15,
'hidden_kern': 13,
'gamma_input': 1.0,
'grid_mean_predictor': None,
'gamma_readout': 0.99}
 
 
#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_tunned, 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_data/models/tunned_model_fullgaussian_'+str(i)+'.pth')
```
 
%% Output
 
Epoch 1: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.44it/s]
 
[001|00/05] ---> 0.1587192714214325
 
Epoch 2: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.46it/s]
 
[002|00/05] ---> 0.19881710410118103
 
Epoch 3: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.56it/s]
 
[003|00/05] ---> 0.2302725613117218
 
Epoch 4: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.59it/s]
 
[004|00/05] ---> 0.2648564577102661
 
Epoch 5: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.54it/s]
 
[005|00/05] ---> 0.30609503388404846
 
Epoch 6: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.62it/s]
 
[006|00/05] ---> 0.34749484062194824
 
Epoch 7: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.64it/s]
 
[007|00/05] ---> 0.38890618085861206
 
Epoch 8: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.67it/s]
 
[008|00/05] ---> 0.4298163950443268
 
Epoch 9: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.82it/s]
 
[009|00/05] ---> 0.4639325737953186
 
Epoch 10: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[010|00/05] ---> 0.4972185492515564
 
Epoch 11: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[011|00/05] ---> 0.5233685970306396
 
Epoch 12: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[012|00/05] ---> 0.5492935180664062
 
Epoch 13: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[013|00/05] ---> 0.569396436214447
 
Epoch 14: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[014|00/05] ---> 0.590165376663208
 
Epoch 15: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[015|00/05] ---> 0.606425404548645
 
Epoch 16: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.97it/s]
 
[016|00/05] ---> 0.6236133575439453
 
Epoch 17: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.85it/s]
 
[017|00/05] ---> 0.6393992304801941
 
Epoch 18: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.84it/s]
 
[018|00/05] ---> 0.6515399217605591
 
Epoch 19: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.38it/s]
 
[019|00/05] ---> 0.6660134196281433
 
Epoch 20: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.82it/s]
 
[020|00/05] ---> 0.680589497089386
 
Epoch 21: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.82it/s]
 
[021|00/05] ---> 0.6924012303352356
 
Epoch 22: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.88it/s]
 
[022|00/05] ---> 0.7038650512695312
 
Epoch 23: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.88it/s]
 
[023|00/05] ---> 0.7170166373252869
 
Epoch 24: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.88it/s]
 
[024|00/05] ---> 0.7265046834945679
 
Epoch 25: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[025|00/05] ---> 0.7328526377677917
 
Epoch 26: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[026|00/05] ---> 0.7428619861602783
 
Epoch 27: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.84it/s]
 
[027|00/05] ---> 0.752142071723938
 
Epoch 28: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.93it/s]
 
[028|00/05] ---> 0.7635639905929565
 
Epoch 29: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[029|00/05] ---> 0.771385669708252
 
Epoch 30: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.88it/s]
 
[030|00/05] ---> 0.7738001346588135
 
Epoch 31: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.80it/s]
 
[031|00/05] ---> 0.7791115641593933
 
Epoch 32: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.91it/s]
 
[032|00/05] ---> 0.7889382243156433
 
Epoch 33: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.93it/s]
 
[033|00/05] ---> 0.7958590984344482
 
Epoch 34: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[034|00/05] ---> 0.7991306781768799
 
Epoch 35: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[035|00/05] ---> 0.8023709058761597
 
Epoch 36: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[036|00/05] ---> 0.805314302444458
 
Epoch 37: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[037|00/05] ---> 0.8090444207191467
 
Epoch 38: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.93it/s]
 
[038|00/05] ---> 0.8150938749313354
 
Epoch 39: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.86it/s]
 
[039|00/05] ---> 0.8154171705245972
 
Epoch 40: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[040|00/05] ---> 0.8187193274497986
 
Epoch 41: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[041|00/05] ---> 0.8224185109138489
 
Epoch 42: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[042|01/05] -/-> 0.8216696977615356
 
Epoch 43: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[043|01/05] ---> 0.826880156993866
 
Epoch 44: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.83it/s]
 
[044|00/05] ---> 0.8289307355880737
 
Epoch 45: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.88it/s]
 
[045|00/05] ---> 0.8291863203048706
 
Epoch 46: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[046|00/05] ---> 0.831091582775116
 
Epoch 47: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[047|01/05] -/-> 0.8306527137756348
 
Epoch 48: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[048|01/05] ---> 0.8328233361244202
 
Epoch 49: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[049|00/05] ---> 0.8374689221382141
 
Epoch 50: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.98it/s]
 
[050|00/05] ---> 0.8375868201255798
 
Epoch 51: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[051|00/05] ---> 0.8388531804084778
 
Epoch 52: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.99it/s]
 
[052|00/05] ---> 0.8412740230560303
 
Epoch 53: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.97it/s]
 
[053|01/05] -/-> 0.8408184051513672
 
Epoch 54: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[054|01/05] ---> 0.842070460319519
 
Epoch 55: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.98it/s]
 
[055|00/05] ---> 0.8454650640487671
 
Epoch 56: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.98it/s]
 
[056|01/05] -/-> 0.8440107107162476
 
Epoch 57: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.89it/s]
 
[057|02/05] -/-> 0.8436395525932312
 
Epoch 58: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 8.01it/s]
 
[058|02/05] ---> 0.8473502993583679
 
Epoch 59: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[059|00/05] ---> 0.8476517796516418
 
Epoch 60: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[060|00/05] ---> 0.849284291267395
 
Epoch 61: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[061|01/05] -/-> 0.8487457633018494
 
Epoch 62: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[062|01/05] ---> 0.8500452041625977
 
Epoch 63: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[063|00/05] ---> 0.852530837059021
 
Epoch 64: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[064|00/05] ---> 0.8543952107429504
 
Epoch 65: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.93it/s]
 
[065|00/05] ---> 0.8544981479644775
 
Epoch 66: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[066|01/05] -/-> 0.8518384099006653
 
Epoch 67: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[067|01/05] ---> 0.857428252696991
 
Epoch 68: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.99it/s]
 
[068|01/05] -/-> 0.854919970035553
 
Epoch 69: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.87it/s]
 
[069|02/05] -/-> 0.8563439249992371
 
Epoch 70: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.97it/s]
 
[070|02/05] ---> 0.8579804301261902
 
Epoch 71: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 8.01it/s]
 
[071|00/05] ---> 0.8585301637649536
 
Epoch 72: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.98it/s]
 
[072|01/05] -/-> 0.8584513664245605
 
Epoch 73: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[073|02/05] -/-> 0.8578740954399109
 
Epoch 74: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[074|02/05] ---> 0.8608970642089844
 
Epoch 75: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[075|00/05] ---> 0.861842691898346
 
Epoch 76: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[076|01/05] -/-> 0.8570398688316345
 
Epoch 77: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[077|02/05] -/-> 0.8571425676345825
 
Epoch 78: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[078|03/05] -/-> 0.8587493896484375
 
Epoch 79: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.91it/s]
 
[079|04/05] -/-> 0.8588473796844482
 
Epoch 80: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.84it/s]
 
[080|05/05] -/-> 0.8615057468414307
 
Epoch 81: 3%|██▉ | 2/70 [00:00<00:05, 11.72it/s]
 
Restoring best model after lr decay! 0.861506 ---> 0.861843
 
Epoch 81: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
Epoch 81: reducing learning rate of group 0 to 1.5000e-03.
[081|01/05] -/-> 0.860276460647583
 
Epoch 82: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 8.01it/s]
 
[082|01/05] ---> 0.8669542074203491
 
Epoch 83: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[083|00/05] ---> 0.869543194770813
 
Epoch 84: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.97it/s]
 
[084|00/05] ---> 0.8696644306182861
 
Epoch 85: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.88it/s]
 
[085|01/05] -/-> 0.8692446947097778
 
Epoch 86: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[086|02/05] -/-> 0.8671972751617432
 
Epoch 87: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[087|03/05] -/-> 0.8669502139091492
 
Epoch 88: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.89it/s]
 
[088|03/05] ---> 0.8701958060264587
 
Epoch 89: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.98it/s]
 
[089|01/05] -/-> 0.8686895370483398
 
Epoch 90: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 8.00it/s]
 
[090|02/05] -/-> 0.8690611720085144
 
Epoch 91: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.97it/s]
 
[091|02/05] ---> 0.8708689212799072
 
Epoch 92: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[092|01/05] -/-> 0.8690249919891357
 
Epoch 93: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.86it/s]
 
[093|01/05] ---> 0.8718857169151306
 
Epoch 94: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[094|01/05] -/-> 0.8689351677894592
 
Epoch 95: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[095|02/05] -/-> 0.8676784634590149
 
Epoch 96: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.99it/s]
 
[096|03/05] -/-> 0.8702613711357117
 
Epoch 97: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[097|04/05] -/-> 0.8696006536483765
 
Epoch 98: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[098|05/05] -/-> 0.8674653172492981
 
Epoch 99: 3%|██▉ | 2/70 [00:00<00:05, 11.36it/s]
 
Restoring best model after lr decay! 0.867465 ---> 0.871886
 
Epoch 99: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
Epoch 99: reducing learning rate of group 0 to 4.5000e-04.
[099|01/05] -/-> 0.8695486187934875
 
Epoch 100: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.99it/s]
 
[100|01/05] ---> 0.8724097609519958
 
Epoch 101: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[101|00/05] ---> 0.8728979825973511
 
Epoch 102: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.99it/s]
 
[102|01/05] -/-> 0.8709148168563843
 
Epoch 103: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[103|02/05] -/-> 0.8707735538482666
 
Epoch 104: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.89it/s]
 
[104|03/05] -/-> 0.8714966177940369
 
Epoch 105: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[105|03/05] ---> 0.8731143474578857
 
Epoch 106: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[106|01/05] -/-> 0.8703715801239014
 
Epoch 107: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[107|02/05] -/-> 0.8703261017799377
 
Epoch 108: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[108|03/05] -/-> 0.8681497573852539
 
Epoch 109: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.97it/s]
 
[109|03/05] ---> 0.8755767941474915
 
Epoch 110: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[110|01/05] -/-> 0.8728983998298645
 
Epoch 111: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[111|02/05] -/-> 0.8729153275489807
 
Epoch 112: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[112|03/05] -/-> 0.8735064268112183
 
Epoch 113: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.87it/s]
 
[113|04/05] -/-> 0.8732220530509949
 
Epoch 114: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 8.03it/s]
 
[114|05/05] -/-> 0.8716174364089966
Restoring best model after lr decay! 0.871617 ---> 0.875577
Restoring best model! 0.875577 ---> 0.875577
Returning only test sampler with repeats...
 
d:\inception_loop\original_code\lurz_2020_code\lurz2020\utility\measures.py:154: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray
return np.array(repeated_inputs), np.array(repeated_outputs)
d:\inception_loop\original_code\lurz_2020_code\lurz2020\utility\measures.py:239: FutureWarning: `rcond` parameter will change to the default of machine precision times ``max(M, N)`` where M and N are the input matrix dimensions.
To use the future default and silence this warning we advise to pass `rcond=None`, to keep using the old, explicitly pass `rcond=-1`.
oracle_performance, _, _, _ = np.linalg.lstsq(np.hstack(oracles)[:, np.newaxis], np.hstack(test_correlation))
 
-----------------------------------------
Model instance #0
Correlation (train set): 0.894
Correlation (validation set): 0.876
Correlation (test set): 0.834
-----------------------------------------
Fraction oracle (test set): 0.882
 
Epoch 1: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.39it/s]
 
[001|00/05] ---> 0.1580345332622528
 
Epoch 2: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.52it/s]
 
[002|00/05] ---> 0.19861944019794464
 
Epoch 3: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.57it/s]
 
[003|00/05] ---> 0.23044627904891968
 
Epoch 4: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.49it/s]
 
[004|00/05] ---> 0.2639283239841461
 
Epoch 5: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.57it/s]
 
[005|00/05] ---> 0.30376332998275757
 
Epoch 6: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.63it/s]
 
[006|00/05] ---> 0.3487289249897003
 
Epoch 7: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.64it/s]
 
[007|00/05] ---> 0.3859824538230896
 
Epoch 8: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.68it/s]
 
[008|00/05] ---> 0.426141619682312
 
Epoch 9: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.64it/s]
 
[009|00/05] ---> 0.4594329595565796
 
Epoch 10: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.71it/s]
 
[010|00/05] ---> 0.49267202615737915
 
Epoch 11: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.68it/s]
 
[011|00/05] ---> 0.5215442180633545
 
Epoch 12: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.61it/s]
 
[012|00/05] ---> 0.5491074323654175
 
Epoch 13: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.79it/s]
 
[013|00/05] ---> 0.572160005569458
 
Epoch 14: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.75it/s]
 
[014|00/05] ---> 0.5945277214050293
 
Epoch 15: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.81it/s]
 
[015|00/05] ---> 0.6128073930740356
 
Epoch 16: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.79it/s]
 
[016|00/05] ---> 0.6317834854125977
 
Epoch 17: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.81it/s]
 
[017|00/05] ---> 0.6489531993865967
 
Epoch 18: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.80it/s]
 
[018|00/05] ---> 0.6632962822914124
 
Epoch 19: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.82it/s]
 
[019|00/05] ---> 0.6779647469520569
 
Epoch 20: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.80it/s]
 
[020|00/05] ---> 0.6921870112419128
 
Epoch 21: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.85it/s]
 
[021|00/05] ---> 0.7032535076141357
 
Epoch 22: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.73it/s]
 
[022|00/05] ---> 0.7111290693283081
 
Epoch 23: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.88it/s]
 
[023|00/05] ---> 0.7225935459136963
 
Epoch 24: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.80it/s]
 
[024|00/05] ---> 0.7316453456878662
 
Epoch 25: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[025|00/05] ---> 0.7352998852729797
 
Epoch 26: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.77it/s]
 
[026|00/05] ---> 0.745086669921875
 
Epoch 27: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.76it/s]
 
[027|00/05] ---> 0.7525826692581177
 
Epoch 28: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.86it/s]
 
[028|00/05] ---> 0.7625500559806824
 
Epoch 29: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.91it/s]
 
[029|00/05] ---> 0.7694615125656128
 
Epoch 30: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[030|00/05] ---> 0.7714134454727173
 
Epoch 31: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.86it/s]
 
[031|00/05] ---> 0.7747859954833984
 
Epoch 32: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[032|00/05] ---> 0.7836732864379883
 
Epoch 33: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[033|00/05] ---> 0.7902028560638428
 
Epoch 34: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.76it/s]
 
[034|00/05] ---> 0.7946433424949646
 
Epoch 35: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.91it/s]
 
[035|00/05] ---> 0.796635091304779
 
Epoch 36: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[036|00/05] ---> 0.7995885014533997
 
Epoch 37: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.89it/s]
 
[037|00/05] ---> 0.8036898374557495
 
Epoch 38: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.91it/s]
 
[038|00/05] ---> 0.8101187944412231
 
Epoch 39: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.91it/s]
 
[039|00/05] ---> 0.8115317821502686
 
Epoch 40: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.87it/s]
 
[040|00/05] ---> 0.8150328397750854
 
Epoch 41: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.93it/s]
 
[041|00/05] ---> 0.8190879821777344
 
Epoch 42: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.88it/s]
 
[042|01/05] -/-> 0.8190643787384033
 
Epoch 43: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[043|01/05] ---> 0.8251676559448242
 
Epoch 44: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[044|00/05] ---> 0.8256781101226807
 
Epoch 45: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.91it/s]
 
[045|00/05] ---> 0.8261960744857788
 
Epoch 46: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.85it/s]
 
[046|00/05] ---> 0.8292267322540283
 
Epoch 47: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[047|01/05] -/-> 0.8281978964805603
 
Epoch 48: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]
 
[048|01/05] ---> 0.8310856819152832
 
Epoch 49: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.91it/s]
 
[049|00/05] ---> 0.8358081579208374
 
Epoch 50: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.77it/s]
 
[050|01/05] -/-> 0.8351814150810242
 
Epoch 51: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[051|01/05] ---> 0.8360433578491211
 
Epoch 52: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.97it/s]
 
[052|00/05] ---> 0.8378962278366089
 
Epoch 53: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.94it/s]
 
[053|01/05] -/-> 0.8377162218093872
 
Epoch 54: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.89it/s]
 
[054|01/05] ---> 0.838144838809967
 
Epoch 55: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.93it/s]
 
[055|00/05] ---> 0.8413101434707642
 
Epoch 56: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.89it/s]
 
[056|01/05] -/-> 0.8400571346282959
 
Epoch 57: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.88it/s]
 
[057|02/05] -/-> 0.8398607969284058
 
Epoch 58: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:09<00:00, 7.77it/s]
 
[058|02/05] ---> 0.8432126045227051
 
Epoch 59: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.86it/s]
 
[059|00/05] ---> 0.8433082103729248
 
Epoch 60: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[060|00/05] ---> 0.8449887037277222
 
Epoch 61: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.98it/s]
 
[061|01/05] -/-> 0.8441798686981201
 
Epoch 62: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.92it/s]
 
[062|01/05] ---> 0.8456770777702332
 
Epoch 63: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.95it/s]
 
[063|00/05] ---> 0.8475640416145325
 
Epoch 64: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[064|00/05] ---> 0.8494112491607666
 
Epoch 65: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.82it/s]
 
[065|00/05] ---> 0.8501414060592651
 
Epoch 66: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.96it/s]
 
[066|01/05] -/-> 0.8465275168418884
 
Epoch 67: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.93it/s]
 
[067|01/05] ---> 0.8522076606750488
 
Epoch 68: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████| 70/70 [00:08<00:00, 7.90it/s]