warsztaty-B/P4. Matrix Factorization.ipynb
2020-06-13 15:34:33 +02:00

201 KiB

Self made SVD

import helpers
import pandas as pd
import numpy as np
import scipy.sparse as sparse
from collections import defaultdict
from itertools import chain
import random

train_read=pd.read_csv('./Datasets/ml-100k/train.csv', sep='\t', header=None)
test_read=pd.read_csv('./Datasets/ml-100k/test.csv', sep='\t', header=None)
train_ui, test_ui, user_code_id, user_id_code, item_code_id, item_id_code = helpers.data_to_csr(train_read, test_read)
# Done similarly to https://github.com/albertauyeung/matrix-factorization-in-python
from tqdm import tqdm

class SVD():
    
    def __init__(self, train_ui, learning_rate, regularization, nb_factors, iterations):
        self.train_ui=train_ui
        self.uir=list(zip(*[train_ui.nonzero()[0],train_ui.nonzero()[1], train_ui.data]))
        
        self.learning_rate=learning_rate
        self.regularization=regularization
        self.iterations=iterations
        self.nb_users, self.nb_items=train_ui.shape
        self.nb_ratings=train_ui.nnz
        self.nb_factors=nb_factors
        
        self.Pu=np.random.normal(loc=0, scale=1./self.nb_factors, size=(self.nb_users, self.nb_factors))
        self.Qi=np.random.normal(loc=0, scale=1./self.nb_factors, size=(self.nb_items, self.nb_factors))

    def train(self, test_ui=None):
        if test_ui!=None:
            self.test_uir=list(zip(*[test_ui.nonzero()[0],test_ui.nonzero()[1], test_ui.data]))
            
        self.learning_process=[]
        pbar = tqdm(range(self.iterations))
        for i in pbar:
            pbar.set_description(f'Epoch {i} RMSE: {self.learning_process[-1][1] if i>0 else 0}. Training epoch {i+1}...')
            np.random.shuffle(self.uir)
            self.sgd(self.uir)
            if test_ui==None:
                self.learning_process.append([i+1, self.RMSE_total(self.uir)])
            else:
                self.learning_process.append([i+1, self.RMSE_total(self.uir), self.RMSE_total(self.test_uir)])
    
    def sgd(self, uir):
        
        for u, i, score in uir:
            # Computer prediction and error
            prediction = self.get_rating(u,i)
            e = (score - prediction)
            
            # Update user and item latent feature matrices
            Pu_update=self.learning_rate * (e * self.Qi[i] - self.regularization * self.Pu[u])
            Qi_update=self.learning_rate * (e * self.Pu[u] - self.regularization * self.Qi[i])
            
            self.Pu[u] += Pu_update
            self.Qi[i] += Qi_update
        
    def get_rating(self, u, i):
        prediction = self.Pu[u].dot(self.Qi[i].T)
        return prediction
    
    def RMSE_total(self, uir):
        RMSE=0
        for u,i, score in uir:
            prediction = self.get_rating(u,i)
            RMSE+=(score - prediction)**2
        return np.sqrt(RMSE/len(uir))
    
    def estimations(self):
        self.estimations=\
        np.dot(self.Pu,self.Qi.T)

    def recommend(self, user_code_id, item_code_id, topK=10):
        
        top_k = defaultdict(list)
        for nb_user, user in enumerate(self.estimations):
            
            user_rated=self.train_ui.indices[self.train_ui.indptr[nb_user]:self.train_ui.indptr[nb_user+1]]
            for item, score in enumerate(user):
                if item not in user_rated and not np.isnan(score):
                    top_k[user_code_id[nb_user]].append((item_code_id[item], score))
        result=[]
        # Let's choose k best items in the format: (user, item1, score1, item2, score2, ...)
        for uid, item_scores in top_k.items():
            item_scores.sort(key=lambda x: x[1], reverse=True)
            result.append([uid]+list(chain(*item_scores[:topK])))
        return result
    
    def estimate(self, user_code_id, item_code_id, test_ui):
        result=[]
        for user, item in zip(*test_ui.nonzero()):
            result.append([user_code_id[user], item_code_id[item], 
                           self.estimations[user,item] if not np.isnan(self.estimations[user,item]) else 1])
        return result
model=SVD(train_ui, learning_rate=0.005, regularization=0.02, nb_factors=100, iterations=40)
model.train(test_ui)
Epoch 39 RMSE: 0.7486867798606991. Training epoch 40...: 100%|██████████| 40/40 [02:44<00:00,  4.12s/it]
import matplotlib.pyplot as plt

df=pd.DataFrame(model.learning_process).iloc[:,:2]
df.columns=['epoch', 'train_RMSE']
plt.plot('epoch', 'train_RMSE', data=df, color='blue')
plt.legend()
<matplotlib.legend.Legend at 0x7f8c296576d8>
import matplotlib.pyplot as plt

df=pd.DataFrame(model.learning_process[10:], columns=['epoch', 'train_RMSE', 'test_RMSE'])
plt.plot('epoch', 'train_RMSE', data=df, color='blue')
plt.plot('epoch', 'test_RMSE', data=df, color='yellow', linestyle='dashed')
plt.legend()
<matplotlib.legend.Legend at 0x7f8c20ecbb38>

Saving and evaluating recommendations

model.estimations()

top_n=pd.DataFrame(model.recommend(user_code_id, item_code_id, topK=10))

top_n.to_csv('Recommendations generated/ml-100k/Self_SVD_reco.csv', index=False, header=False)

estimations=pd.DataFrame(model.estimate(user_code_id, item_code_id, test_ui))
estimations.to_csv('Recommendations generated/ml-100k/Self_SVD_estimations.csv', index=False, header=False)
import evaluation_measures as ev

estimations_df=pd.read_csv('Recommendations generated/ml-100k/Self_SVD_estimations.csv', header=None)
reco=np.loadtxt('Recommendations generated/ml-100k/Self_SVD_reco.csv', delimiter=',')

ev.evaluate(test=pd.read_csv('./Datasets/ml-100k/test.csv', sep='\t', header=None),
            estimations_df=estimations_df, 
            reco=reco,
            super_reactions=[4,5])
943it [00:00, 4196.25it/s]
RMSE MAE precision recall F_1 F_05 precision_super recall_super NDCG mAP MRR LAUC HR F_2 Whole_average Reco in test Test coverage Shannon Gini
0 0.914024 0.717181 0.104454 0.043836 0.053331 0.070716 0.094528 0.076751 0.106711 0.050532 0.194366 0.518647 0.479321 0.045941 0.153261 0.853765 0.148629 3.836334 0.973007
import imp
imp.reload(ev)

import evaluation_measures as ev
dir_path="Recommendations generated/ml-100k/"
super_reactions=[4,5]
test=pd.read_csv('./Datasets/ml-100k/test.csv', sep='\t', header=None)

ev.evaluate_all(test, dir_path, super_reactions)
943it [00:00, 4120.95it/s]
943it [00:00, 4286.76it/s]
943it [00:00, 4253.65it/s]
943it [00:00, 4386.02it/s]
943it [00:00, 4497.82it/s]
943it [00:00, 4289.74it/s]
943it [00:00, 4682.40it/s]
943it [00:00, 4255.79it/s]
943it [00:00, 3942.08it/s]
943it [00:00, 4136.45it/s]
943it [00:00, 3908.85it/s]
943it [00:00, 3779.61it/s]
943it [00:00, 4456.49it/s]
943it [00:00, 3504.99it/s]
943it [00:00, 3182.20it/s]
943it [00:00, 3850.55it/s]
943it [00:00, 3881.66it/s]
943it [00:00, 4822.70it/s]
Model RMSE MAE precision recall F_1 F_05 precision_super recall_super NDCG mAP MRR LAUC HR F_2 Whole_average Reco in test Test coverage Shannon Gini
0 Self_RP3Beta 3.702928 3.527713 0.322694 0.216069 0.212152 0.247538 0.245279 0.284983 0.388271 0.248239 0.636318 0.605683 0.910923 0.205450 0.376967 0.999788 0.178932 4.549663 0.950182
0 Self_P3 3.702446 3.527273 0.282185 0.192092 0.186749 0.216980 0.204185 0.240096 0.339114 0.204905 0.572157 0.593544 0.875928 0.181702 0.340803 1.000000 0.077201 3.875892 0.974947
0 Self_TopPop 2.508258 2.217909 0.188865 0.116919 0.118732 0.141584 0.130472 0.137473 0.214651 0.111707 0.400939 0.555546 0.765642 0.112750 0.249607 1.000000 0.038961 3.159079 0.987317
0 Self_SVDBaseline 3.645666 3.480246 0.137858 0.082398 0.084151 0.101063 0.107940 0.109393 0.164477 0.082973 0.342374 0.538097 0.638388 0.079860 0.205748 0.999894 0.279221 5.159076 0.907220
0 Ready_SVD 0.952563 0.750158 0.094486 0.046274 0.051389 0.065625 0.082618 0.074150 0.109320 0.051383 0.240693 0.519849 0.475080 0.046237 0.154759 0.993425 0.206349 4.442996 0.952832
0 Self_SVD 0.914024 0.717181 0.104454 0.043836 0.053331 0.070716 0.094528 0.076751 0.106711 0.050532 0.194366 0.518647 0.479321 0.045941 0.153261 0.853765 0.148629 3.836334 0.973007
0 Ready_Baseline 0.949459 0.752487 0.091410 0.037652 0.046030 0.061286 0.079614 0.056463 0.095957 0.043178 0.198193 0.515501 0.437964 0.039549 0.141900 1.000000 0.033911 2.836513 0.991139
0 Self_KNNSurprisetask 0.946255 0.745209 0.083457 0.032848 0.041227 0.055493 0.074785 0.048890 0.089577 0.040902 0.189057 0.513076 0.417815 0.034996 0.135177 0.888547 0.130592 3.611806 0.978659
0 Self_TopRated 2.508258 2.217909 0.079321 0.032667 0.039983 0.053170 0.068884 0.048582 0.070766 0.027602 0.114790 0.512943 0.411453 0.034385 0.124546 1.000000 0.024531 2.761238 0.991660
0 Ready_SVDBiased 0.942141 0.742760 0.081230 0.032344 0.040302 0.053932 0.072639 0.051126 0.087552 0.039346 0.191285 0.512818 0.416755 0.034405 0.134478 0.997667 0.165224 4.147579 0.964690
0 Self_GlobalAvg 1.125760 0.943534 0.061188 0.025968 0.031383 0.041343 0.040558 0.032107 0.067695 0.027470 0.171187 0.509546 0.384942 0.027213 0.118383 1.000000 0.025974 2.711772 0.992003
0 Ready_Random 1.525633 1.225714 0.047720 0.022049 0.025494 0.032845 0.029077 0.025015 0.051757 0.019242 0.128181 0.507543 0.327678 0.022628 0.103269 0.987275 0.184704 5.105122 0.906561
0 Ready_I-KNN 1.030386 0.813067 0.026087 0.006908 0.010593 0.016046 0.021137 0.009522 0.024214 0.008958 0.048068 0.499885 0.154825 0.008007 0.069521 0.402333 0.434343 5.133650 0.877999
0 Ready_I-KNNBaseline 0.935327 0.737424 0.002545 0.000755 0.001105 0.001602 0.002253 0.000930 0.003444 0.001362 0.011760 0.496724 0.021209 0.000862 0.045379 0.482821 0.059885 2.232578 0.994487
0 Ready_U-KNN 1.023495 0.807913 0.000742 0.000205 0.000305 0.000449 0.000536 0.000198 0.000845 0.000274 0.002744 0.496441 0.007423 0.000235 0.042533 0.602121 0.010823 2.089186 0.995706
0 Self_BaselineIU 0.958136 0.754051 0.000954 0.000188 0.000298 0.000481 0.000644 0.000223 0.001043 0.000335 0.003348 0.496433 0.009544 0.000220 0.042809 0.699046 0.005051 1.945910 0.995669
0 Self_BaselineUI 0.967585 0.762740 0.000954 0.000170 0.000278 0.000463 0.000644 0.000189 0.000752 0.000168 0.001677 0.496424 0.009544 0.000201 0.042622 0.600530 0.005051 1.803126 0.996380
0 Self_IKNN 1.018363 0.808793 0.000318 0.000108 0.000140 0.000189 0.000000 0.000000 0.000214 0.000037 0.000368 0.496391 0.003181 0.000118 0.041755 0.392153 0.115440 4.174741 0.965327

Embeddings

x=np.array([[1,2],[3,4]])
display(x)
x/np.linalg.norm(x, axis=1)[:,None]
array([[1, 2],
       [3, 4]])
array([[0.4472136 , 0.89442719],
       [0.6       , 0.8       ]])
item=random.choice(list(set(train_ui.indices)))

embeddings_norm=model.Qi/np.linalg.norm(model.Qi, axis=1)[:,None] # we do not mean-center here
# omitting normalization also makes sense, but items with a greater magnitude will be recommended more often

similarity_scores=np.dot(embeddings_norm,embeddings_norm[item].T)
top_similar_items=pd.DataFrame(enumerate(similarity_scores), columns=['code', 'score'])\
.sort_values(by=['score'], ascending=[False])[:10]

top_similar_items['item_id']=top_similar_items['code'].apply(lambda x: item_code_id[x])

items=pd.read_csv('./Datasets/ml-100k/movies.csv')

result=pd.merge(top_similar_items, items, left_on='item_id', right_on='id')

result
code score item_id id title genres
0 1506 1.000000 1507 1507 Three Lives and Only One Death (1996) Comedy
1 1321 0.981003 1322 1322 Metisse (Café au Lait) (1993) Comedy
2 1222 0.980761 1223 1223 King of the Hill (1993) Drama
3 969 0.979522 970 970 Hear My Song (1991) Comedy
4 1554 0.978669 1555 1555 Secret Adventures of Tom Thumb, The (1993) Adventure, Children's
5 118 0.977169 119 119 Maya Lin: A Strong Clear Vision (1994) Documentary
6 1371 0.976938 1372 1372 Stranger, The (1994) Action
7 1378 0.976718 1379 1379 Love and Other Catastrophes (1996) Romance
8 1168 0.976435 1169 1169 Fresh (1994) Drama
9 821 0.976383 822 822 Faces (1968) Drama

project task 5: implement SVD on top baseline (as it is in Surprise library)

# making changes to our implementation by considering additional parameters in the gradient descent procedure 
# seems to be the fastest option
# please save the output in 'Recommendations generated/ml-100k/Self_SVDBaseline_reco.csv' and
# 'Recommendations generated/ml-100k/Self_SVDBaseline_estimations.csv'
# Done similarly to https://github.com/albertauyeung/matrix-factorization-in-python

## SOLUTION TASK 5

from tqdm import tqdm


class SVDbaseline():
    def __init__(self, train_ui, learning_rate, regularization, nb_factors, iterations):
        self.train_ui = train_ui
        self.uir = list(zip(*[train_ui.nonzero()[0], train_ui.nonzero()[1], train_ui.data]))
        
        self.learning_rate = learning_rate
        self.regularization = regularization
        self.iterations = iterations
        self.nb_users, self.nb_items = train_ui.shape
        self.nb_ratings = train_ui.nnz
        self.nb_factors = nb_factors
        
        self.Bu = np.random.normal(loc = 0, scale = 1./self.nb_factors, size = (self.nb_users, self.nb_factors))
        self.Bi = np.random.normal(loc = 0, scale = 1./self.nb_factors, size = (self.nb_items, self.nb_factors))
        
        self.Pu = np.random.normal(loc = 0, scale = 1./self.nb_factors, size = (self.nb_users, self.nb_factors))
        self.Qi = np.random.normal(loc = 0, scale = 1./self.nb_factors, size = (self.nb_items, self.nb_factors))
        
        self.bias_i = np.zeros(self.nb_items)
        self.bias_u = np.zeros(self.nb_users)

        
    def train(self, test_ui = None):
        if test_ui != None:
            self.test_uir = list(zip(*[test_ui.nonzero()[0],test_ui.nonzero()[1], test_ui.data]))
            
        self.learning_process = []
        pbar = tqdm(range(self.iterations))
        
        for i in pbar:
            pbar.set_description(f'Epoch {i} RMSE: {self.learning_process[-1][1] if i > 0 else 0}. Training epoch {i + 1}...')
            np.random.shuffle(self.uir)
            self.sgd(self.uir)
            
            if test_ui == None:
                self.learning_process.append([i + 1, self.RMSE_total(self.uir)])
            else:
                self.learning_process.append([i + 1, self.RMSE_total(self.uir), self.RMSE_total(self.test_uir)])
    
    
    def sgd(self, uir):
        for u, i, score in uir:
            prediction = self.get_rating(u,i)
            e = (score - prediction)
            
            Pu_update = self.learning_rate * (e * self.Qi[i] - self.regularization * self.Pu[u])
            Qi_update = self.learning_rate * (e * self.Pu[u] - self.regularization * self.Qi[i])
            
            Bu_update = self.learning_rate * (e - self.regularization * self.Bu[u])
            Bi_update = self.learning_rate * (e - self.regularization * self.Bi[i])
            
            self.Bu[u] += Bu_update
            self.Bi[i] += Bi_update

            self.Pu[u] += Pu_update
            self.Qi[i] += Qi_update
    
    
    def get_rating(self, u, i):
        prediction = self.Bu[u] + self.Bi[i] + self.Pu[u].dot(self.Qi[i].T)
        return prediction
    
    
    def RMSE_total(self, uir):
        RMSE = 0
        for u,i, score in uir:
            prediction = self.get_rating(u,i)
            RMSE += (score - prediction) ** 2
        return np.sqrt(RMSE / len(uir))
    
    
    def estimations(self):
        self.estimations=\
        self.bias_u[:, np.newaxis] + self.bias_i[np.newaxis:,] + np.dot(self.Pu, self.Qi.T)

        
    def recommend(self, user_code_id, item_code_id, topK = 10):
        top_k = defaultdict(list)
        for nb_user, user in enumerate(self.estimations):
            user_rated = self.train_ui.indices[self.train_ui.indptr[nb_user]:self.train_ui.indptr[nb_user + 1]]
            for item, score in enumerate(user):
                if item not in user_rated and not np.isnan(score):
                    top_k[user_code_id[nb_user]].append((item_code_id[item], score))
        result = []
        for uid, item_scores in top_k.items():
            item_scores.sort(key = lambda x: x[1], reverse = True)
            result.append([uid] + list(chain(*item_scores[:topK])))
        return result
    
    
    def estimate(self, user_code_id, item_code_id, test_ui):
        result = []
        for user, item in zip(*test_ui.nonzero()):
            result.append([user_code_id[user], item_code_id[item], 
                           self.estimations[user, item] if not np.isnan(self.estimations[user, item]) else 1])
        return result
model = SVDbaseline(train_ui, learning_rate = 0.005, regularization = 0.02, nb_factors = 100, iterations = 40)
model.train(test_ui)
Epoch 1 RMSE: [1.56608586 1.56623479 1.56621037 1.56632553 1.56623458 1.56635299/it]
 1.56619416 1.56628788 1.56607805 1.56610718 1.5661098  1.56609704
 1.566004   1.56635197 1.56629583 1.56637115 1.56612989 1.56611816
 1.56608223 1.56620134 1.56614774 1.56600187 1.56606093 1.56632669
 1.56606789 1.56604036 1.56625598 1.56613531 1.56633648 1.56600872
 1.56593977 1.56626981 1.56613995 1.5660633  1.56606053 1.56622139
 1.56613882 1.56602313 1.56648528 1.56610116 1.56656389 1.56608295
 1.56625392 1.56620991 1.56619335 1.56639951 1.56619406 1.56632219
 1.56615928 1.56610521 1.5663387  1.56590644 1.56619503 1.56621932
 1.56632845 1.56634084 1.56622762 1.56632436 1.56645543 1.56621592
 1.56602816 1.56626736 1.56624728 1.56613085 1.56611973 1.56632436
 1.56616877 1.56618865 1.56609637 1.56619961 1.56622677 1.5663226
 1.56617601 1.56629154 1.56614605 1.56628346 1.56615301 1.56624603
 1.56635585 1.56632165 1.5663433  1.56628036 1.56619891 1.56619768
 1.56590739 1.56620672 1.56625369 1.56612506 1.5659569  1.56588453
 1.56651464 1.5662788  1.56625525 1.566122   1.56609851 1.5663006
Epoch 1 RMSE: [1.56608586 1.56623479 1.56621037 1.56632553 1.56623458 1.56635299   | 1/40 [00:05<03:32,  5.44s/it]
 1.56619416 1.56628788 1.56607805 1.56610718 1.5661098  1.56609704
 1.566004   1.56635197 1.56629583 1.56637115 1.56612989 1.56611816
 1.56608223 1.56620134 1.56614774 1.56600187 1.56606093 1.56632669
 1.56606789 1.56604036 1.56625598 1.56613531 1.56633648 1.56600872
 1.56593977 1.56626981 1.56613995 1.5660633  1.56606053 1.56622139
 1.56613882 1.56602313 1.56648528 1.56610116 1.56656389 1.56608295
 1.56625392 1.56620991 1.56619335 1.56639951 1.56619406 1.56632219
 1.56615928 1.56610521 1.5663387  1.56590644 1.56619503 1.56621932
 1.56632845 1.56634084 1.56622762 1.56632436 1.56645543 1.56621592
 1.56602816 1.56626736 1.56624728 1.56613085 1.56611973 1.56632436
 1.56616877 1.56618865 1.56609637 1.56619961 1.56622677 1.5663226
 1.56617601 1.56629154 1.56614605 1.56628346 1.56615301 1.56624603
 1.56635585 1.56632165 1.5663433  1.56628036 1.56619891 1.56619768
 1.56590739 1.56620672 1.56625369 1.56612506 1.5659569  1.56588453
 1.56651464 1.5662788  1.56625525 1.566122   1.56609851 1.5663006
Epoch 2 RMSE: [1.24155256 1.24161211 1.24160099 1.24167888 1.24172228 1.2417441    | 2/40 [00:10<03:25,  5.42s/it]
 1.24165504 1.24175179 1.24155206 1.2415503  1.24154766 1.24165204
 1.24151588 1.24175578 1.24168565 1.24174765 1.24165319 1.24164559
 1.24154743 1.24165309 1.24161726 1.24154997 1.24159932 1.24172956
 1.24156102 1.24148321 1.24170529 1.24160801 1.24170631 1.24156325
 1.24146188 1.2416245  1.24160268 1.24154123 1.24154621 1.24159064
 1.24162574 1.24147559 1.24180757 1.2415933  1.24186149 1.24156608
 1.24163722 1.2416763  1.24158823 1.24172209 1.24162708 1.24166432
 1.24165274 1.24154747 1.2417554  1.24148976 1.24161473 1.24160402
 1.24175115 1.24161673 1.24159559 1.24172175 1.24183389 1.24161557
 1.24160484 1.24161826 1.24167579 1.24158516 1.24162002 1.24171992
 1.24154326 1.24161618 1.24152588 1.24164272 1.24159967 1.2416287
 1.24160281 1.24171739 1.24167929 1.24169227 1.24164622 1.24168539
 1.24171969 1.24165194 1.24177983 1.2416788  1.24168927 1.24166932
 1.24151294 1.24171813 1.24164837 1.24155666 1.24164055 1.24142973
 1.24181492 1.24172122 1.24164756 1.24160732 1.24163821 1.24175878
Epoch 2 RMSE: [1.24155256 1.24161211 1.24160099 1.24167888 1.24172228 1.2417441    | 2/40 [00:10<03:25,  5.42s/it]
 1.24165504 1.24175179 1.24155206 1.2415503  1.24154766 1.24165204
 1.24151588 1.24175578 1.24168565 1.24174765 1.24165319 1.24164559
 1.24154743 1.24165309 1.24161726 1.24154997 1.24159932 1.24172956
 1.24156102 1.24148321 1.24170529 1.24160801 1.24170631 1.24156325
 1.24146188 1.2416245  1.24160268 1.24154123 1.24154621 1.24159064
 1.24162574 1.24147559 1.24180757 1.2415933  1.24186149 1.24156608
 1.24163722 1.2416763  1.24158823 1.24172209 1.24162708 1.24166432
 1.24165274 1.24154747 1.2417554  1.24148976 1.24161473 1.24160402
 1.24175115 1.24161673 1.24159559 1.24172175 1.24183389 1.24161557
 1.24160484 1.24161826 1.24167579 1.24158516 1.24162002 1.24171992
 1.24154326 1.24161618 1.24152588 1.24164272 1.24159967 1.2416287
 1.24160281 1.24171739 1.24167929 1.24169227 1.24164622 1.24168539
 1.24171969 1.24165194 1.24177983 1.2416788  1.24168927 1.24166932
 1.24151294 1.24171813 1.24164837 1.24155666 1.24164055 1.24142973
 1.24181492 1.24172122 1.24164756 1.24160732 1.24163821 1.24175878
Epoch 3 RMSE: [1.13235324 1.13239666 1.13237121 1.13244671 1.13249999 1.13250893   | 3/40 [00:16<03:19,  5.40s/it]
 1.13245269 1.13252979 1.13237173 1.1323637  1.13236973 1.13245652
 1.13234872 1.13249684 1.13244719 1.13248902 1.13245581 1.13246051
 1.13235226 1.13245104 1.132409   1.13239075 1.13238513 1.1324869
 1.13238241 1.13230899 1.13249222 1.13241522 1.13245359 1.13237399
 1.1323043  1.13238487 1.13241407 1.13235769 1.1323626  1.13238431
 1.13239682 1.13229717 1.13253777 1.13239335 1.13256654 1.1324005
 1.13240486 1.13246688 1.13238527 1.13247623 1.13242954 1.13242152
 1.13244674 1.13234966 1.13251425 1.13234824 1.13238395 1.13240939
 1.13251224 1.1323703  1.13236787 1.13244705 1.13256574 1.13239854
 1.13242093 1.13239679 1.13246282 1.13237115 1.13242647 1.13247069
 1.13233879 1.1324038  1.13233569 1.13244437 1.13238154 1.13239616
 1.13238994 1.13248695 1.13246892 1.13244241 1.13243931 1.132471
 1.13246322 1.13242626 1.13254761 1.13241684 1.1324755  1.13243697
 1.13236307 1.13249072 1.13242897 1.13235873 1.1324652  1.13230258
 1.13254552 1.13249112 1.1324098  1.13242447 1.13243183 1.13251215
Epoch 3 RMSE: [1.13235324 1.13239666 1.13237121 1.13244671 1.13249999 1.13250893   | 3/40 [00:16<03:19,  5.40s/it]  
 1.13245269 1.13252979 1.13237173 1.1323637  1.13236973 1.13245652
 1.13234872 1.13249684 1.13244719 1.13248902 1.13245581 1.13246051
 1.13235226 1.13245104 1.132409   1.13239075 1.13238513 1.1324869
 1.13238241 1.13230899 1.13249222 1.13241522 1.13245359 1.13237399
 1.1323043  1.13238487 1.13241407 1.13235769 1.1323626  1.13238431
 1.13239682 1.13229717 1.13253777 1.13239335 1.13256654 1.1324005
 1.13240486 1.13246688 1.13238527 1.13247623 1.13242954 1.13242152
 1.13244674 1.13234966 1.13251425 1.13234824 1.13238395 1.13240939
 1.13251224 1.1323703  1.13236787 1.13244705 1.13256574 1.13239854
 1.13242093 1.13239679 1.13246282 1.13237115 1.13242647 1.13247069
 1.13233879 1.1324038  1.13233569 1.13244437 1.13238154 1.13239616
 1.13238994 1.13248695 1.13246892 1.13244241 1.13243931 1.132471
 1.13246322 1.13242626 1.13254761 1.13241684 1.1324755  1.13243697
 1.13236307 1.13249072 1.13242897 1.13235873 1.1324652  1.13230258
 1.13254552 1.13249112 1.1324098  1.13242447 1.13243183 1.13251215
Epoch 4 RMSE: [1.07466271 1.07470131 1.07467036 1.07473805 1.07478455 1.07479521   | 4/40 [00:21<03:13,  5.38s/it]
 1.07475274 1.07481765 1.07468793 1.07468635 1.07468858 1.07475369
 1.07467302 1.07476789 1.0747385  1.07475847 1.07475363 1.07476699
 1.07466799 1.07475411 1.07471104 1.07470939 1.07467998 1.07476577
 1.07469556 1.07464409 1.07478016 1.07472552 1.07473274 1.07467987
 1.07463446 1.07468298 1.07472237 1.07467416 1.0746728  1.0746933
 1.07468608 1.07462385 1.07480877 1.07469741 1.07481973 1.07472909
 1.07470395 1.07476503 1.07469568 1.07475898 1.07473831 1.07471373
 1.07473638 1.07466193 1.07479406 1.07468483 1.07467646 1.07472319
 1.07478447 1.07466565 1.07466693 1.07471768 1.07482993 1.07469847
 1.07472755 1.07469956 1.07476093 1.07467442 1.07473166 1.07475135
 1.07465189 1.07470357 1.0746559  1.07474962 1.0746867  1.07469728
 1.07469303 1.0747795  1.07475936 1.07472422 1.07473684 1.07476557
 1.07474013 1.07472305 1.07482831 1.07469053 1.07476533 1.07472113
 1.07468452 1.07477478 1.0747232  1.07467407 1.07476302 1.07464822
 1.07481145 1.07477654 1.07470011 1.07473805 1.07472823 1.0747846
Epoch 4 RMSE: [1.07466271 1.07470131 1.07467036 1.07473805 1.07478455 1.07479521   | 4/40 [00:21<03:13,  5.38s/it]
 1.07475274 1.07481765 1.07468793 1.07468635 1.07468858 1.07475369
 1.07467302 1.07476789 1.0747385  1.07475847 1.07475363 1.07476699
 1.07466799 1.07475411 1.07471104 1.07470939 1.07467998 1.07476577
 1.07469556 1.07464409 1.07478016 1.07472552 1.07473274 1.07467987
 1.07463446 1.07468298 1.07472237 1.07467416 1.0746728  1.0746933
 1.07468608 1.07462385 1.07480877 1.07469741 1.07481973 1.07472909
 1.07470395 1.07476503 1.07469568 1.07475898 1.07473831 1.07471373
 1.07473638 1.07466193 1.07479406 1.07468483 1.07467646 1.07472319
 1.07478447 1.07466565 1.07466693 1.07471768 1.07482993 1.07469847
 1.07472755 1.07469956 1.07476093 1.07467442 1.07473166 1.07475135
 1.07465189 1.07470357 1.0746559  1.07474962 1.0746867  1.07469728
 1.07469303 1.0747795  1.07475936 1.07472422 1.07473684 1.07476557
 1.07474013 1.07472305 1.07482831 1.07469053 1.07476533 1.07472113
 1.07468452 1.07477478 1.0747232  1.07467407 1.07476302 1.07464822
 1.07481145 1.07477654 1.07470011 1.07473805 1.07472823 1.0747846
Epoch 5 RMSE: [1.03800929 1.03804486 1.03801185 1.03807031 1.0381086  1.03812164   | 5/40 [00:26<03:07,  5.34s/it]
 1.03808771 1.03814441 1.03803487 1.03803894 1.03803719 1.03808587
 1.03802608 1.03809077 1.03807425 1.03807796 1.03808644 1.0381037
 1.03802003 1.03809093 1.03805006 1.03805359 1.0380156  1.03809042
 1.03803814 1.03800851 1.03810592 1.03806769 1.03806038 1.03802149
 1.03799068 1.03802478 1.03806144 1.03802258 1.03801665 1.03803593
 1.03802005 1.03798216 1.03813007 1.0380375  1.03812924 1.03808126
 1.03804579 1.03809947 1.0380401  1.03808686 1.0380806  1.0380505
 1.03806356 1.03801063 1.03811893 1.03804337 1.03801334 1.03806814
 1.03810191 1.03800634 1.03800741 1.03804284 1.03814404 1.03803731
 1.03806659 1.03804163 1.03809557 1.03801779 1.03807147 1.0380792
 1.03800162 1.03804299 1.03800969 1.03808695 1.03803135 1.038039
 1.03803494 1.0381119  1.03808788 1.0380544  1.038071   1.03809686
 1.03806571 1.03805986 1.03814968 1.03801752 1.03809431 1.03804918
 1.03803067 1.03809979 1.0380565  1.03802518 1.03809234 1.03801116
 1.03812669 1.03810362 1.03803495 1.03808056 1.03806172 1.03810283
Epoch 5 RMSE: [1.03800929 1.03804486 1.03801185 1.03807031 1.0381086  1.03812164   | 5/40 [00:26<03:07,  5.34s/it]   
 1.03808771 1.03814441 1.03803487 1.03803894 1.03803719 1.03808587
 1.03802608 1.03809077 1.03807425 1.03807796 1.03808644 1.0381037
 1.03802003 1.03809093 1.03805006 1.03805359 1.0380156  1.03809042
 1.03803814 1.03800851 1.03810592 1.03806769 1.03806038 1.03802149
 1.03799068 1.03802478 1.03806144 1.03802258 1.03801665 1.03803593
 1.03802005 1.03798216 1.03813007 1.0380375  1.03812924 1.03808126
 1.03804579 1.03809947 1.0380401  1.03808686 1.0380806  1.0380505
 1.03806356 1.03801063 1.03811893 1.03804337 1.03801334 1.03806814
 1.03810191 1.03800634 1.03800741 1.03804284 1.03814404 1.03803731
 1.03806659 1.03804163 1.03809557 1.03801779 1.03807147 1.0380792
 1.03800162 1.03804299 1.03800969 1.03808695 1.03803135 1.038039
 1.03803494 1.0381119  1.03808788 1.0380544  1.038071   1.03809686
 1.03806571 1.03805986 1.03814968 1.03801752 1.03809431 1.03804918
 1.03803067 1.03809979 1.0380565  1.03802518 1.03809234 1.03801116
 1.03812669 1.03810362 1.03803495 1.03808056 1.03806172 1.03810283
Epoch 6 RMSE: [1.01278106 1.01281346 1.01278068 1.01283119 1.01286253 1.01287725   | 6/40 [00:32<03:01,  5.34s/it]
 1.01284813 1.01289844 1.01280524 1.01281318 1.01280764 1.01284597
 1.0128004  1.01284775 1.01283798 1.01283157 1.01284598 1.01286571
 1.01279572 1.01285386 1.01281524 1.01281951 1.01278064 1.01284734
 1.01280344 1.01279181 1.01286024 1.01283408 1.01282006 1.01278895
 1.01276798 1.0127944  1.01282596 1.01279438 1.01278651 1.01280405
 1.01278447 1.01276186 1.01288362 1.01280432 1.01287541 1.01285337
 1.01281475 1.01286091 1.01280873 1.01284521 1.01284636 1.01281644
 1.01282038 1.01278519 1.01287396 1.01281957 1.01277949 1.01283511
 1.01285294 1.01277564 1.01277606 1.01280241 1.01289215 1.01280229
 1.01283142 1.01280953 1.01285489 1.01278901 1.01283634 1.01283779
 1.01277714 1.01280965 1.01278649 1.01284963 1.01280238 1.01280733
 1.01280404 1.01287196 1.01284502 1.01281565 1.01283226 1.01285444
 1.0128232  1.01282363 1.01290081 1.01277807 1.01285255 1.0128091
 1.01279976 1.01285455 1.01281843 1.01279979 1.01284806 1.01279096
 1.01287528 1.01286024 1.01279983 1.01284487 1.01282365 1.01285443
Epoch 6 RMSE: [1.01278106 1.01281346 1.01278068 1.01283119 1.01286253 1.01287725   | 6/40 [00:32<03:01,  5.34s/it]
 1.01284813 1.01289844 1.01280524 1.01281318 1.01280764 1.01284597
 1.0128004  1.01284775 1.01283798 1.01283157 1.01284598 1.01286571
 1.01279572 1.01285386 1.01281524 1.01281951 1.01278064 1.01284734
 1.01280344 1.01279181 1.01286024 1.01283408 1.01282006 1.01278895
 1.01276798 1.0127944  1.01282596 1.01279438 1.01278651 1.01280405
 1.01278447 1.01276186 1.01288362 1.01280432 1.01287541 1.01285337
 1.01281475 1.01286091 1.01280873 1.01284521 1.01284636 1.01281644
 1.01282038 1.01278519 1.01287396 1.01281957 1.01277949 1.01283511
 1.01285294 1.01277564 1.01277606 1.01280241 1.01289215 1.01280229
 1.01283142 1.01280953 1.01285489 1.01278901 1.01283634 1.01283779
 1.01277714 1.01280965 1.01278649 1.01284963 1.01280238 1.01280733
 1.01280404 1.01287196 1.01284502 1.01281565 1.01283226 1.01285444
 1.0128232  1.01282363 1.01290081 1.01277807 1.01285255 1.0128091
 1.01279976 1.01285455 1.01281843 1.01279979 1.01284806 1.01279096
 1.01287528 1.01286024 1.01279983 1.01284487 1.01282365 1.01285443
Epoch 7 RMSE: [0.99426685 0.99429572 0.99426321 0.99430772 0.99433392 0.99434846   | 7/40 [00:37<02:55,  5.32s/it]
 0.99432325 0.99436813 0.99428813 0.99429818 0.99429055 0.99432117
 0.99428649 0.99432252 0.99431576 0.9943039  0.99432044 0.99434125
 0.99428292 0.9943309  0.99429504 0.99429871 0.99426144 0.99432172
 0.99428245 0.99428387 0.99433104 0.99431362 0.99429617 0.99427082
 0.99425688 0.99427838 0.99430429 0.99427835 0.99427015 0.99428558
 0.99426474 0.99425276 0.99435449 0.9942857  0.9943422  0.9943355
 0.99429719 0.99433638 0.9942905  0.9943203  0.99432589 0.99429669
 0.99429491 0.99427262 0.99434599 0.99430542 0.99426183 0.9943147
 0.99432265 0.99426017 0.99425968 0.99427974 0.99435904 0.99428242
 0.99431024 0.99429114 0.99432892 0.99427363 0.9943143  0.99431342
 0.9942645  0.99429132 0.99427521 0.99432601 0.99428714 0.9942887
 0.99428658 0.99434702 0.99431826 0.99429346 0.99430848 0.99432786
 0.99429779 0.99430248 0.99436866 0.99425719 0.99432654 0.9942863
 0.99428098 0.99432623 0.9942954  0.99428635 0.9943206  0.99427945
 0.99434296 0.99433319 0.99428054 0.99432182 0.99430013 0.99432376
Epoch 7 RMSE: [0.99426685 0.99429572 0.99426321 0.99430772 0.99433392 0.99434846   | 7/40 [00:37<02:55,  5.32s/it]   
 0.99432325 0.99436813 0.99428813 0.99429818 0.99429055 0.99432117
 0.99428649 0.99432252 0.99431576 0.9943039  0.99432044 0.99434125
 0.99428292 0.9943309  0.99429504 0.99429871 0.99426144 0.99432172
 0.99428245 0.99428387 0.99433104 0.99431362 0.99429617 0.99427082
 0.99425688 0.99427838 0.99430429 0.99427835 0.99427015 0.99428558
 0.99426474 0.99425276 0.99435449 0.9942857  0.9943422  0.9943355
 0.99429719 0.99433638 0.9942905  0.9943203  0.99432589 0.99429669
 0.99429491 0.99427262 0.99434599 0.99430542 0.99426183 0.9943147
 0.99432265 0.99426017 0.99425968 0.99427974 0.99435904 0.99428242
 0.99431024 0.99429114 0.99432892 0.99427363 0.9943143  0.99431342
 0.9942645  0.99429132 0.99427521 0.99432601 0.99428714 0.9942887
 0.99428658 0.99434702 0.99431826 0.99429346 0.99430848 0.99432786
 0.99429779 0.99430248 0.99436866 0.99425719 0.99432654 0.9942863
 0.99428098 0.99432623 0.9942954  0.99428635 0.9943206  0.99427945
 0.99434296 0.99433319 0.99428054 0.99432182 0.99430013 0.99432376
Epoch 8 RMSE: [0.98032841 0.98035351 0.98032262 0.98036189 0.98038399 0.98039754   | 8/40 [00:42<02:50,  5.32s/it]
 0.98037568 0.98041579 0.98034677 0.98035787 0.98034877 0.98037456
 0.98034705 0.98037687 0.98037041 0.98035616 0.98037272 0.98039435
 0.98034519 0.98038506 0.98035139 0.98035463 0.98031996 0.98037481
 0.98033782 0.9803488  0.98038092 0.98036887 0.9803511  0.98032956
 0.98032061 0.98033857 0.98035925 0.98033791 0.9803305  0.9803432
 0.980323   0.98031789 0.98040359 0.98034402 0.98038948 0.98039226
 0.98035571 0.98038895 0.98034794 0.98037323 0.98038169 0.98035356
 0.98034802 0.98033558 0.98039613 0.9803653  0.98032118 0.98037004
 0.9803722  0.98032129 0.98032048 0.98033548 0.98040586 0.98033933
 0.9803661  0.98034865 0.98038025 0.98033444 0.980369   0.98036679
 0.980327   0.98034959 0.98033851 0.98037913 0.98034745 0.98034623
 0.98034566 0.9803988  0.98037013 0.98034868 0.98036169 0.98037883
 0.9803517  0.98035807 0.98041573 0.98031508 0.98037873 0.98034165
 0.9803389  0.98037641 0.98035089 0.98034798 0.98037176 0.98034142
 0.98039063 0.98038458 0.98033873 0.98037451 0.98035442 0.98037335
Epoch 8 RMSE: [0.98032841 0.98035351 0.98032262 0.98036189 0.98038399 0.98039754   | 8/40 [00:42<02:50,  5.32s/it]
 0.98037568 0.98041579 0.98034677 0.98035787 0.98034877 0.98037456
 0.98034705 0.98037687 0.98037041 0.98035616 0.98037272 0.98039435
 0.98034519 0.98038506 0.98035139 0.98035463 0.98031996 0.98037481
 0.98033782 0.9803488  0.98038092 0.98036887 0.9803511  0.98032956
 0.98032061 0.98033857 0.98035925 0.98033791 0.9803305  0.9803432
 0.980323   0.98031789 0.98040359 0.98034402 0.98038948 0.98039226
 0.98035571 0.98038895 0.98034794 0.98037323 0.98038169 0.98035356
 0.98034802 0.98033558 0.98039613 0.9803653  0.98032118 0.98037004
 0.9803722  0.98032129 0.98032048 0.98033548 0.98040586 0.98033933
 0.9803661  0.98034865 0.98038025 0.98033444 0.980369   0.98036679
 0.980327   0.98034959 0.98033851 0.98037913 0.98034745 0.98034623
 0.98034566 0.9803988  0.98037013 0.98034868 0.98036169 0.98037883
 0.9803517  0.98035807 0.98041573 0.98031508 0.98037873 0.98034165
 0.9803389  0.98037641 0.98035089 0.98034798 0.98037176 0.98034142
 0.98039063 0.98038458 0.98033873 0.98037451 0.98035442 0.98037335
Epoch 9 RMSE: [0.9694492  0.96947007 0.96944108 0.9694767  0.96949523 0.9695074    | 9/40 [00:47<02:44,  5.30s/it]
 0.9694882  0.96952424 0.96946422 0.96947599 0.96946601 0.96948819
 0.96946618 0.96949149 0.9694846  0.96946943 0.96948569 0.96950732
 0.96946534 0.96949901 0.96946766 0.96947022 0.9694381  0.96948868
 0.96945359 0.96947024 0.96949185 0.96948388 0.96946674 0.96944816
 0.96944223 0.96945801 0.96947428 0.96945628 0.96944982 0.96946021
 0.96944124 0.969441   0.96951416 0.96946196 0.96949921 0.96950764
 0.96947305 0.96950168 0.96946441 0.96948692 0.96949659 0.96946984
 0.96946248 0.96945644 0.96950706 0.96948278 0.96944039 0.96948504
 0.96948394 0.96944163 0.96944026 0.96945154 0.96951425 0.96945632
 0.96948171 0.96946562 0.96949195 0.96945461 0.96948294 0.96948093
 0.96944749 0.96946766 0.96945944 0.96949223 0.96946654 0.96946313
 0.96946376 0.96951044 0.96948237 0.96946441 0.96947514 0.96949051
 0.96946559 0.9694736  0.96952395 0.96943319 0.96949175 0.96945789
 0.96945613 0.9694875  0.96946644 0.96946757 0.9694842  0.96946167
 0.96949991 0.96949691 0.96945647 0.96948745 0.96946921 0.96948448
Epoch 9 RMSE: [0.9694492  0.96947007 0.96944108 0.9694767  0.96949523 0.9695074     | 9/40 [00:47<02:44,  5.30s/it]
 0.9694882  0.96952424 0.96946422 0.96947599 0.96946601 0.96948819
 0.96946618 0.96949149 0.9694846  0.96946943 0.96948569 0.96950732
 0.96946534 0.96949901 0.96946766 0.96947022 0.9694381  0.96948868
 0.96945359 0.96947024 0.96949185 0.96948388 0.96946674 0.96944816
 0.96944223 0.96945801 0.96947428 0.96945628 0.96944982 0.96946021
 0.96944124 0.969441   0.96951416 0.96946196 0.96949921 0.96950764
 0.96947305 0.96950168 0.96946441 0.96948692 0.96949659 0.96946984
 0.96946248 0.96945644 0.96950706 0.96948278 0.96944039 0.96948504
 0.96948394 0.96944163 0.96944026 0.96945154 0.96951425 0.96945632
 0.96948171 0.96946562 0.96949195 0.96945461 0.96948294 0.96948093
 0.96944749 0.96946766 0.96945944 0.96949223 0.96946654 0.96946313
 0.96946376 0.96951044 0.96948237 0.96946441 0.96947514 0.96949051
 0.96946559 0.9694736  0.96952395 0.96943319 0.96949175 0.96945789
 0.96945613 0.9694875  0.96946644 0.96946757 0.9694842  0.96946167
 0.96949991 0.96949691 0.96945647 0.96948745 0.96946921 0.96948448
Epoch 10 RMSE: [0.96069644 0.96071369 0.96068629 0.96071866 0.96073453 0.96074565   | 10/40 [00:53<02:39,  5.33s/it]
 0.96072891 0.9607607  0.96070909 0.96072049 0.96071018 0.96073019
 0.96071215 0.96073435 0.96072659 0.96071167 0.96072647 0.96074826
 0.960712   0.96074059 0.96071141 0.96071321 0.96068387 0.96073057
 0.96069694 0.96071751 0.96073128 0.96072665 0.96071027 0.96069396
 0.96069037 0.96070451 0.9607168  0.9607018  0.96069658 0.96070475
 0.96068715 0.96069004 0.96075274 0.96070714 0.9607381  0.96074965
 0.96071718 0.96074202 0.96070836 0.96072835 0.96073855 0.96071347
 0.96070484 0.96070427 0.96074646 0.96072675 0.96068734 0.96072739
 0.96072377 0.96068881 0.96068735 0.96069571 0.96075138 0.96070094
 0.96072483 0.96070974 0.96073153 0.96070112 0.96072459 0.96072312
 0.9606946  0.96071269 0.96070658 0.96073322 0.96071228 0.96070711
 0.96070885 0.96074969 0.96072308 0.96070752 0.9607166  0.96073044
 0.96070855 0.96071651 0.96076101 0.96067945 0.96073295 0.96070218
 0.96070069 0.96072713 0.96070969 0.96071358 0.96072465 0.96070806
 0.96073813 0.9607371  0.96070178 0.9607277  0.96071176 0.96072425
Epoch 10 RMSE: [0.96069644 0.96071369 0.96068629 0.96071866 0.96073453 0.96074565   | 10/40 [00:53<02:39,  5.33s/it]
 0.96072891 0.9607607  0.96070909 0.96072049 0.96071018 0.96073019
 0.96071215 0.96073435 0.96072659 0.96071167 0.96072647 0.96074826
 0.960712   0.96074059 0.96071141 0.96071321 0.96068387 0.96073057
 0.96069694 0.96071751 0.96073128 0.96072665 0.96071027 0.96069396
 0.96069037 0.96070451 0.9607168  0.9607018  0.96069658 0.96070475
 0.96068715 0.96069004 0.96075274 0.96070714 0.9607381  0.96074965
 0.96071718 0.96074202 0.96070836 0.96072835 0.96073855 0.96071347
 0.96070484 0.96070427 0.96074646 0.96072675 0.96068734 0.96072739
 0.96072377 0.96068881 0.96068735 0.96069571 0.96075138 0.96070094
 0.96072483 0.96070974 0.96073153 0.96070112 0.96072459 0.96072312
 0.9606946  0.96071269 0.96070658 0.96073322 0.96071228 0.96070711
 0.96070885 0.96074969 0.96072308 0.96070752 0.9607166  0.96073044
 0.96070855 0.96071651 0.96076101 0.96067945 0.96073295 0.96070218
 0.96070069 0.96072713 0.96070969 0.96071358 0.96072465 0.96070806
 0.96073813 0.9607371  0.96070178 0.9607277  0.96071176 0.96072425
Epoch 11 RMSE: [0.95355938 0.95357278 0.95354808 0.95357698 0.95359097 0.95360068   | 11/40 [00:58<02:35,  5.35s/it]
 0.95358614 0.95361422 0.95356927 0.9535803  0.95357015 0.9535882
 0.95357319 0.95359291 0.95358431 0.9535702  0.95358364 0.95360555
 0.95357351 0.95359801 0.95357109 0.95357231 0.95354613 0.95358883
 0.95355681 0.95357905 0.95358773 0.95358514 0.95357018 0.95355558
 0.95355366 0.95356612 0.9535756  0.95356257 0.95355855 0.95356523
 0.95354888 0.95355379 0.95360803 0.95356794 0.95359406 0.95360724
 0.95357679 0.95359892 0.9535678  0.953586   0.95359621 0.95357294
 0.95356397 0.95356679 0.95360226 0.953586   0.95354944 0.95358578
 0.95358091 0.95355168 0.95355014 0.95355603 0.95360613 0.9535614
 0.95358404 0.95356969 0.95358771 0.95356319 0.95358236 0.9535817
 0.95355692 0.95357342 0.95356858 0.95359029 0.95357357 0.95356678
 0.95356958 0.95360547 0.95358004 0.95356694 0.95357409 0.95358682
 0.95356711 0.95357535 0.95361502 0.95354186 0.95358997 0.95356258
 0.95356117 0.95358343 0.95356932 0.95357491 0.95358221 0.95356947
 0.95359337 0.95359393 0.95356266 0.95358437 0.95357061 0.95358076
Epoch 11 RMSE: [0.95355938 0.95357278 0.95354808 0.95357698 0.95359097 0.95360068   | 11/40 [00:58<02:35,  5.35s/it]   
 0.95358614 0.95361422 0.95356927 0.9535803  0.95357015 0.9535882
 0.95357319 0.95359291 0.95358431 0.9535702  0.95358364 0.95360555
 0.95357351 0.95359801 0.95357109 0.95357231 0.95354613 0.95358883
 0.95355681 0.95357905 0.95358773 0.95358514 0.95357018 0.95355558
 0.95355366 0.95356612 0.9535756  0.95356257 0.95355855 0.95356523
 0.95354888 0.95355379 0.95360803 0.95356794 0.95359406 0.95360724
 0.95357679 0.95359892 0.9535678  0.953586   0.95359621 0.95357294
 0.95356397 0.95356679 0.95360226 0.953586   0.95354944 0.95358578
 0.95358091 0.95355168 0.95355014 0.95355603 0.95360613 0.9535614
 0.95358404 0.95356969 0.95358771 0.95356319 0.95358236 0.9535817
 0.95355692 0.95357342 0.95356858 0.95359029 0.95357357 0.95356678
 0.95356958 0.95360547 0.95358004 0.95356694 0.95357409 0.95358682
 0.95356711 0.95357535 0.95361502 0.95354186 0.95358997 0.95356258
 0.95356117 0.95358343 0.95356932 0.95357491 0.95358221 0.95356947
 0.95359337 0.95359393 0.95356266 0.95358437 0.95357061 0.95358076
Epoch 12 RMSE: [0.94762464 0.94763434 0.94761214 0.94763842 0.94765098 0.94765922   | 12/40 [01:04<02:34,  5.50s/it]
 0.94764632 0.94767125 0.94763215 0.94764233 0.9476331  0.9476496
 0.94763679 0.9476547  0.947645   0.94763224 0.94764431 0.94766595
 0.94763762 0.94765851 0.94763371 0.94763451 0.94761027 0.94765038
 0.94761978 0.94764277 0.94764766 0.94764674 0.9476331  0.94762025
 0.94761923 0.94763032 0.94763753 0.94762615 0.94762322 0.94762832
 0.94761375 0.94762016 0.94766708 0.94763166 0.94765359 0.94766761
 0.94763909 0.9476585  0.9476303  0.94764697 0.94765692 0.94763502
 0.94762597 0.94763179 0.94766158 0.94764789 0.94761432 0.94764702
 0.94764131 0.94761675 0.94761562 0.94761929 0.94766425 0.9476249
 0.94764622 0.94763286 0.94764731 0.94762761 0.9476432  0.9476433
 0.94762154 0.94763687 0.94763272 0.94765063 0.94763754 0.94762912
 0.94763314 0.94766451 0.94764053 0.94762926 0.94763502 0.9476469
 0.94762933 0.94763735 0.94767281 0.94760695 0.94765069 0.94762589
 0.94762436 0.9476433  0.94763175 0.94763864 0.94764304 0.9476333
 0.94765225 0.94765414 0.94762648 0.9476444  0.94763244 0.94764101
Epoch 12 RMSE: [0.94762464 0.94763434 0.94761214 0.94763842 0.94765098 0.94765922   | 12/40 [01:04<02:34,  5.50s/it]  
 0.94764632 0.94767125 0.94763215 0.94764233 0.9476331  0.9476496
 0.94763679 0.9476547  0.947645   0.94763224 0.94764431 0.94766595
 0.94763762 0.94765851 0.94763371 0.94763451 0.94761027 0.94765038
 0.94761978 0.94764277 0.94764766 0.94764674 0.9476331  0.94762025
 0.94761923 0.94763032 0.94763753 0.94762615 0.94762322 0.94762832
 0.94761375 0.94762016 0.94766708 0.94763166 0.94765359 0.94766761
 0.94763909 0.9476585  0.9476303  0.94764697 0.94765692 0.94763502
 0.94762597 0.94763179 0.94766158 0.94764789 0.94761432 0.94764702
 0.94764131 0.94761675 0.94761562 0.94761929 0.94766425 0.9476249
 0.94764622 0.94763286 0.94764731 0.94762761 0.9476432  0.9476433
 0.94762154 0.94763687 0.94763272 0.94765063 0.94763754 0.94762912
 0.94763314 0.94766451 0.94764053 0.94762926 0.94763502 0.9476469
 0.94762933 0.94763735 0.94767281 0.94760695 0.94765069 0.94762589
 0.94762436 0.9476433  0.94763175 0.94763864 0.94764304 0.9476333
 0.94765225 0.94765414 0.94762648 0.9476444  0.94763244 0.94764101
Epoch 13 RMSE: [0.94250355 0.94251    0.94249004 0.94251424 0.94252492 0.94253214   | 13/40 [01:09<02:27,  5.47s/it]
 0.94252126 0.94254282 0.94250924 0.94251867 0.94250963 0.94252498
 0.9425141  0.94253041 0.94251997 0.9425084  0.94251923 0.94254045
 0.94251483 0.94253318 0.94251044 0.94251076 0.94248893 0.9425257
 0.9424967  0.9425198  0.94252196 0.94252218 0.94251019 0.94249833
 0.94249833 0.94250832 0.94251331 0.94250359 0.9425015  0.94250558
 0.94249227 0.94249932 0.9425401  0.94250916 0.94252765 0.94254207
 0.94251521 0.94253293 0.94250672 0.94252199 0.9425315  0.94251133
 0.94250243 0.94250991 0.94253504 0.94252347 0.94249281 0.94252258
 0.94251625 0.94249575 0.94249447 0.94249627 0.94253718 0.9425021
 0.94252222 0.94250936 0.94252149 0.94250569 0.94251802 0.94251918
 0.9424994  0.94251436 0.94251051 0.94252501 0.94251518 0.94250555
 0.9425103  0.94253793 0.94251515 0.94250544 0.94251047 0.9425212
 0.94250546 0.94251334 0.94254524 0.94248572 0.94252542 0.94250341
 0.94250169 0.94251769 0.94250879 0.94251611 0.94251834 0.9425109
 0.94252582 0.94252845 0.94250394 0.94251885 0.94250869 0.94251583
Epoch 13 RMSE: [0.94250355 0.94251    0.94249004 0.94251424 0.94252492 0.94253214   | 13/40 [01:09<02:27,  5.47s/it]
 0.94252126 0.94254282 0.94250924 0.94251867 0.94250963 0.94252498
 0.9425141  0.94253041 0.94251997 0.9425084  0.94251923 0.94254045
 0.94251483 0.94253318 0.94251044 0.94251076 0.94248893 0.9425257
 0.9424967  0.9425198  0.94252196 0.94252218 0.94251019 0.94249833
 0.94249833 0.94250832 0.94251331 0.94250359 0.9425015  0.94250558
 0.94249227 0.94249932 0.9425401  0.94250916 0.94252765 0.94254207
 0.94251521 0.94253293 0.94250672 0.94252199 0.9425315  0.94251133
 0.94250243 0.94250991 0.94253504 0.94252347 0.94249281 0.94252258
 0.94251625 0.94249575 0.94249447 0.94249627 0.94253718 0.9425021
 0.94252222 0.94250936 0.94252149 0.94250569 0.94251802 0.94251918
 0.9424994  0.94251436 0.94251051 0.94252501 0.94251518 0.94250555
 0.9425103  0.94253793 0.94251515 0.94250544 0.94251047 0.9425212
 0.94250546 0.94251334 0.94254524 0.94248572 0.94252542 0.94250341
 0.94250169 0.94251769 0.94250879 0.94251611 0.94251834 0.9425109
 0.94252582 0.94252845 0.94250394 0.94251885 0.94250869 0.94251583
Epoch 14 RMSE: [0.93798076 0.93798437 0.93796693 0.9379891  0.93799854 0.93800461   | 14/40 [01:15<02:21,  5.43s/it]
 0.93799533 0.93801408 0.93798501 0.93799373 0.93798536 0.93799954
 0.93799004 0.93800529 0.93799412 0.9379837  0.93799326 0.93801418
 0.93799101 0.93800713 0.93798609 0.93798598 0.93796628 0.9380003
 0.93797297 0.93799535 0.93799583 0.93799682 0.9379862  0.93797543
 0.93797584 0.93798491 0.93798849 0.93797985 0.93797869 0.93798162
 0.93796949 0.93797718 0.93801296 0.93798512 0.93800125 0.93801539
 0.93799016 0.93800621 0.93798216 0.93799629 0.93800518 0.93798651
 0.93797791 0.93798688 0.93800812 0.93799799 0.93797028 0.9379971
 0.93799052 0.93797319 0.93797204 0.93797251 0.93800985 0.93797854
 0.93799726 0.93798526 0.93799513 0.93798247 0.93799221 0.93799416
 0.93797625 0.93799032 0.93798676 0.93799882 0.93799135 0.93798097
 0.93798645 0.93801038 0.93798914 0.93798081 0.93798517 0.93799518
 0.93798079 0.93798842 0.93801718 0.9379633  0.9379996  0.93797977
 0.93797768 0.93799121 0.9379846  0.93799218 0.93799281 0.93798726
 0.93799863 0.93800195 0.93798054 0.93799249 0.93798406 0.93798985
Epoch 14 RMSE: [0.93798076 0.93798437 0.93796693 0.9379891  0.93799854 0.93800461   | 14/40 [01:15<02:21,  5.43s/it]
 0.93799533 0.93801408 0.93798501 0.93799373 0.93798536 0.93799954
 0.93799004 0.93800529 0.93799412 0.9379837  0.93799326 0.93801418
 0.93799101 0.93800713 0.93798609 0.93798598 0.93796628 0.9380003
 0.93797297 0.93799535 0.93799583 0.93799682 0.9379862  0.93797543
 0.93797584 0.93798491 0.93798849 0.93797985 0.93797869 0.93798162
 0.93796949 0.93797718 0.93801296 0.93798512 0.93800125 0.93801539
 0.93799016 0.93800621 0.93798216 0.93799629 0.93800518 0.93798651
 0.93797791 0.93798688 0.93800812 0.93799799 0.93797028 0.9379971
 0.93799052 0.93797319 0.93797204 0.93797251 0.93800985 0.93797854
 0.93799726 0.93798526 0.93799513 0.93798247 0.93799221 0.93799416
 0.93797625 0.93799032 0.93798676 0.93799882 0.93799135 0.93798097
 0.93798645 0.93801038 0.93798914 0.93798081 0.93798517 0.93799518
 0.93798079 0.93798842 0.93801718 0.9379633  0.9379996  0.93797977
 0.93797768 0.93799121 0.9379846  0.93799218 0.93799281 0.93798726
 0.93799863 0.93800195 0.93798054 0.93799249 0.93798406 0.93798985
Epoch 15 RMSE: [0.93398928 0.93399056 0.93397506 0.93399548 0.93400396 0.9340091    | 15/40 [01:20<02:15,  5.40s/it]
 0.93400102 0.93401733 0.93399189 0.93399998 0.93399231 0.93400579
 0.93399741 0.93401133 0.9339997  0.93399032 0.93399897 0.93401929
 0.93399826 0.93401242 0.93399297 0.93399285 0.93397483 0.93400631
 0.93398069 0.93400214 0.93400115 0.93400292 0.93399373 0.93398363
 0.93398453 0.93399267 0.93399499 0.93398727 0.93398691 0.93398891
 0.93397804 0.93398596 0.9340175  0.93399267 0.93400663 0.93402026
 0.93399664 0.93401128 0.93398916 0.93400218 0.93401032 0.93399291
 0.93398512 0.93399469 0.93401287 0.93400412 0.93397885 0.93400312
 0.93399637 0.93398184 0.93398086 0.93398001 0.93401387 0.93398599
 0.93400372 0.93399243 0.93400024 0.93399044 0.93399796 0.93400065
 0.93398425 0.9339976  0.93399424 0.93400442 0.93399891 0.93398768
 0.93399366 0.93401464 0.93399497 0.9339878  0.93399139 0.93400064
 0.93398764 0.93399508 0.93402106 0.9339724  0.93400506 0.93398751
 0.93398521 0.93399692 0.93399176 0.93399928 0.9339989  0.93399464
 0.93400337 0.93400736 0.93398835 0.93399786 0.93399088 0.93399557
Epoch 15 RMSE: [0.93398928 0.93399056 0.93397506 0.93399548 0.93400396 0.9340091    | 15/40 [01:20<02:15,  5.40s/it]
 0.93400102 0.93401733 0.93399189 0.93399998 0.93399231 0.93400579
 0.93399741 0.93401133 0.9339997  0.93399032 0.93399897 0.93401929
 0.93399826 0.93401242 0.93399297 0.93399285 0.93397483 0.93400631
 0.93398069 0.93400214 0.93400115 0.93400292 0.93399373 0.93398363
 0.93398453 0.93399267 0.93399499 0.93398727 0.93398691 0.93398891
 0.93397804 0.93398596 0.9340175  0.93399267 0.93400663 0.93402026
 0.93399664 0.93401128 0.93398916 0.93400218 0.93401032 0.93399291
 0.93398512 0.93399469 0.93401287 0.93400412 0.93397885 0.93400312
 0.93399637 0.93398184 0.93398086 0.93398001 0.93401387 0.93398599
 0.93400372 0.93399243 0.93400024 0.93399044 0.93399796 0.93400065
 0.93398425 0.9339976  0.93399424 0.93400442 0.93399891 0.93398768
 0.93399366 0.93401464 0.93399497 0.9339878  0.93399139 0.93400064
 0.93398764 0.93399508 0.93402106 0.9339724  0.93400506 0.93398751
 0.93398521 0.93399692 0.93399176 0.93399928 0.9339989  0.93399464
 0.93400337 0.93400736 0.93398835 0.93399786 0.93399088 0.93399557
Epoch 16 RMSE: [0.93042093 0.93042015 0.93040655 0.93042527 0.93043286 0.93043727   | 16/40 [01:26<02:09,  5.41s/it]
 0.93043041 0.93044445 0.93042238 0.93042974 0.93042288 0.93043552
 0.93042784 0.93044086 0.93042916 0.93042058 0.93042842 0.93044836
 0.93042894 0.93044149 0.93042365 0.93042324 0.93040678 0.93043597
 0.9304118  0.93043223 0.93043048 0.93043253 0.93042468 0.93041534
 0.93041628 0.93042401 0.93042486 0.93041796 0.93041837 0.93041988
 0.93041002 0.93041795 0.93044559 0.93042359 0.9304357  0.9304487
 0.93042638 0.93043997 0.9304195  0.93043162 0.9304391  0.93042313
 0.93041562 0.93042584 0.93044147 0.93043342 0.93041079 0.93043265
 0.93042586 0.93041375 0.9304129  0.9304109  0.93044197 0.93041686
 0.9304336  0.93042296 0.93042911 0.93042181 0.93042738 0.93043063
 0.93041565 0.93042823 0.93042496 0.93043338 0.93042973 0.93041794
 0.93042433 0.9304427  0.93042455 0.93041802 0.93042136 0.93042983
 0.93041796 0.93042522 0.9304489  0.93040451 0.93043423 0.93041856
 0.93041611 0.93042624 0.93042245 0.93042987 0.93042875 0.93042551
 0.93043183 0.93043633 0.93041954 0.93042684 0.93042105 0.93042486
Epoch 16 RMSE: [0.93042093 0.93042015 0.93040655 0.93042527 0.93043286 0.93043727   | 16/40 [01:26<02:09,  5.41s/it]
 0.93043041 0.93044445 0.93042238 0.93042974 0.93042288 0.93043552
 0.93042784 0.93044086 0.93042916 0.93042058 0.93042842 0.93044836
 0.93042894 0.93044149 0.93042365 0.93042324 0.93040678 0.93043597
 0.9304118  0.93043223 0.93043048 0.93043253 0.93042468 0.93041534
 0.93041628 0.93042401 0.93042486 0.93041796 0.93041837 0.93041988
 0.93041002 0.93041795 0.93044559 0.93042359 0.9304357  0.9304487
 0.93042638 0.93043997 0.9304195  0.93043162 0.9304391  0.93042313
 0.93041562 0.93042584 0.93044147 0.93043342 0.93041079 0.93043265
 0.93042586 0.93041375 0.9304129  0.9304109  0.93044197 0.93041686
 0.9304336  0.93042296 0.93042911 0.93042181 0.93042738 0.93043063
 0.93041565 0.93042823 0.93042496 0.93043338 0.93042973 0.93041794
 0.93042433 0.9304427  0.93042455 0.93041802 0.93042136 0.93042983
 0.93041796 0.93042522 0.9304489  0.93040451 0.93043423 0.93041856
 0.93041611 0.93042624 0.93042245 0.93042987 0.93042875 0.93042551
 0.93043183 0.93043633 0.93041954 0.93042684 0.93042105 0.93042486
Epoch 17 RMSE: [0.92698472 0.92698189 0.92697029 0.92698759 0.92699418 0.92699818   | 17/40 [01:31<02:05,  5.46s/it]
 0.92699221 0.92700424 0.92698509 0.92699188 0.92698567 0.92699737
 0.9269906  0.92700279 0.92699082 0.92698323 0.92699036 0.92700964
 0.92699157 0.92700278 0.9269865  0.92698585 0.92697084 0.92699785
 0.92697549 0.92699443 0.92699201 0.9269943  0.9269878  0.92697917
 0.92698027 0.92698719 0.92698728 0.92698103 0.92698189 0.92698295
 0.92697412 0.92698176 0.9270063  0.92698655 0.92699721 0.92700975
 0.92698851 0.92700131 0.92698213 0.92699329 0.92700012 0.92698532
 0.92697867 0.92698893 0.9270026  0.92699526 0.92697461 0.92699453
 0.92698782 0.92697772 0.926977   0.92697401 0.92700286 0.92698005
 0.92699588 0.9269857  0.92699051 0.92698505 0.92698915 0.92699334
 0.92697904 0.926991   0.92698767 0.92699497 0.92699268 0.92698034
 0.92698725 0.92700337 0.92698655 0.92698071 0.92698357 0.92699151
 0.92698051 0.92698746 0.92700935 0.92696875 0.92699563 0.92698192
 0.92697911 0.92698793 0.92698517 0.9269926  0.92699082 0.92698846
 0.92699289 0.92699772 0.92698279 0.92698859 0.92698379 0.92698658
Epoch 17 RMSE: [0.92698472 0.92698189 0.92697029 0.92698759 0.92699418 0.92699818   | 17/40 [01:31<02:05,  5.46s/it]
 0.92699221 0.92700424 0.92698509 0.92699188 0.92698567 0.92699737
 0.9269906  0.92700279 0.92699082 0.92698323 0.92699036 0.92700964
 0.92699157 0.92700278 0.9269865  0.92698585 0.92697084 0.92699785
 0.92697549 0.92699443 0.92699201 0.9269943  0.9269878  0.92697917
 0.92698027 0.92698719 0.92698728 0.92698103 0.92698189 0.92698295
 0.92697412 0.92698176 0.9270063  0.92698655 0.92699721 0.92700975
 0.92698851 0.92700131 0.92698213 0.92699329 0.92700012 0.92698532
 0.92697867 0.92698893 0.9270026  0.92699526 0.92697461 0.92699453
 0.92698782 0.92697772 0.926977   0.92697401 0.92700286 0.92698005
 0.92699588 0.9269857  0.92699051 0.92698505 0.92698915 0.92699334
 0.92697904 0.926991   0.92698767 0.92699497 0.92699268 0.92698034
 0.92698725 0.92700337 0.92698655 0.92698071 0.92698357 0.92699151
 0.92698051 0.92698746 0.92700935 0.92696875 0.92699563 0.92698192
 0.92697911 0.92698793 0.92698517 0.9269926  0.92699082 0.92698846
 0.92699289 0.92699772 0.92698279 0.92698859 0.92698379 0.92698658
Epoch 18 RMSE: [0.92362926 0.92362489 0.92361492 0.92363082 0.92363679 0.92364012   | 18/40 [01:37<02:00,  5.48s/it]
 0.92363518 0.92364557 0.92362881 0.92363496 0.92362938 0.92364061
 0.92363423 0.92364591 0.92363376 0.92362695 0.92363327 0.92365196
 0.92363535 0.92364531 0.92363039 0.92362945 0.92361549 0.92364085
 0.92361968 0.92363758 0.92363499 0.92363735 0.92363191 0.92362378
 0.92362507 0.92363132 0.92363078 0.92362495 0.92362642 0.92362715
 0.92361891 0.9236264  0.92364824 0.92363049 0.92363992 0.92365173
 0.92363177 0.92364356 0.92362588 0.92363617 0.92364242 0.92362883
 0.9236225  0.92363297 0.92364479 0.92363799 0.92361949 0.92363751
 0.92363077 0.92362254 0.9236219  0.92361828 0.92364459 0.92362415
 0.92363908 0.9236297  0.92363321 0.92362939 0.92363225 0.92363668
 0.92362338 0.92363479 0.92363149 0.92363763 0.92363657 0.92362393
 0.92363112 0.9236452  0.92362948 0.92362444 0.92362703 0.92363438
 0.92362435 0.92363111 0.92365086 0.92361401 0.92363836 0.92362616
 0.92362323 0.92363094 0.92362919 0.92363638 0.92363398 0.92363232
 0.92363498 0.92364038 0.92362689 0.92363114 0.92362751 0.92362984
Epoch 18 RMSE: [0.92362926 0.92362489 0.92361492 0.92363082 0.92363679 0.92364012   | 18/40 [01:37<02:00,  5.48s/it]
 0.92363518 0.92364557 0.92362881 0.92363496 0.92362938 0.92364061
 0.92363423 0.92364591 0.92363376 0.92362695 0.92363327 0.92365196
 0.92363535 0.92364531 0.92363039 0.92362945 0.92361549 0.92364085
 0.92361968 0.92363758 0.92363499 0.92363735 0.92363191 0.92362378
 0.92362507 0.92363132 0.92363078 0.92362495 0.92362642 0.92362715
 0.92361891 0.9236264  0.92364824 0.92363049 0.92363992 0.92365173
 0.92363177 0.92364356 0.92362588 0.92363617 0.92364242 0.92362883
 0.9236225  0.92363297 0.92364479 0.92363799 0.92361949 0.92363751
 0.92363077 0.92362254 0.9236219  0.92361828 0.92364459 0.92362415
 0.92363908 0.9236297  0.92363321 0.92362939 0.92363225 0.92363668
 0.92362338 0.92363479 0.92363149 0.92363763 0.92363657 0.92362393
 0.92363112 0.9236452  0.92362948 0.92362444 0.92362703 0.92363438
 0.92362435 0.92363111 0.92365086 0.92361401 0.92363836 0.92362616
 0.92362323 0.92363094 0.92362919 0.92363638 0.92363398 0.92363232
 0.92363498 0.92364038 0.92362689 0.92363114 0.92362751 0.92362984
Epoch 19 RMSE: [0.9202722  0.92026655 0.92025776 0.92027279 0.92027805 0.92028091   | 19/40 [01:42<01:55,  5.49s/it]
 0.92027693 0.92028573 0.92027088 0.92027643 0.92027157 0.92028222
 0.92027638 0.92028733 0.92027514 0.920269   0.92027464 0.92029287
 0.9202775  0.9202864  0.92027258 0.92027147 0.92025877 0.92028233
 0.92026266 0.92027929 0.92027637 0.92027888 0.92027439 0.9202669
 0.92026812 0.92027377 0.92027256 0.92026754 0.92026922 0.92026963
 0.92026225 0.92026929 0.9202889  0.92027268 0.92028133 0.92029215
 0.92027367 0.92028458 0.9202681  0.9202776  0.92028315 0.92027072
 0.92026489 0.92027528 0.92028567 0.92027947 0.92026279 0.92027904
 0.92027232 0.92026576 0.92026525 0.92026096 0.92028552 0.92026678
 0.92028081 0.92027199 0.92027431 0.92027208 0.92027388 0.92027868
 0.92026621 0.92027692 0.92027373 0.92027892 0.92027891 0.92026608
 0.92027341 0.92028568 0.9202713  0.92026672 0.92026915 0.92027597
 0.92026659 0.92027319 0.92029131 0.92025732 0.92027982 0.92026883
 0.92026578 0.92027255 0.92027135 0.92027837 0.92027576 0.92027461
 0.92027606 0.9202818  0.92026966 0.92027279 0.9202698  0.92027134
Epoch 19 RMSE: [0.9202722  0.92026655 0.92025776 0.92027279 0.92027805 0.92028091   | 19/40 [01:42<01:55,  5.49s/it] 
 0.92027693 0.92028573 0.92027088 0.92027643 0.92027157 0.92028222
 0.92027638 0.92028733 0.92027514 0.920269   0.92027464 0.92029287
 0.9202775  0.9202864  0.92027258 0.92027147 0.92025877 0.92028233
 0.92026266 0.92027929 0.92027637 0.92027888 0.92027439 0.9202669
 0.92026812 0.92027377 0.92027256 0.92026754 0.92026922 0.92026963
 0.92026225 0.92026929 0.9202889  0.92027268 0.92028133 0.92029215
 0.92027367 0.92028458 0.9202681  0.9202776  0.92028315 0.92027072
 0.92026489 0.92027528 0.92028567 0.92027947 0.92026279 0.92027904
 0.92027232 0.92026576 0.92026525 0.92026096 0.92028552 0.92026678
 0.92028081 0.92027199 0.92027431 0.92027208 0.92027388 0.92027868
 0.92026621 0.92027692 0.92027373 0.92027892 0.92027891 0.92026608
 0.92027341 0.92028568 0.9202713  0.92026672 0.92026915 0.92027597
 0.92026659 0.92027319 0.92029131 0.92025732 0.92027982 0.92026883
 0.92026578 0.92027255 0.92027135 0.92027837 0.92027576 0.92027461
 0.92027606 0.9202818  0.92026966 0.92027279 0.9202698  0.92027134
Epoch 20 RMSE: [0.91666156 0.91665455 0.91664738 0.91666122 0.9166659  0.91666838   | 20/40 [01:48<01:50,  5.51s/it]
 0.91666504 0.91667252 0.91665953 0.91666455 0.91666051 0.91667035
 0.91666505 0.91667536 0.91666344 0.91665763 0.91666284 0.91668043
 0.91666592 0.9166739  0.9166615  0.91666031 0.91664839 0.91667029
 0.91665194 0.91666736 0.91666441 0.91666697 0.91666345 0.91665631
 0.9166576  0.91666268 0.91666107 0.9166564  0.91665857 0.91665861
 0.91665185 0.91665875 0.91667617 0.91666153 0.91666915 0.91667932
 0.91666192 0.9166722  0.91665696 0.91666562 0.91667068 0.91665921
 0.91665371 0.91666413 0.91667325 0.91666726 0.91665241 0.916667
 0.91666047 0.91665533 0.91665473 0.91665018 0.91667274 0.9166559
 0.91666898 0.91666083 0.91666236 0.91666103 0.91666202 0.91666718
 0.91665535 0.91666549 0.9166623  0.91666687 0.91666767 0.91665461
 0.91666194 0.91667289 0.91665935 0.91665533 0.91665786 0.91666408
 0.91665529 0.9166617  0.91667848 0.91664732 0.91666755 0.9166579
 0.91665467 0.91666073 0.91666025 0.91666701 0.91666428 0.91666323
 0.9166637  0.91666939 0.9166586  0.91666086 0.91665847 0.91665946
Epoch 20 RMSE: [0.91666156 0.91665455 0.91664738 0.91666122 0.9166659  0.91666838   | 20/40 [01:48<01:50,  5.51s/it]   
 0.91666504 0.91667252 0.91665953 0.91666455 0.91666051 0.91667035
 0.91666505 0.91667536 0.91666344 0.91665763 0.91666284 0.91668043
 0.91666592 0.9166739  0.9166615  0.91666031 0.91664839 0.91667029
 0.91665194 0.91666736 0.91666441 0.91666697 0.91666345 0.91665631
 0.9166576  0.91666268 0.91666107 0.9166564  0.91665857 0.91665861
 0.91665185 0.91665875 0.91667617 0.91666153 0.91666915 0.91667932
 0.91666192 0.9166722  0.91665696 0.91666562 0.91667068 0.91665921
 0.91665371 0.91666413 0.91667325 0.91666726 0.91665241 0.916667
 0.91666047 0.91665533 0.91665473 0.91665018 0.91667274 0.9166559
 0.91666898 0.91666083 0.91666236 0.91666103 0.91666202 0.91666718
 0.91665535 0.91666549 0.9166623  0.91666687 0.91666767 0.91665461
 0.91666194 0.91667289 0.91665935 0.91665533 0.91665786 0.91666408
 0.91665529 0.9166617  0.91667848 0.91664732 0.91666755 0.9166579
 0.91665467 0.91666073 0.91666025 0.91666701 0.91666428 0.91666323
 0.9166637  0.91666939 0.9166586  0.91666086 0.91665847 0.91665946
Epoch 21 RMSE: [0.91283752 0.91282974 0.9128236  0.91283663 0.91284083 0.91284309   | 21/40 [01:53<01:44,  5.50s/it]
 0.9128404  0.91284653 0.91283531 0.91283973 0.91283633 0.91284547
 0.91284061 0.91285035 0.91283849 0.91283336 0.91283811 0.91285517
 0.91284141 0.91284872 0.91283724 0.91283593 0.9128249  0.9128454
 0.91282823 0.91284246 0.91283963 0.91284204 0.91283933 0.91283249
 0.91283388 0.91283849 0.91283658 0.91283225 0.91283468 0.91283467
 0.91282848 0.91283496 0.91285066 0.91283736 0.91284421 0.91285377
 0.91283725 0.91284687 0.91283282 0.91284078 0.91284517 0.91283473
 0.91282961 0.91283996 0.91284796 0.91284224 0.91282884 0.91284226
 0.91283589 0.91283165 0.91283131 0.91282642 0.91284729 0.91283187
 0.9128443  0.91283663 0.91283746 0.9128372  0.91283734 0.91284271
 0.91283141 0.91284098 0.91283792 0.91284188 0.91284333 0.9128304
 0.91283774 0.91284748 0.91283487 0.91283126 0.91283346 0.91283916
 0.91283115 0.91283726 0.91285272 0.91282397 0.91284272 0.91283394
 0.9128307  0.91283596 0.91283599 0.91284244 0.91283969 0.91283905
 0.91283838 0.9128444  0.91283468 0.91283594 0.9128343  0.91283488
Epoch 21 RMSE: [0.91283752 0.91282974 0.9128236  0.91283663 0.91284083 0.91284309   | 21/40 [01:53<01:44,  5.50s/it]
 0.9128404  0.91284653 0.91283531 0.91283973 0.91283633 0.91284547
 0.91284061 0.91285035 0.91283849 0.91283336 0.91283811 0.91285517
 0.91284141 0.91284872 0.91283724 0.91283593 0.9128249  0.9128454
 0.91282823 0.91284246 0.91283963 0.91284204 0.91283933 0.91283249
 0.91283388 0.91283849 0.91283658 0.91283225 0.91283468 0.91283467
 0.91282848 0.91283496 0.91285066 0.91283736 0.91284421 0.91285377
 0.91283725 0.91284687 0.91283282 0.91284078 0.91284517 0.91283473
 0.91282961 0.91283996 0.91284796 0.91284224 0.91282884 0.91284226
 0.91283589 0.91283165 0.91283131 0.91282642 0.91284729 0.91283187
 0.9128443  0.91283663 0.91283746 0.9128372  0.91283734 0.91284271
 0.91283141 0.91284098 0.91283792 0.91284188 0.91284333 0.9128304
 0.91283774 0.91284748 0.91283487 0.91283126 0.91283346 0.91283916
 0.91283115 0.91283726 0.91285272 0.91282397 0.91284272 0.91283394
 0.9128307  0.91283596 0.91283599 0.91284244 0.91283969 0.91283905
 0.91283838 0.9128444  0.91283468 0.91283594 0.9128343  0.91283488
Epoch 22 RMSE: [0.90862876 0.90862005 0.90861508 0.90862718 0.90863095 0.90863288   | 22/40 [01:59<01:37,  5.44s/it]
 0.90863064 0.9086358  0.90862568 0.90862993 0.9086271  0.90863562
 0.9086312  0.90864052 0.9086287  0.90862419 0.90862848 0.90864493
 0.90863178 0.90863881 0.90862796 0.90862649 0.90861647 0.90863556
 0.90861948 0.90863286 0.90862987 0.90863216 0.90863013 0.90862362
 0.90862522 0.90862918 0.90862711 0.90862302 0.90862573 0.90862563
 0.90861975 0.90862616 0.90864019 0.90862808 0.90863447 0.90864323
 0.90862771 0.90863671 0.90862361 0.90863087 0.90863492 0.90862527
 0.90862065 0.90863067 0.90863788 0.90863235 0.90862026 0.90863245
 0.90862624 0.90862301 0.90862272 0.90861752 0.90863698 0.90862293
 0.90863469 0.90862738 0.90862779 0.9086281  0.90862765 0.90863348
 0.90862257 0.90863162 0.90862858 0.908632   0.90863408 0.90862118
 0.90862819 0.90863686 0.90862546 0.90862185 0.90862422 0.90862952
 0.90862179 0.90862795 0.90864228 0.90861564 0.90863277 0.90862511
 0.90862163 0.90862635 0.90862695 0.90863294 0.90863001 0.90862984
 0.90862832 0.90863447 0.90862573 0.90862639 0.90862504 0.90862545
Epoch 22 RMSE: [0.90862876 0.90862005 0.90861508 0.90862718 0.90863095 0.90863288   | 22/40 [01:59<01:37,  5.44s/it]
 0.90863064 0.9086358  0.90862568 0.90862993 0.9086271  0.90863562
 0.9086312  0.90864052 0.9086287  0.90862419 0.90862848 0.90864493
 0.90863178 0.90863881 0.90862796 0.90862649 0.90861647 0.90863556
 0.90861948 0.90863286 0.90862987 0.90863216 0.90863013 0.90862362
 0.90862522 0.90862918 0.90862711 0.90862302 0.90862573 0.90862563
 0.90861975 0.90862616 0.90864019 0.90862808 0.90863447 0.90864323
 0.90862771 0.90863671 0.90862361 0.90863087 0.90863492 0.90862527
 0.90862065 0.90863067 0.90863788 0.90863235 0.90862026 0.90863245
 0.90862624 0.90862301 0.90862272 0.90861752 0.90863698 0.90862293
 0.90863469 0.90862738 0.90862779 0.9086281  0.90862765 0.90863348
 0.90862257 0.90863162 0.90862858 0.908632   0.90863408 0.90862118
 0.90862819 0.90863686 0.90862546 0.90862185 0.90862422 0.90862952
 0.90862179 0.90862795 0.90864228 0.90861564 0.90863277 0.90862511
 0.90862163 0.90862635 0.90862695 0.90863294 0.90863001 0.90862984
 0.90862832 0.90863447 0.90862573 0.90862639 0.90862504 0.90862545
Epoch 23 RMSE: [0.90413804 0.90412898 0.90412468 0.90413607 0.90413945 0.90414125   | 23/40 [02:04<01:32,  5.43s/it]
 0.9041396  0.90414373 0.90413492 0.90413868 0.90413633 0.90414429
 0.90414011 0.90414907 0.90413746 0.90413324 0.90413714 0.90415318
 0.90414084 0.90414677 0.9041371  0.90413587 0.90412617 0.9041443
 0.90412931 0.90414124 0.90413871 0.90414085 0.90413952 0.90413332
 0.90413465 0.90413849 0.90413614 0.90413231 0.90413525 0.90413502
 0.90412984 0.9041356  0.90414823 0.90413724 0.9041429  0.9041511
 0.90413653 0.90414515 0.90413269 0.90413962 0.90414302 0.90413452
 0.9041299  0.90413971 0.90414611 0.90414085 0.90413019 0.9041412
 0.90413503 0.90413261 0.90413235 0.90412719 0.9041452  0.90413208
 0.90414334 0.90413667 0.90413636 0.90413764 0.90413655 0.90414236
 0.90413193 0.90414038 0.90413757 0.90414066 0.90414295 0.90413023
 0.90413756 0.90414501 0.90413438 0.90413109 0.90413336 0.90413824
 0.90413121 0.90413686 0.90415009 0.90412568 0.90414126 0.90413447
 0.90413114 0.90413515 0.90413606 0.90414199 0.9041392  0.90413878
 0.90413679 0.9041429  0.9041351  0.9041351  0.9041343  0.90413417
Epoch 23 RMSE: [0.90413804 0.90412898 0.90412468 0.90413607 0.90413945 0.90414125   | 23/40 [02:04<01:32,  5.43s/it]   
 0.9041396  0.90414373 0.90413492 0.90413868 0.90413633 0.90414429
 0.90414011 0.90414907 0.90413746 0.90413324 0.90413714 0.90415318
 0.90414084 0.90414677 0.9041371  0.90413587 0.90412617 0.9041443
 0.90412931 0.90414124 0.90413871 0.90414085 0.90413952 0.90413332
 0.90413465 0.90413849 0.90413614 0.90413231 0.90413525 0.90413502
 0.90412984 0.9041356  0.90414823 0.90413724 0.9041429  0.9041511
 0.90413653 0.90414515 0.90413269 0.90413962 0.90414302 0.90413452
 0.9041299  0.90413971 0.90414611 0.90414085 0.90413019 0.9041412
 0.90413503 0.90413261 0.90413235 0.90412719 0.9041452  0.90413208
 0.90414334 0.90413667 0.90413636 0.90413764 0.90413655 0.90414236
 0.90413193 0.90414038 0.90413757 0.90414066 0.90414295 0.90413023
 0.90413756 0.90414501 0.90413438 0.90413109 0.90413336 0.90413824
 0.90413121 0.90413686 0.90415009 0.90412568 0.90414126 0.90413447
 0.90413114 0.90413515 0.90413606 0.90414199 0.9041392  0.90413878
 0.90413679 0.9041429  0.9041351  0.9041351  0.9041343  0.90413417
Epoch 24 RMSE: [0.89907662 0.8990668  0.89906357 0.89907419 0.89907741 0.89907888   | 24/40 [02:09<01:26,  5.41s/it]
 0.89907772 0.89908096 0.89907327 0.8990765  0.89907485 0.89908202
 0.89907831 0.89908678 0.89907543 0.89907163 0.89907522 0.89909089
 0.89907903 0.89908453 0.89907549 0.89907407 0.89906521 0.89908209
 0.89906812 0.89907931 0.89907655 0.89907867 0.89907793 0.89907214
 0.89907358 0.89907686 0.89907437 0.89907061 0.89907375 0.89907354
 0.89906882 0.89907428 0.89908577 0.89907553 0.89908064 0.89908845
 0.89907463 0.8990828  0.89907141 0.8990774  0.89908054 0.89907265
 0.89906845 0.89907799 0.89908376 0.89907871 0.89906908 0.89907908
 0.89907309 0.89907144 0.89907128 0.89906589 0.89908272 0.89907067
 0.89908136 0.89907512 0.89907424 0.89907603 0.89907476 0.89908061
 0.89907059 0.89907845 0.89907592 0.89907843 0.89908131 0.89906856
 0.8990758  0.89908258 0.89907264 0.89906964 0.8990718  0.89907615
 0.89906964 0.89907504 0.89908746 0.89906472 0.89907913 0.89907292
 0.89906957 0.89907334 0.89907439 0.89908009 0.89907713 0.89907718
 0.89907448 0.89908066 0.89907363 0.89907298 0.89907268 0.89907213
Epoch 24 RMSE: [0.89907662 0.8990668  0.89906357 0.89907419 0.89907741 0.89907888   | 24/40 [02:09<01:26,  5.41s/it]
 0.89907772 0.89908096 0.89907327 0.8990765  0.89907485 0.89908202
 0.89907831 0.89908678 0.89907543 0.89907163 0.89907522 0.89909089
 0.89907903 0.89908453 0.89907549 0.89907407 0.89906521 0.89908209
 0.89906812 0.89907931 0.89907655 0.89907867 0.89907793 0.89907214
 0.89907358 0.89907686 0.89907437 0.89907061 0.89907375 0.89907354
 0.89906882 0.89907428 0.89908577 0.89907553 0.89908064 0.89908845
 0.89907463 0.8990828  0.89907141 0.8990774  0.89908054 0.89907265
 0.89906845 0.89907799 0.89908376 0.89907871 0.89906908 0.89907908
 0.89907309 0.89907144 0.89907128 0.89906589 0.89908272 0.89907067
 0.89908136 0.89907512 0.89907424 0.89907603 0.89907476 0.89908061
 0.89907059 0.89907845 0.89907592 0.89907843 0.89908131 0.89906856
 0.8990758  0.89908258 0.89907264 0.89906964 0.8990718  0.89907615
 0.89906964 0.89907504 0.89908746 0.89906472 0.89907913 0.89907292
 0.89906957 0.89907334 0.89907439 0.89908009 0.89907713 0.89907718
 0.89907448 0.89908066 0.89907363 0.89907298 0.89907268 0.89907213
Epoch 25 RMSE: [0.89370798 0.89369786 0.89369547 0.89370534 0.89370814 0.89370966   | 25/40 [02:15<01:21,  5.41s/it]
 0.89370887 0.89371131 0.89370455 0.89370735 0.89370609 0.89371293
 0.89370943 0.89371749 0.8937063  0.89370298 0.89370615 0.89372122
 0.89371009 0.89371521 0.8937069  0.89370548 0.8936969  0.89371291
 0.89369981 0.89371011 0.89370761 0.89370949 0.89370938 0.89370374
 0.89370508 0.89370819 0.89370566 0.89370211 0.89370534 0.89370515
 0.89370067 0.89370587 0.89371625 0.8937068  0.89371147 0.89371878
 0.89370568 0.89371347 0.89370271 0.89370827 0.89371115 0.89370386
 0.89369979 0.89370926 0.89371453 0.89370945 0.89370087 0.89371004
 0.89370425 0.89370305 0.89370289 0.89369752 0.89371338 0.89370207
 0.89371228 0.89370642 0.89370512 0.89370744 0.89370581 0.89371169
 0.89370227 0.89370958 0.8937071  0.89370936 0.89371212 0.89369993
 0.89370708 0.89371297 0.89370391 0.89370097 0.89370312 0.89370719
 0.89370079 0.89370631 0.89371789 0.89369666 0.89371004 0.89370439
 0.89370115 0.89370452 0.89370561 0.89371122 0.89370834 0.89370833
 0.89370529 0.89371142 0.89370493 0.89370407 0.89370392 0.89370333
Epoch 25 RMSE: [0.89370798 0.89369786 0.89369547 0.89370534 0.89370814 0.89370966   | 25/40 [02:15<01:21,  5.41s/it]
 0.89370887 0.89371131 0.89370455 0.89370735 0.89370609 0.89371293
 0.89370943 0.89371749 0.8937063  0.89370298 0.89370615 0.89372122
 0.89371009 0.89371521 0.8937069  0.89370548 0.8936969  0.89371291
 0.89369981 0.89371011 0.89370761 0.89370949 0.89370938 0.89370374
 0.89370508 0.89370819 0.89370566 0.89370211 0.89370534 0.89370515
 0.89370067 0.89370587 0.89371625 0.8937068  0.89371147 0.89371878
 0.89370568 0.89371347 0.89370271 0.89370827 0.89371115 0.89370386
 0.89369979 0.89370926 0.89371453 0.89370945 0.89370087 0.89371004
 0.89370425 0.89370305 0.89370289 0.89369752 0.89371338 0.89370207
 0.89371228 0.89370642 0.89370512 0.89370744 0.89370581 0.89371169
 0.89370227 0.89370958 0.8937071  0.89370936 0.89371212 0.89369993
 0.89370708 0.89371297 0.89370391 0.89370097 0.89370312 0.89370719
 0.89370079 0.89370631 0.89371789 0.89369666 0.89371004 0.89370439
 0.89370115 0.89370452 0.89370561 0.89371122 0.89370834 0.89370833
 0.89370529 0.89371142 0.89370493 0.89370407 0.89370392 0.89370333
Epoch 26 RMSE: [0.88777452 0.88776404 0.88776209 0.88777159 0.8877742  0.88777536   | 26/40 [02:20<01:15,  5.41s/it]
 0.88777483 0.88777687 0.88777084 0.88777334 0.88777255 0.88777866
 0.88777563 0.88778338 0.88777248 0.88776928 0.88777233 0.88778684
 0.88777623 0.88778091 0.88777323 0.88777168 0.88776391 0.88777884
 0.88776672 0.8877762  0.8877737  0.88777547 0.88777577 0.88777037
 0.88777171 0.88777438 0.88777181 0.8877685  0.88777184 0.88777158
 0.88776741 0.88777229 0.88778191 0.88777304 0.88777743 0.88778429
 0.88777192 0.88777927 0.8877693  0.88777439 0.88777672 0.88777015
 0.88776649 0.88777547 0.88778011 0.8877754  0.88776771 0.88777587
 0.88777033 0.88776988 0.88776984 0.88776426 0.88777885 0.88776857
 0.88777836 0.88777281 0.8877712  0.88777399 0.88777201 0.88777811
 0.88776886 0.88777573 0.88777328 0.88777537 0.88777872 0.88776631
 0.88777333 0.88777863 0.88777018 0.88776732 0.88776958 0.88777324
 0.88776721 0.88777264 0.8877833  0.8877637  0.887776   0.88777094
 0.88776767 0.88777068 0.88777194 0.88777734 0.88777446 0.88777454
 0.88777107 0.88777733 0.88777152 0.88777029 0.8877705  0.88776943
Epoch 26 RMSE: [0.88777452 0.88776404 0.88776209 0.88777159 0.8877742  0.88777536   | 26/40 [02:20<01:15,  5.41s/it]
 0.88777483 0.88777687 0.88777084 0.88777334 0.88777255 0.88777866
 0.88777563 0.88778338 0.88777248 0.88776928 0.88777233 0.88778684
 0.88777623 0.88778091 0.88777323 0.88777168 0.88776391 0.88777884
 0.88776672 0.8877762  0.8877737  0.88777547 0.88777577 0.88777037
 0.88777171 0.88777438 0.88777181 0.8877685  0.88777184 0.88777158
 0.88776741 0.88777229 0.88778191 0.88777304 0.88777743 0.88778429
 0.88777192 0.88777927 0.8877693  0.88777439 0.88777672 0.88777015
 0.88776649 0.88777547 0.88778011 0.8877754  0.88776771 0.88777587
 0.88777033 0.88776988 0.88776984 0.88776426 0.88777885 0.88776857
 0.88777836 0.88777281 0.8877712  0.88777399 0.88777201 0.88777811
 0.88776886 0.88777573 0.88777328 0.88777537 0.88777872 0.88776631
 0.88777333 0.88777863 0.88777018 0.88776732 0.88776958 0.88777324
 0.88776721 0.88777264 0.8877833  0.8877637  0.887776   0.88777094
 0.88776767 0.88777068 0.88777194 0.88777734 0.88777446 0.88777454
 0.88777107 0.88777733 0.88777152 0.88777029 0.8877705  0.88776943
Epoch 27 RMSE: [0.88166026 0.8816496  0.88164825 0.88165724 0.88165963 0.88166075   | 27/40 [02:26<01:10,  5.44s/it]
 0.88166049 0.88166201 0.88165648 0.88165893 0.8816584  0.88166404
 0.88166115 0.88166863 0.88165802 0.88165512 0.88165797 0.88167212
 0.88166186 0.88166624 0.88165913 0.88165746 0.88165008 0.88166428
 0.88165282 0.88166154 0.8816593  0.88166088 0.88166162 0.8816565
 0.8816578  0.8816602  0.8816576  0.88165442 0.8816578  0.88165741
 0.88165372 0.88165831 0.88166713 0.88165879 0.88166269 0.88166924
 0.88165758 0.88166455 0.88165518 0.88165984 0.88166193 0.88165596
 0.88165245 0.88166108 0.88166543 0.88166085 0.88165406 0.88166145
 0.88165595 0.88165587 0.88165593 0.88165041 0.88166417 0.88165442
 0.88166378 0.88165867 0.8816567  0.88165994 0.88165765 0.88166377
 0.88165487 0.8816613  0.88165896 0.88166087 0.88166418 0.88165212
 0.88165914 0.88166378 0.88165596 0.88165334 0.8816556  0.88165884
 0.88165323 0.88165833 0.88166829 0.88164991 0.88166128 0.88165687
 0.88165369 0.88165651 0.8816577  0.88166279 0.88166009 0.88166023
 0.88165638 0.88166268 0.88165743 0.88165596 0.88165641 0.88165515
Epoch 27 RMSE: [0.88166026 0.8816496  0.88164825 0.88165724 0.88165963 0.88166075   | 27/40 [02:26<01:10,  5.44s/it] 
 0.88166049 0.88166201 0.88165648 0.88165893 0.8816584  0.88166404
 0.88166115 0.88166863 0.88165802 0.88165512 0.88165797 0.88167212
 0.88166186 0.88166624 0.88165913 0.88165746 0.88165008 0.88166428
 0.88165282 0.88166154 0.8816593  0.88166088 0.88166162 0.8816565
 0.8816578  0.8816602  0.8816576  0.88165442 0.8816578  0.88165741
 0.88165372 0.88165831 0.88166713 0.88165879 0.88166269 0.88166924
 0.88165758 0.88166455 0.88165518 0.88165984 0.88166193 0.88165596
 0.88165245 0.88166108 0.88166543 0.88166085 0.88165406 0.88166145
 0.88165595 0.88165587 0.88165593 0.88165041 0.88166417 0.88165442
 0.88166378 0.88165867 0.8816567  0.88165994 0.88165765 0.88166377
 0.88165487 0.8816613  0.88165896 0.88166087 0.88166418 0.88165212
 0.88165914 0.88166378 0.88165596 0.88165334 0.8816556  0.88165884
 0.88165323 0.88165833 0.88166829 0.88164991 0.88166128 0.88165687
 0.88165369 0.88165651 0.8816577  0.88166279 0.88166009 0.88166023
 0.88165638 0.88166268 0.88165743 0.88165596 0.88165641 0.88165515
Epoch 28 RMSE: [0.87510834 0.87509754 0.87509663 0.87510501 0.87510732 0.87510844   | 28/40 [02:31<01:04,  5.41s/it]
 0.87510832 0.87510935 0.8751045  0.87510659 0.8751064  0.87511164
 0.87510898 0.87511614 0.87510577 0.87510311 0.87510578 0.87511943
 0.87510964 0.87511362 0.87510719 0.87510538 0.8750985  0.87511187
 0.87510119 0.87510917 0.87510698 0.87510852 0.87510968 0.87510468
 0.87510608 0.87510799 0.87510547 0.87510238 0.87510591 0.87510559
 0.87510213 0.87510641 0.87511438 0.87510659 0.87511041 0.87511643
 0.87510541 0.87511212 0.8751033  0.87510743 0.87510914 0.87510382
 0.87510055 0.87510899 0.87511296 0.87510838 0.87510233 0.87510917
 0.87510382 0.87510422 0.87510418 0.87509873 0.87511159 0.87510246
 0.87511153 0.87510659 0.87510447 0.87510802 0.87510553 0.87511167
 0.87510313 0.87510911 0.87510697 0.87510844 0.87511208 0.87510019
 0.875107   0.87511121 0.8751039  0.87510128 0.87510373 0.87510653
 0.87510125 0.87510633 0.8751156  0.87509846 0.87510891 0.87510498
 0.87510189 0.87510428 0.87510558 0.87511057 0.87510792 0.8751081
 0.87510402 0.87511035 0.87510553 0.87510394 0.87510449 0.87510294
Epoch 28 RMSE: [0.87510834 0.87509754 0.87509663 0.87510501 0.87510732 0.87510844   | 28/40 [02:31<01:04,  5.41s/it]
 0.87510832 0.87510935 0.8751045  0.87510659 0.8751064  0.87511164
 0.87510898 0.87511614 0.87510577 0.87510311 0.87510578 0.87511943
 0.87510964 0.87511362 0.87510719 0.87510538 0.8750985  0.87511187
 0.87510119 0.87510917 0.87510698 0.87510852 0.87510968 0.87510468
 0.87510608 0.87510799 0.87510547 0.87510238 0.87510591 0.87510559
 0.87510213 0.87510641 0.87511438 0.87510659 0.87511041 0.87511643
 0.87510541 0.87511212 0.8751033  0.87510743 0.87510914 0.87510382
 0.87510055 0.87510899 0.87511296 0.87510838 0.87510233 0.87510917
 0.87510382 0.87510422 0.87510418 0.87509873 0.87511159 0.87510246
 0.87511153 0.87510659 0.87510447 0.87510802 0.87510553 0.87511167
 0.87510313 0.87510911 0.87510697 0.87510844 0.87511208 0.87510019
 0.875107   0.87511121 0.8751039  0.87510128 0.87510373 0.87510653
 0.87510125 0.87510633 0.8751156  0.87509846 0.87510891 0.87510498
 0.87510189 0.87510428 0.87510558 0.87511057 0.87510792 0.8751081
 0.87510402 0.87511035 0.87510553 0.87510394 0.87510449 0.87510294
Epoch 29 RMSE: [0.86823894 0.86822801 0.86822766 0.86823551 0.86823771 0.86823867▎  | 29/40 [02:37<01:00,  5.46s/it]
 0.86823888 0.86823943 0.86823506 0.86823688 0.86823717 0.86824192
 0.86823941 0.86824639 0.8682362  0.86823385 0.86823621 0.86824941
 0.86824005 0.86824385 0.86823777 0.86823607 0.86822946 0.86824213
 0.86823216 0.86823966 0.86823746 0.86823883 0.86824036 0.86823545
 0.86823686 0.86823855 0.8682361  0.86823303 0.86823667 0.86823629
 0.8682332  0.86823711 0.86824446 0.86823721 0.86824071 0.86824626
 0.86823599 0.86824224 0.86823406 0.86823781 0.8682393  0.86823449
 0.86823139 0.86823948 0.86824308 0.8682386  0.86823343 0.86823948
 0.8682343  0.86823506 0.86823508 0.86822965 0.86824176 0.86823308
 0.86824182 0.86823728 0.86823501 0.8682387  0.86823606 0.8682422
 0.86823394 0.86823947 0.86823755 0.8682388  0.86824244 0.86823086
 0.86823758 0.86824138 0.86823449 0.86823205 0.86823441 0.86823701
 0.86823191 0.86823693 0.8682456  0.86822948 0.86823926 0.86823567
 0.86823255 0.8682349  0.86823623 0.86824105 0.86823848 0.86823869
 0.86823434 0.86824056 0.86823623 0.8682345  0.86823516 0.86823361
Epoch 29 RMSE: [0.86823894 0.86822801 0.86822766 0.86823551 0.86823771 0.86823867▎  | 29/40 [02:37<01:00,  5.46s/it]
 0.86823888 0.86823943 0.86823506 0.86823688 0.86823717 0.86824192
 0.86823941 0.86824639 0.8682362  0.86823385 0.86823621 0.86824941
 0.86824005 0.86824385 0.86823777 0.86823607 0.86822946 0.86824213
 0.86823216 0.86823966 0.86823746 0.86823883 0.86824036 0.86823545
 0.86823686 0.86823855 0.8682361  0.86823303 0.86823667 0.86823629
 0.8682332  0.86823711 0.86824446 0.86823721 0.86824071 0.86824626
 0.86823599 0.86824224 0.86823406 0.86823781 0.8682393  0.86823449
 0.86823139 0.86823948 0.86824308 0.8682386  0.86823343 0.86823948
 0.8682343  0.86823506 0.86823508 0.86822965 0.86824176 0.86823308
 0.86824182 0.86823728 0.86823501 0.8682387  0.86823606 0.8682422
 0.86823394 0.86823947 0.86823755 0.8682388  0.86824244 0.86823086
 0.86823758 0.86824138 0.86823449 0.86823205 0.86823441 0.86823701
 0.86823191 0.86823693 0.8682456  0.86822948 0.86823926 0.86823567
 0.86823255 0.8682349  0.86823623 0.86824105 0.86823848 0.86823869
 0.86823434 0.86824056 0.86823623 0.8682345  0.86823516 0.86823361
Epoch 30 RMSE: [0.86110019 0.86108921 0.86108926 0.8610966  0.86109871 0.86109966▌  | 30/40 [02:42<00:54,  5.46s/it]
 0.86109996 0.86110027 0.86109627 0.86109785 0.86109837 0.86110273
 0.86110047 0.86110709 0.86109723 0.86109514 0.86109729 0.86111005
 0.86110108 0.86110462 0.86109897 0.86109726 0.86109122 0.86110306
 0.86109372 0.86110043 0.86109851 0.86109985 0.8611016  0.86109689
 0.86109814 0.86109965 0.86109726 0.8610943  0.8610979  0.86109759
 0.86109464 0.86109845 0.86110525 0.86109832 0.86110154 0.86110695
 0.86109706 0.86110309 0.86109537 0.86109868 0.86109994 0.86109568
 0.86109269 0.86110049 0.86110393 0.8610996  0.86109488 0.86110037
 0.86109547 0.86109657 0.8610965  0.8610912  0.86110239 0.86109435
 0.86110294 0.86109839 0.86109597 0.86109998 0.86109735 0.86110324
 0.86109536 0.86110052 0.86109861 0.86109987 0.86110357 0.86109208
 0.86109876 0.86110217 0.86109577 0.86109338 0.8610957  0.861098
 0.86109327 0.86109804 0.86110613 0.86109114 0.86110013 0.86109695
 0.86109409 0.86109602 0.86109743 0.86110196 0.8610996  0.8610997
 0.86109523 0.86110151 0.86109746 0.86109567 0.86109655 0.86109468
Epoch 30 RMSE: [0.86110019 0.86108921 0.86108926 0.8610966  0.86109871 0.86109966▌  | 30/40 [02:42<00:54,  5.46s/it]  
 0.86109996 0.86110027 0.86109627 0.86109785 0.86109837 0.86110273
 0.86110047 0.86110709 0.86109723 0.86109514 0.86109729 0.86111005
 0.86110108 0.86110462 0.86109897 0.86109726 0.86109122 0.86110306
 0.86109372 0.86110043 0.86109851 0.86109985 0.8611016  0.86109689
 0.86109814 0.86109965 0.86109726 0.8610943  0.8610979  0.86109759
 0.86109464 0.86109845 0.86110525 0.86109832 0.86110154 0.86110695
 0.86109706 0.86110309 0.86109537 0.86109868 0.86109994 0.86109568
 0.86109269 0.86110049 0.86110393 0.8610996  0.86109488 0.86110037
 0.86109547 0.86109657 0.8610965  0.8610912  0.86110239 0.86109435
 0.86110294 0.86109839 0.86109597 0.86109998 0.86109735 0.86110324
 0.86109536 0.86110052 0.86109861 0.86109987 0.86110357 0.86109208
 0.86109876 0.86110217 0.86109577 0.86109338 0.8610957  0.861098
 0.86109327 0.86109804 0.86110613 0.86109114 0.86110013 0.86109695
 0.86109409 0.86109602 0.86109743 0.86110196 0.8610996  0.8610997
 0.86109523 0.86110151 0.86109746 0.86109567 0.86109655 0.86109468
Epoch 31 RMSE: [0.85366208 0.8536512  0.85365154 0.85365852 0.85366058 0.8536614█▊  | 31/40 [02:47<00:48,  5.42s/it]
 0.85366187 0.85366186 0.85365826 0.85365968 0.85366043 0.85366452
 0.85366223 0.85366873 0.85365907 0.85365719 0.85365917 0.85367156
 0.85366291 0.85366622 0.8536611  0.85365924 0.85365342 0.85366465
 0.85365595 0.85366222 0.8536604  0.85366154 0.85366359 0.85365899
 0.85366042 0.85366158 0.85365923 0.85365632 0.85366    0.85365967
 0.85365697 0.85366057 0.85366668 0.85366008 0.85366332 0.85366834
 0.853659   0.85366475 0.85365754 0.85366053 0.85366156 0.85365771
 0.85365493 0.85366241 0.85366556 0.85366125 0.8536572  0.85366224
 0.85365745 0.85365869 0.85365873 0.85365359 0.85366411 0.85365637
 0.85366465 0.85366055 0.8536579  0.85366198 0.85365927 0.85366529
 0.85365757 0.85366231 0.85366066 0.85366172 0.85366532 0.85365414
 0.85366065 0.85366374 0.85365783 0.85365547 0.85365796 0.85365986
 0.85365538 0.85366    0.85366759 0.85365347 0.85366188 0.85365909
 0.85365633 0.85365804 0.85365941 0.85366392 0.85366158 0.85366157
 0.85365694 0.85366323 0.85365949 0.85365771 0.85365851 0.85365664
Epoch 31 RMSE: [0.85366208 0.8536512  0.85365154 0.85365852 0.85366058 0.8536614█▊  | 31/40 [02:47<00:48,  5.42s/it]
 0.85366187 0.85366186 0.85365826 0.85365968 0.85366043 0.85366452
 0.85366223 0.85366873 0.85365907 0.85365719 0.85365917 0.85367156
 0.85366291 0.85366622 0.8536611  0.85365924 0.85365342 0.85366465
 0.85365595 0.85366222 0.8536604  0.85366154 0.85366359 0.85365899
 0.85366042 0.85366158 0.85365923 0.85365632 0.85366    0.85365967
 0.85365697 0.85366057 0.85366668 0.85366008 0.85366332 0.85366834
 0.853659   0.85366475 0.85365754 0.85366053 0.85366156 0.85365771
 0.85365493 0.85366241 0.85366556 0.85366125 0.8536572  0.85366224
 0.85365745 0.85365869 0.85365873 0.85365359 0.85366411 0.85365637
 0.85366465 0.85366055 0.8536579  0.85366198 0.85365927 0.85366529
 0.85365757 0.85366231 0.85366066 0.85366172 0.85366532 0.85365414
 0.85366065 0.85366374 0.85365783 0.85365547 0.85365796 0.85365986
 0.85365538 0.85366    0.85366759 0.85365347 0.85366188 0.85365909
 0.85365633 0.85365804 0.85365941 0.85366392 0.85366158 0.85366157
 0.85365694 0.85366323 0.85365949 0.85365771 0.85365851 0.85365664
Epoch 32 RMSE: [0.84594586 0.84593507 0.84593559 0.84594237 0.84594421 0.84594509█  | 32/40 [02:53<00:43,  5.40s/it]
 0.84594566 0.84594534 0.84594213 0.84594322 0.84594434 0.84594795
 0.84594583 0.84595223 0.84594263 0.84594109 0.84594312 0.84595501
 0.8459465  0.84594959 0.84594501 0.84594311 0.84593757 0.8459482
 0.84594013 0.84594583 0.84594402 0.84594522 0.84594734 0.84594291
 0.84594443 0.84594526 0.84594318 0.84594011 0.84594379 0.84594359
 0.84594102 0.84594446 0.84595027 0.84594398 0.84594684 0.84595155
 0.84594297 0.84594827 0.84594161 0.84594428 0.84594511 0.84594163
 0.84593905 0.84594617 0.84594921 0.84594511 0.84594133 0.8459459
 0.84594134 0.84594266 0.84594281 0.84593768 0.84594772 0.84594009
 0.84594836 0.84594434 0.84594163 0.84594589 0.8459431  0.84594906
 0.84594166 0.84594595 0.84594445 0.84594517 0.84594899 0.84593818
 0.8459444  0.84594727 0.84594165 0.84593954 0.8459419  0.8459437
 0.8459393  0.84594389 0.84595098 0.84593773 0.84594554 0.8459431
 0.84594023 0.84594188 0.84594329 0.84594764 0.84594544 0.84594538
 0.84594058 0.84594678 0.84594343 0.84594165 0.84594246 0.84594058
Epoch 32 RMSE: [0.84594586 0.84593507 0.84593559 0.84594237 0.84594421 0.84594509█  | 32/40 [02:53<00:43,  5.40s/it]   
 0.84594566 0.84594534 0.84594213 0.84594322 0.84594434 0.84594795
 0.84594583 0.84595223 0.84594263 0.84594109 0.84594312 0.84595501
 0.8459465  0.84594959 0.84594501 0.84594311 0.84593757 0.8459482
 0.84594013 0.84594583 0.84594402 0.84594522 0.84594734 0.84594291
 0.84594443 0.84594526 0.84594318 0.84594011 0.84594379 0.84594359
 0.84594102 0.84594446 0.84595027 0.84594398 0.84594684 0.84595155
 0.84594297 0.84594827 0.84594161 0.84594428 0.84594511 0.84594163
 0.84593905 0.84594617 0.84594921 0.84594511 0.84594133 0.8459459
 0.84594134 0.84594266 0.84594281 0.84593768 0.84594772 0.84594009
 0.84594836 0.84594434 0.84594163 0.84594589 0.8459431  0.84594906
 0.84594166 0.84594595 0.84594445 0.84594517 0.84594899 0.84593818
 0.8459444  0.84594727 0.84594165 0.84593954 0.8459419  0.8459437
 0.8459393  0.84594389 0.84595098 0.84593773 0.84594554 0.8459431
 0.84594023 0.84594188 0.84594329 0.84594764 0.84594544 0.84594538
 0.84594058 0.84594678 0.84594343 0.84594165 0.84594246 0.84594058
Epoch 33 RMSE: [0.83771943 0.8377086  0.8377095  0.83771574 0.83771762 0.8377185██▎ | 33/40 [02:58<00:37,  5.39s/it]
 0.83771903 0.83771866 0.8377158  0.83771667 0.83771793 0.83772127
 0.83771922 0.83772547 0.83771622 0.83771474 0.83771651 0.83772803
 0.83771996 0.8377228  0.83771847 0.83771653 0.83771155 0.83772148
 0.83771396 0.83771926 0.83771747 0.83771852 0.83772094 0.8377167
 0.83771801 0.83771879 0.83771667 0.83771389 0.83771749 0.83771721
 0.83771471 0.83771805 0.83772337 0.83771744 0.83772014 0.8377247
 0.8377164  0.83772154 0.83771525 0.8377175  0.83771824 0.83771513
 0.83771271 0.83771956 0.83772238 0.83771823 0.83771512 0.83771929
 0.83771487 0.83771656 0.83771647 0.83771152 0.83772088 0.83771364
 0.83772171 0.83771793 0.83771514 0.83771959 0.83771663 0.83772244
 0.83771531 0.8377194  0.83771789 0.83771869 0.83772234 0.83771167
 0.83771806 0.8377206  0.83771532 0.83771307 0.83771561 0.83771703
 0.83771292 0.83771733 0.83772404 0.83771162 0.83771882 0.83771671
 0.83771385 0.83771542 0.83771674 0.83772092 0.83771887 0.83771878
 0.83771398 0.83772002 0.83771701 0.83771509 0.83771609 0.83771392
Epoch 33 RMSE: [0.83771943 0.8377086  0.8377095  0.83771574 0.83771762 0.8377185██▎ | 33/40 [02:58<00:37,  5.39s/it]
 0.83771903 0.83771866 0.8377158  0.83771667 0.83771793 0.83772127
 0.83771922 0.83772547 0.83771622 0.83771474 0.83771651 0.83772803
 0.83771996 0.8377228  0.83771847 0.83771653 0.83771155 0.83772148
 0.83771396 0.83771926 0.83771747 0.83771852 0.83772094 0.8377167
 0.83771801 0.83771879 0.83771667 0.83771389 0.83771749 0.83771721
 0.83771471 0.83771805 0.83772337 0.83771744 0.83772014 0.8377247
 0.8377164  0.83772154 0.83771525 0.8377175  0.83771824 0.83771513
 0.83771271 0.83771956 0.83772238 0.83771823 0.83771512 0.83771929
 0.83771487 0.83771656 0.83771647 0.83771152 0.83772088 0.83771364
 0.83772171 0.83771793 0.83771514 0.83771959 0.83771663 0.83772244
 0.83771531 0.8377194  0.83771789 0.83771869 0.83772234 0.83771167
 0.83771806 0.8377206  0.83771532 0.83771307 0.83771561 0.83771703
 0.83771292 0.83771733 0.83772404 0.83771162 0.83771882 0.83771671
 0.83771385 0.83771542 0.83771674 0.83772092 0.83771887 0.83771878
 0.83771398 0.83772002 0.83771701 0.83771509 0.83771609 0.83771392
Epoch 34 RMSE: [0.82906242 0.82905181 0.82905282 0.82905877 0.82906061 0.82906153█▌ | 34/40 [03:03<00:32,  5.39s/it]
 0.82906211 0.82906154 0.82905886 0.82905972 0.82906121 0.82906405
 0.82906215 0.82906818 0.82905918 0.82905794 0.82905951 0.82907069
 0.82906285 0.82906559 0.8290616  0.82905964 0.82905486 0.8290643
 0.82905723 0.82906212 0.82906052 0.82906143 0.82906404 0.82905989
 0.82906124 0.82906175 0.82905977 0.82905697 0.82906059 0.82906034
 0.82905816 0.82906122 0.8290661  0.82906042 0.82906303 0.82906726
 0.82905952 0.82906441 0.8290585  0.82906046 0.82906095 0.82905824
 0.829056   0.82906252 0.82906519 0.82906123 0.82905849 0.82906223
 0.82905789 0.82905976 0.82905974 0.82905496 0.82906382 0.82905679
 0.8290647  0.8290611  0.8290581  0.82906269 0.82905983 0.82906548
 0.8290586  0.82906236 0.82906112 0.82906161 0.82906524 0.82905494
 0.82906106 0.82906344 0.8290585  0.82905637 0.82905886 0.8290601
 0.82905615 0.82906054 0.8290667  0.82905507 0.82906173 0.82905983
 0.82905715 0.82905861 0.82905985 0.82906393 0.82906203 0.82906179
 0.82905677 0.82906296 0.82906009 0.82905844 0.82905931 0.82905696
Epoch 34 RMSE: [0.82906242 0.82905181 0.82905282 0.82905877 0.82906061 0.82906153█▌ | 34/40 [03:03<00:32,  5.39s/it]
 0.82906211 0.82906154 0.82905886 0.82905972 0.82906121 0.82906405
 0.82906215 0.82906818 0.82905918 0.82905794 0.82905951 0.82907069
 0.82906285 0.82906559 0.8290616  0.82905964 0.82905486 0.8290643
 0.82905723 0.82906212 0.82906052 0.82906143 0.82906404 0.82905989
 0.82906124 0.82906175 0.82905977 0.82905697 0.82906059 0.82906034
 0.82905816 0.82906122 0.8290661  0.82906042 0.82906303 0.82906726
 0.82905952 0.82906441 0.8290585  0.82906046 0.82906095 0.82905824
 0.829056   0.82906252 0.82906519 0.82906123 0.82905849 0.82906223
 0.82905789 0.82905976 0.82905974 0.82905496 0.82906382 0.82905679
 0.8290647  0.8290611  0.8290581  0.82906269 0.82905983 0.82906548
 0.8290586  0.82906236 0.82906112 0.82906161 0.82906524 0.82905494
 0.82906106 0.82906344 0.8290585  0.82905637 0.82905886 0.8290601
 0.82905615 0.82906054 0.8290667  0.82905507 0.82906173 0.82905983
 0.82905715 0.82905861 0.82905985 0.82906393 0.82906203 0.82906179
 0.82905677 0.82906296 0.82906009 0.82905844 0.82905931 0.82905696
Epoch 35 RMSE: [0.82017231 0.82016204 0.82016311 0.82016864 0.82017055 0.82017148█▊ | 35/40 [03:09<00:26,  5.39s/it]
 0.8201721  0.8201715  0.8201689  0.82016971 0.82017122 0.82017384
 0.82017215 0.82017791 0.82016916 0.82016807 0.82016953 0.82018029
 0.82017272 0.8201754  0.82017164 0.82016967 0.82016518 0.82017405
 0.82016754 0.82017205 0.82017061 0.82017142 0.82017416 0.82016997
 0.82017132 0.82017164 0.82016973 0.82016705 0.82017054 0.82017051
 0.82016827 0.82017127 0.82017577 0.82017032 0.8201729  0.82017693
 0.82016949 0.82017423 0.82016872 0.82017031 0.82017079 0.82016828
 0.82016614 0.82017246 0.82017497 0.82017105 0.82016867 0.82017223
 0.82016795 0.82016992 0.8201699  0.82016526 0.82017363 0.82016676
 0.82017456 0.82017114 0.82016809 0.82017271 0.82016995 0.82017544
 0.82016878 0.82017224 0.82017109 0.82017154 0.82017509 0.82016506
 0.82017096 0.82017317 0.82016858 0.82016643 0.8201689  0.82017012
 0.82016626 0.82017046 0.82017632 0.82016548 0.82017168 0.82016991
 0.8201673  0.82016864 0.82016995 0.82017382 0.82017194 0.82017173
 0.82016677 0.82017283 0.82017015 0.82016854 0.82016944 0.82016701
Epoch 35 RMSE: [0.82017231 0.82016204 0.82016311 0.82016864 0.82017055 0.82017148█▊ | 35/40 [03:09<00:26,  5.39s/it]
 0.8201721  0.8201715  0.8201689  0.82016971 0.82017122 0.82017384
 0.82017215 0.82017791 0.82016916 0.82016807 0.82016953 0.82018029
 0.82017272 0.8201754  0.82017164 0.82016967 0.82016518 0.82017405
 0.82016754 0.82017205 0.82017061 0.82017142 0.82017416 0.82016997
 0.82017132 0.82017164 0.82016973 0.82016705 0.82017054 0.82017051
 0.82016827 0.82017127 0.82017577 0.82017032 0.8201729  0.82017693
 0.82016949 0.82017423 0.82016872 0.82017031 0.82017079 0.82016828
 0.82016614 0.82017246 0.82017497 0.82017105 0.82016867 0.82017223
 0.82016795 0.82016992 0.8201699  0.82016526 0.82017363 0.82016676
 0.82017456 0.82017114 0.82016809 0.82017271 0.82016995 0.82017544
 0.82016878 0.82017224 0.82017109 0.82017154 0.82017509 0.82016506
 0.82017096 0.82017317 0.82016858 0.82016643 0.8201689  0.82017012
 0.82016626 0.82017046 0.82017632 0.82016548 0.82017168 0.82016991
 0.8201673  0.82016864 0.82016995 0.82017382 0.82017194 0.82017173
 0.82016677 0.82017283 0.82017015 0.82016854 0.82016944 0.82016701
Epoch 36 RMSE: [0.81081981 0.81080947 0.81081085 0.81081603 0.81081794 0.81081889██ | 36/40 [03:14<00:21,  5.39s/it]
 0.81081953 0.81081878 0.81081649 0.81081708 0.81081868 0.81082123
 0.81081943 0.81082507 0.81081654 0.81081556 0.81081706 0.81082727
 0.81082016 0.81082261 0.8108191  0.81081713 0.81081282 0.81082138
 0.81081519 0.81081928 0.81081798 0.81081867 0.81082166 0.81081759
 0.81081887 0.81081909 0.81081722 0.81081455 0.81081805 0.81081795
 0.81081603 0.81081881 0.81082297 0.81081775 0.81082016 0.81082404
 0.810817   0.81082146 0.81081635 0.81081773 0.81081798 0.81081577
 0.81081395 0.81081978 0.81082226 0.81081839 0.81081635 0.81081948
 0.81081547 0.81081756 0.81081765 0.81081293 0.81082084 0.81081429
 0.81082202 0.81081866 0.81081565 0.81082023 0.81081741 0.810823
 0.81081641 0.8108196  0.8108186  0.81081898 0.81082245 0.81081256
 0.81081846 0.81082055 0.8108161  0.81081414 0.81081652 0.81081752
 0.81081399 0.81081803 0.81082343 0.81081312 0.810819   0.81081753
 0.81081492 0.81081624 0.81081739 0.81082118 0.81081948 0.81081908
 0.81081411 0.81082014 0.81081767 0.81081611 0.810817   0.81081452
Epoch 36 RMSE: [0.81081981 0.81080947 0.81081085 0.81081603 0.81081794 0.81081889██ | 36/40 [03:14<00:21,  5.39s/it]  
 0.81081953 0.81081878 0.81081649 0.81081708 0.81081868 0.81082123
 0.81081943 0.81082507 0.81081654 0.81081556 0.81081706 0.81082727
 0.81082016 0.81082261 0.8108191  0.81081713 0.81081282 0.81082138
 0.81081519 0.81081928 0.81081798 0.81081867 0.81082166 0.81081759
 0.81081887 0.81081909 0.81081722 0.81081455 0.81081805 0.81081795
 0.81081603 0.81081881 0.81082297 0.81081775 0.81082016 0.81082404
 0.810817   0.81082146 0.81081635 0.81081773 0.81081798 0.81081577
 0.81081395 0.81081978 0.81082226 0.81081839 0.81081635 0.81081948
 0.81081547 0.81081756 0.81081765 0.81081293 0.81082084 0.81081429
 0.81082202 0.81081866 0.81081565 0.81082023 0.81081741 0.810823
 0.81081641 0.8108196  0.8108186  0.81081898 0.81082245 0.81081256
 0.81081846 0.81082055 0.8108161  0.81081414 0.81081652 0.81081752
 0.81081399 0.81081803 0.81082343 0.81081312 0.810819   0.81081753
 0.81081492 0.81081624 0.81081739 0.81082118 0.81081948 0.81081908
 0.81081411 0.81082014 0.81081767 0.81081611 0.810817   0.81081452
Epoch 37 RMSE: [0.80113799 0.80112786 0.80112946 0.8011344  0.80113625 0.80113716██▎| 37/40 [03:20<00:16,  5.38s/it]
 0.80113779 0.80113699 0.80113489 0.80113526 0.80113717 0.80113932
 0.80113751 0.80114324 0.80113487 0.80113398 0.80113541 0.80114532
 0.80113833 0.80114074 0.80113741 0.8011355  0.80113144 0.80113951
 0.8011337  0.80113761 0.80113614 0.80113682 0.8011399  0.80113607
 0.80113731 0.80113738 0.80113565 0.8011329  0.80113646 0.8011364
 0.80113447 0.80113722 0.80114115 0.80113603 0.80113829 0.80114203
 0.80113527 0.80113972 0.80113468 0.80113594 0.8011362  0.80113419
 0.80113248 0.80113809 0.80114036 0.80113674 0.80113486 0.80113773
 0.80113387 0.80113608 0.80113613 0.80113155 0.80113904 0.80113272
 0.80114025 0.80113697 0.80113399 0.80113849 0.80113575 0.80114118
 0.80113488 0.80113782 0.80113708 0.80113718 0.80114051 0.80113103
 0.8011367  0.80113878 0.80113463 0.80113255 0.80113509 0.80113586
 0.80113244 0.80113643 0.80114146 0.80113171 0.80113712 0.80113596
 0.80113338 0.80113463 0.80113561 0.80113943 0.80113786 0.80113742
 0.80113239 0.80113832 0.80113601 0.80113463 0.80113538 0.80113285
Epoch 37 RMSE: [0.80113799 0.80112786 0.80112946 0.8011344  0.80113625 0.80113716██▎| 37/40 [03:20<00:16,  5.38s/it]
 0.80113779 0.80113699 0.80113489 0.80113526 0.80113717 0.80113932
 0.80113751 0.80114324 0.80113487 0.80113398 0.80113541 0.80114532
 0.80113833 0.80114074 0.80113741 0.8011355  0.80113144 0.80113951
 0.8011337  0.80113761 0.80113614 0.80113682 0.8011399  0.80113607
 0.80113731 0.80113738 0.80113565 0.8011329  0.80113646 0.8011364
 0.80113447 0.80113722 0.80114115 0.80113603 0.80113829 0.80114203
 0.80113527 0.80113972 0.80113468 0.80113594 0.8011362  0.80113419
 0.80113248 0.80113809 0.80114036 0.80113674 0.80113486 0.80113773
 0.80113387 0.80113608 0.80113613 0.80113155 0.80113904 0.80113272
 0.80114025 0.80113697 0.80113399 0.80113849 0.80113575 0.80114118
 0.80113488 0.80113782 0.80113708 0.80113718 0.80114051 0.80113103
 0.8011367  0.80113878 0.80113463 0.80113255 0.80113509 0.80113586
 0.80113244 0.80113643 0.80114146 0.80113171 0.80113712 0.80113596
 0.80113338 0.80113463 0.80113561 0.80113943 0.80113786 0.80113742
 0.80113239 0.80113832 0.80113601 0.80113463 0.80113538 0.80113285
Epoch 38 RMSE: [0.79122696 0.79121708 0.79121867 0.79122332 0.79122516 0.79122614██▌| 38/40 [03:25<00:10,  5.38s/it]
 0.7912267  0.79122588 0.79122388 0.79122431 0.79122614 0.79122807
 0.79122642 0.79123206 0.79122377 0.79122318 0.79122444 0.79123391
 0.79122715 0.79122941 0.79122645 0.79122432 0.79122066 0.79122825
 0.791223   0.79122635 0.79122512 0.79122584 0.79122889 0.79122501
 0.79122638 0.79122623 0.79122459 0.79122185 0.79122537 0.79122531
 0.79122357 0.79122622 0.79122981 0.79122496 0.79122719 0.79123058
 0.79122432 0.79122854 0.79122391 0.79122483 0.79122503 0.79122319
 0.79122159 0.79122685 0.79122907 0.79122558 0.79122394 0.79122661
 0.79122288 0.79122503 0.79122514 0.79122075 0.79122793 0.79122165
 0.79122909 0.79122607 0.79122303 0.79122756 0.79122472 0.79123009
 0.79122403 0.79122682 0.79122615 0.79122614 0.79122933 0.79122012
 0.79122565 0.79122763 0.79122357 0.79122168 0.79122415 0.79122482
 0.79122153 0.79122531 0.79123012 0.79122104 0.791226   0.79122498
 0.79122254 0.79122362 0.7912245  0.79122833 0.79122682 0.7912263
 0.79122115 0.79122715 0.79122493 0.79122377 0.79122452 0.7912218
Epoch 38 RMSE: [0.79122696 0.79121708 0.79121867 0.79122332 0.79122516 0.79122614██▌| 38/40 [03:25<00:10,  5.38s/it] 
 0.7912267  0.79122588 0.79122388 0.79122431 0.79122614 0.79122807
 0.79122642 0.79123206 0.79122377 0.79122318 0.79122444 0.79123391
 0.79122715 0.79122941 0.79122645 0.79122432 0.79122066 0.79122825
 0.791223   0.79122635 0.79122512 0.79122584 0.79122889 0.79122501
 0.79122638 0.79122623 0.79122459 0.79122185 0.79122537 0.79122531
 0.79122357 0.79122622 0.79122981 0.79122496 0.79122719 0.79123058
 0.79122432 0.79122854 0.79122391 0.79122483 0.79122503 0.79122319
 0.79122159 0.79122685 0.79122907 0.79122558 0.79122394 0.79122661
 0.79122288 0.79122503 0.79122514 0.79122075 0.79122793 0.79122165
 0.79122909 0.79122607 0.79122303 0.79122756 0.79122472 0.79123009
 0.79122403 0.79122682 0.79122615 0.79122614 0.79122933 0.79122012
 0.79122565 0.79122763 0.79122357 0.79122168 0.79122415 0.79122482
 0.79122153 0.79122531 0.79123012 0.79122104 0.791226   0.79122498
 0.79122254 0.79122362 0.7912245  0.79122833 0.79122682 0.7912263
 0.79122115 0.79122715 0.79122493 0.79122377 0.79122452 0.7912218
Epoch 39 RMSE: [0.78078513 0.78077536 0.78077706 0.78078141 0.78078339 0.78078432██▊| 39/40 [03:30<00:05,  5.38s/it]
 0.78078488 0.78078405 0.78078212 0.78078244 0.78078443 0.78078615
 0.78078445 0.78078999 0.78078183 0.78078142 0.78078265 0.78079179
 0.78078528 0.78078739 0.78078456 0.7807825  0.78077907 0.7807863
 0.7807814  0.78078436 0.78078328 0.78078399 0.78078715 0.78078328
 0.78078464 0.78078443 0.78078289 0.78078008 0.78078361 0.7807835
 0.78078188 0.78078444 0.78078781 0.78078311 0.78078521 0.78078856
 0.78078253 0.78078657 0.7807823  0.78078296 0.78078306 0.78078138
 0.78078    0.78078495 0.78078713 0.78078365 0.78078236 0.78078467
 0.78078112 0.7807834  0.78078347 0.78077925 0.78078592 0.78077975
 0.7807872  0.78078425 0.78078123 0.78078582 0.780783   0.78078834
 0.78078244 0.78078492 0.78078433 0.78078429 0.78078745 0.78077847
 0.78078381 0.78078568 0.78078189 0.78078002 0.78078253 0.78078302
 0.78077985 0.78078347 0.78078803 0.78077943 0.78078407 0.78078319
 0.78078081 0.78078185 0.78078269 0.78078646 0.78078506 0.78078443
 0.78077923 0.78078527 0.7807832  0.78078205 0.78078281 0.78078012
Epoch 39 RMSE: [0.78078513 0.78077536 0.78077706 0.78078141 0.78078339 0.78078432██▊| 39/40 [03:30<00:05,  5.38s/it]
 0.78078488 0.78078405 0.78078212 0.78078244 0.78078443 0.78078615
 0.78078445 0.78078999 0.78078183 0.78078142 0.78078265 0.78079179
 0.78078528 0.78078739 0.78078456 0.7807825  0.78077907 0.7807863
 0.7807814  0.78078436 0.78078328 0.78078399 0.78078715 0.78078328
 0.78078464 0.78078443 0.78078289 0.78078008 0.78078361 0.7807835
 0.78078188 0.78078444 0.78078781 0.78078311 0.78078521 0.78078856
 0.78078253 0.78078657 0.7807823  0.78078296 0.78078306 0.78078138
 0.78078    0.78078495 0.78078713 0.78078365 0.78078236 0.78078467
 0.78078112 0.7807834  0.78078347 0.78077925 0.78078592 0.78077975
 0.7807872  0.78078425 0.78078123 0.78078582 0.780783   0.78078834
 0.78078244 0.78078492 0.78078433 0.78078429 0.78078745 0.78077847
 0.78078381 0.78078568 0.78078189 0.78078002 0.78078253 0.78078302
 0.78077985 0.78078347 0.78078803 0.78077943 0.78078407 0.78078319
 0.78078081 0.78078185 0.78078269 0.78078646 0.78078506 0.78078443
 0.78077923 0.78078527 0.7807832  0.78078205 0.78078281 0.78078012
Epoch 39 RMSE: [0.78078513 0.78077536 0.78077706 0.78078141 0.78078339 0.78078432███| 40/40 [03:36<00:00,  5.36s/it]
 0.78078488 0.78078405 0.78078212 0.78078244 0.78078443 0.78078615
 0.78078445 0.78078999 0.78078183 0.78078142 0.78078265 0.78079179
 0.78078528 0.78078739 0.78078456 0.7807825  0.78077907 0.7807863
 0.7807814  0.78078436 0.78078328 0.78078399 0.78078715 0.78078328
 0.78078464 0.78078443 0.78078289 0.78078008 0.78078361 0.7807835
 0.78078188 0.78078444 0.78078781 0.78078311 0.78078521 0.78078856
 0.78078253 0.78078657 0.7807823  0.78078296 0.78078306 0.78078138
 0.78078    0.78078495 0.78078713 0.78078365 0.78078236 0.78078467
 0.78078112 0.7807834  0.78078347 0.78077925 0.78078592 0.78077975
 0.7807872  0.78078425 0.78078123 0.78078582 0.780783   0.78078834
 0.78078244 0.78078492 0.78078433 0.78078429 0.78078745 0.78077847
 0.78078381 0.78078568 0.78078189 0.78078002 0.78078253 0.78078302
 0.78077985 0.78078347 0.78078803 0.78077943 0.78078407 0.78078319
 0.78078081 0.78078185 0.78078269 0.78078646 0.78078506 0.78078443
 0.78077923 0.78078527 0.7807832  0.78078205 0.78078281 0.78078012
 0.78078184 0.78078461 0.78078518 0.7807888 ]. Training epoch 40...: 100%|██████████| 40/40 [03:36<00:00,  5.40s/it]
model.estimations()

top_n = pd.DataFrame(model.recommend(user_code_id, item_code_id, topK = 10))
top_n.to_csv('Recommendations generated/ml-100k/Self_SVDBaseline_reco.csv', index = False, header = False)

estimations = pd.DataFrame(model.estimate(user_code_id, item_code_id, test_ui))
estimations.to_csv('Recommendations generated/ml-100k/Self_SVDBaseline_estimations.csv', index = False, header = False)
import evaluation_measures as ev

estimations_df = pd.read_csv('Recommendations generated/ml-100k/Self_SVDBaseline_estimations.csv', header = None)
reco = np.loadtxt('Recommendations generated/ml-100k/Self_SVDBaseline_reco.csv', delimiter = ',')

ev.evaluate(test = pd.read_csv('./Datasets/ml-100k/test.csv', sep = '\t', header = None),
            estimations_df = estimations_df, 
            reco = reco,
            super_reactions = [4, 5])
943it [00:00, 5269.39it/s]
RMSE MAE precision recall F_1 F_05 precision_super recall_super NDCG mAP MRR LAUC HR F_2 Whole_average Reco in test Test coverage Shannon Gini
0 3.642359 3.476956 0.135949 0.079751 0.082423 0.099673 0.106545 0.104164 0.1601 0.079313 0.328798 0.536764 0.629905 0.077617 0.20175 1.0 0.282828 5.130008 0.90976

Ready-made SVD - Surprise implementation

SVD

import helpers
import surprise as sp
import imp
imp.reload(helpers)

algo = sp.SVD(biased=False) # to use unbiased version

helpers.ready_made(algo, reco_path='Recommendations generated/ml-100k/Ready_SVD_reco.csv',
          estimations_path='Recommendations generated/ml-100k/Ready_SVD_estimations.csv')
Generating predictions...
Generating top N recommendations...
Generating predictions...

SVD biased - on top baseline

import helpers
import surprise as sp
import imp
imp.reload(helpers)

algo = sp.SVD() # default is biased=True

helpers.ready_made(algo, reco_path='Recommendations generated/ml-100k/Ready_SVDBiased_reco.csv',
          estimations_path='Recommendations generated/ml-100k/Ready_SVDBiased_estimations.csv')
Generating predictions...
Generating top N recommendations...
Generating predictions...
import imp
imp.reload(ev)

import evaluation_measures as ev
dir_path="Recommendations generated/ml-100k/"
super_reactions=[4,5]
test=pd.read_csv('./Datasets/ml-100k/test.csv', sep='\t', header=None)

ev.evaluate_all(test, dir_path, super_reactions)
943it [00:00, 5574.85it/s]
943it [00:00, 5577.21it/s]
943it [00:00, 5713.84it/s]
943it [00:00, 5581.92it/s]
943it [00:00, 3580.16it/s]
943it [00:00, 4836.58it/s]
943it [00:00, 5756.69it/s]
943it [00:00, 5399.56it/s]
943it [00:00, 5308.13it/s]
943it [00:00, 5658.53it/s]
943it [00:00, 5425.27it/s]
943it [00:00, 5078.50it/s]
943it [00:00, 5840.70it/s]
943it [00:00, 5851.85it/s]
943it [00:00, 5100.40it/s]
943it [00:00, 5096.28it/s]
943it [00:00, 5309.65it/s]
943it [00:00, 5903.76it/s]
Model RMSE MAE precision recall F_1 F_05 precision_super recall_super NDCG mAP MRR LAUC HR F_2 Whole_average Reco in test Test coverage Shannon Gini
0 Self_RP3Beta 3.702928 3.527713 0.322694 0.216069 0.212152 0.247538 0.245279 0.284983 0.388271 0.248239 0.636318 0.605683 0.910923 0.205450 0.376967 0.999788 0.178932 4.549663 0.950182
0 Self_P3 3.702446 3.527273 0.282185 0.192092 0.186749 0.216980 0.204185 0.240096 0.339114 0.204905 0.572157 0.593544 0.875928 0.181702 0.340803 1.000000 0.077201 3.875892 0.974947
0 Self_TopPop 2.508258 2.217909 0.188865 0.116919 0.118732 0.141584 0.130472 0.137473 0.214651 0.111707 0.400939 0.555546 0.765642 0.112750 0.249607 1.000000 0.038961 3.159079 0.987317
0 Self_SVDBaseline 3.642359 3.476956 0.135949 0.079751 0.082423 0.099673 0.106545 0.104164 0.160100 0.079313 0.328798 0.536764 0.629905 0.077617 0.201750 1.000000 0.282828 5.130008 0.909760
0 Ready_SVD 0.951186 0.750553 0.094910 0.044564 0.051182 0.065639 0.084549 0.074410 0.106164 0.049263 0.228326 0.518988 0.477200 0.045601 0.153400 0.996925 0.219336 4.494800 0.949844
0 Self_SVD 0.914024 0.717181 0.104454 0.043836 0.053331 0.070716 0.094528 0.076751 0.106711 0.050532 0.194366 0.518647 0.479321 0.045941 0.153261 0.853765 0.148629 3.836334 0.973007
0 Ready_Baseline 0.949459 0.752487 0.091410 0.037652 0.046030 0.061286 0.079614 0.056463 0.095957 0.043178 0.198193 0.515501 0.437964 0.039549 0.141900 1.000000 0.033911 2.836513 0.991139
0 Ready_SVDBiased 0.939359 0.740564 0.086850 0.036359 0.043933 0.058123 0.076395 0.056913 0.094528 0.043830 0.203204 0.514846 0.443266 0.038036 0.141357 0.994804 0.179654 4.199699 0.962848
0 Self_KNNSurprisetask 0.946255 0.745209 0.083457 0.032848 0.041227 0.055493 0.074785 0.048890 0.089577 0.040902 0.189057 0.513076 0.417815 0.034996 0.135177 0.888547 0.130592 3.611806 0.978659
0 Self_TopRated 2.508258 2.217909 0.079321 0.032667 0.039983 0.053170 0.068884 0.048582 0.070766 0.027602 0.114790 0.512943 0.411453 0.034385 0.124546 1.000000 0.024531 2.761238 0.991660
0 Self_GlobalAvg 1.125760 0.943534 0.061188 0.025968 0.031383 0.041343 0.040558 0.032107 0.067695 0.027470 0.171187 0.509546 0.384942 0.027213 0.118383 1.000000 0.025974 2.711772 0.992003
0 Ready_Random 1.525633 1.225714 0.047720 0.022049 0.025494 0.032845 0.029077 0.025015 0.051757 0.019242 0.128181 0.507543 0.327678 0.022628 0.103269 0.987275 0.184704 5.105122 0.906561
0 Ready_I-KNN 1.030386 0.813067 0.026087 0.006908 0.010593 0.016046 0.021137 0.009522 0.024214 0.008958 0.048068 0.499885 0.154825 0.008007 0.069521 0.402333 0.434343 5.133650 0.877999
0 Ready_I-KNNBaseline 0.935327 0.737424 0.002545 0.000755 0.001105 0.001602 0.002253 0.000930 0.003444 0.001362 0.011760 0.496724 0.021209 0.000862 0.045379 0.482821 0.059885 2.232578 0.994487
0 Ready_U-KNN 1.023495 0.807913 0.000742 0.000205 0.000305 0.000449 0.000536 0.000198 0.000845 0.000274 0.002744 0.496441 0.007423 0.000235 0.042533 0.602121 0.010823 2.089186 0.995706
0 Self_BaselineIU 0.958136 0.754051 0.000954 0.000188 0.000298 0.000481 0.000644 0.000223 0.001043 0.000335 0.003348 0.496433 0.009544 0.000220 0.042809 0.699046 0.005051 1.945910 0.995669
0 Self_BaselineUI 0.967585 0.762740 0.000954 0.000170 0.000278 0.000463 0.000644 0.000189 0.000752 0.000168 0.001677 0.496424 0.009544 0.000201 0.042622 0.600530 0.005051 1.803126 0.996380
0 Self_IKNN 1.018363 0.808793 0.000318 0.000108 0.000140 0.000189 0.000000 0.000000 0.000214 0.000037 0.000368 0.496391 0.003181 0.000118 0.041755 0.392153 0.115440 4.174741 0.965327