Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Marco Cristoforetti
DST
Commits
ccaf20fa
Commit
ccaf20fa
authored
Jan 21, 2021
by
Marco Cristoforetti
Browse files
indexes valid and test datasets
parent
d85b263b
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
models/ixs_valid_test.txt
0 → 100644
View file @
ccaf20fa
This diff is collapsed.
Click to expand it.
notebooks/.ipynb_checkpoints/model_training-checkpoint.ipynb
View file @
ccaf20fa
...
...
@@ -251,6 +251,15 @@
"ixs_test = ixs_valid_test[1::2]"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"np.savetxt('ixs_valid_test.txt', ixs_valid_test, fmt='%i')"
]
},
{
"cell_type": "code",
"execution_count": 45,
...
...
%% Cell type:code id: tags:
```
python
%
matplotlib
inline
import
matplotlib.pyplot
as
plt
import
sys
;
sys
.
path
.
append
(
'../DST'
)
import
os
from
DST.config
import
data_path
import
pandas
as
pd
import
numpy
as
np
import
seaborn
as
sns
;
sns
.
set
(
style
=
"whitegrid"
,
font_scale
=
1.3
)
import
torch
import
torch.nn
as
nn
import
time
import
math
import
torch.utils.data
as
utils_data
import
torch.nn.functional
as
F
import
datetime
```
%% Cell type:code id: tags:
```
python
torch
.
manual_seed
(
21894
)
np
.
random
.
seed
(
21894
)
device
=
torch
.
device
(
"cuda"
if
torch
.
cuda
.
is_available
()
else
"cpu"
)
```
%% Cell type:code id: tags:
```
python
BEFORE
=
12
AFTER
=
12
```
%% Cell type:code id: tags:
```
python
dst_data
=
pd
.
read_pickle
(
os
.
path
.
join
(
data_path
,
'dst.pkl'
))
dst_data
[
'ora_round'
]
=
dst_data
.
ora
.
apply
(
lambda
x
:
int
(
x
.
split
(
':'
)[
0
]))
dati_agg
=
dst_data
.
groupby
([
'data'
,
'ora_round'
]).
agg
({
'BX'
:
np
.
mean
,
'BY'
:
np
.
mean
,
'BZ'
:
np
.
mean
,
'FLOW_SPEED'
:
np
.
mean
,
'PROTON_DENSITY'
:
np
.
mean
,
'TEMPERATURE'
:
np
.
mean
,
'PRESSION'
:
np
.
mean
,
'ELETTRIC'
:
np
.
mean
,
'y'
:
np
.
mean
})
dati_agg
.
reset_index
(
inplace
=
True
)
dati_agg
.
sort_values
(
by
=
[
'data'
,
'ora_round'
],
inplace
=
True
)
dataset
=
dati_agg
.
drop
(
columns
=
[
'data'
,
'ora_round'
]).
values
dataset
=
torch
.
from_numpy
(
np
.
hstack
([
np
.
arange
(
len
(
dataset
)).
reshape
([
-
1
,
1
]),
dataset
]))
last_date_train
=
dati_agg
[
dati_agg
.
data
<=
datetime
.
datetime
(
2008
,
12
,
31
)].
index
[
-
1
]
len_valid_test
=
(
len
(
dataset
)
-
last_date_train
)
/
2
last_date_train
/
len
(
dataset
),
len_valid_test
/
len
(
dataset
)
data_in
=
dataset
.
unfold
(
0
,
BEFORE
,
1
).
transpose
(
2
,
1
)
data_out
=
dataset
[
BEFORE
:].
unfold
(
0
,
AFTER
,
1
).
transpose
(
2
,
1
)
data_in
=
data_in
[:
data_out
.
size
(
0
)]
data_out
=
data_out
[:,:,
-
1
]
data_in
.
size
(),
data_out
.
size
()
```
%%%% Output: execute_result
(torch.Size([261794, 12, 10]), torch.Size([261794, 12]))
%% Cell type:code id: tags:
```
python
where_not_nan_in
=
~
torch
.
isnan
(
data_in
).
any
(
2
,
keepdim
=
True
).
any
(
1
,
keepdim
=
True
).
reshape
(
-
1
)
data_in
=
data_in
[
where_not_nan_in
]
data_out
=
data_out
[
where_not_nan_in
]
```
%% Cell type:code id: tags:
```
python
where_not_nan_out
=
~
torch
.
isnan
(
data_out
).
any
(
1
,
keepdim
=
True
).
reshape
(
-
1
)
data_in
=
data_in
[
where_not_nan_out
]
data_out
=
data_out
[
where_not_nan_out
]
last_train
=
np
.
where
(
data_in
[:,
0
,
0
]
<=
last_date_train
)[
0
][
-
1
]
+
1
data_in
=
data_in
[:,
:,
1
:]
#len_tr = int(data_in.size(0) * 0.6)
n_channels
=
data_in
.
size
(
2
)
```
%% Cell type:code id: tags:
```
python
data_in
.
size
(),
data_out
.
size
()
```
%%%% Output: execute_result
(torch.Size([186534, 12, 9]), torch.Size([186534, 12]))
%% Cell type:code id: tags:
```
python
class
MinMaxScaler
():
"""
Transform features by scaling each feature to a given range
Features in the last dim
The transformation is given by::
X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0))
X_scaled = X_std * (max - min) + min
where min, max = feature_range.
"""
def
__init__
(
self
,
feature_range
=
(
0
,
1
)):
self
.
feature_range
=
feature_range
def
fit
(
self
,
X
):
X_size
=
X
.
size
()
X
=
X
.
reshape
(
-
1
,
X_size
[
-
1
])
data_min
=
X
.
min
(
axis
=
0
).
values
data_max
=
X
.
max
(
axis
=
0
).
values
data_range
=
data_max
-
data_min
self
.
scale_
=
((
self
.
feature_range
[
1
]
-
self
.
feature_range
[
0
])
/
data_range
)
self
.
min_
=
self
.
feature_range
[
0
]
-
data_min
*
self
.
scale_
self
.
data_min_
=
data_min
self
.
data_max_
=
data_max
self
.
data_range_
=
data_range
X
=
X
.
reshape
(
X_size
)
return
self
def
transform
(
self
,
X
):
X
*=
self
.
scale_
X
+=
self
.
min_
return
X
def
inverse_transform
(
self
,
X
):
X
-=
self
.
min_
X
/=
self
.
scale_
return
X
```
%% Cell type:code id: tags:
```
python
mmScaler
=
MinMaxScaler
((
0.1
,
.
9
))
mmScaler
.
fit
(
data_in
[:
last_train
])
data_in_scaled
=
data_in
.
clone
()
data_in_scaled
=
mmScaler
.
transform
(
data_in_scaled
)
```
%% Cell type:code id: tags:
```
python
mm_scaler_out
=
MinMaxScaler
((
0.1
,
.
9
))
mm_scaler_out
.
fit
(
data_in
[:
last_train
,
:,
-
1
].
reshape
(
-
1
,
data_in
.
size
(
1
),
1
))
data_out_scaled
=
data_out
.
clone
()
data_out_scaled
=
mm_scaler_out
.
transform
(
data_out_scaled
)
```
%% Cell type:code id: tags:
```
python
class
Dataset
(
utils_data
.
Dataset
):
def
__init__
(
self
,
dataset_in
,
dataset_out
):
self
.
dataset_in
=
dataset_in
self
.
dataset_out
=
dataset_out
def
__len__
(
self
):
return
self
.
dataset_in
.
size
(
0
)
def
__getitem__
(
self
,
idx
):
din_src
=
self
.
dataset_in
[
idx
]
dout
=
self
.
dataset_out
[
idx
]
return
din_src
,
dout
```
%% Cell type:code id: tags:
```
python
ixs_valid_test
=
np
.
arange
(
int
(
len_valid_test
))
+
last_train
np
.
random
.
shuffle
(
ixs_valid_test
)
ixs_valid
=
ixs_valid_test
[::
2
]
ixs_test
=
ixs_valid_test
[
1
::
2
]
```
%% Cell type:code id: tags:
```
python
np
.
savetxt
(
'ixs_valid_test.txt'
,
ixs_valid_test
,
fmt
=
'%i'
)
```
%% Cell type:code id: tags:
```
python
dst_min
=
data_out
[:
last_train
].
min
(
axis
=
1
).
values
.
flatten
()
bins
=
[
dst_min
.
min
()
-
10
]
+
list
(
np
.
arange
(
-
300
,
dst_min
.
max
()
+
10
,
10
))
h
,
b
=
np
.
histogram
(
dst_min
,
bins
=
bins
)
if
len
(
np
.
argwhere
(
h
==
0
))
>
0
:
bins
=
np
.
delete
(
bins
,
np
.
argwhere
(
h
==
0
)[
0
]
+
1
)
h
,
b
=
np
.
histogram
(
dst_min
,
bins
=
bins
)
w
=
h
.
max
()
/
h
def
fix_weight
(
dst_v
):
pos
=
np
.
argwhere
(
np
.
abs
(
b
-
dst_v
)
==
np
.
abs
((
b
-
dst_v
)).
min
())[
0
,
0
]
if
dst_v
-
b
[
pos
]
<
0
:
pos
=
pos
-
1
return
np
.
sqrt
(
w
[
pos
]
/
h
.
max
())
fix_weight_v
=
np
.
vectorize
(
fix_weight
)
weights
=
fix_weight_v
(
dst_min
)
sampler
=
torch
.
utils
.
data
.
sampler
.
WeightedRandomSampler
(
weights
,
num_samples
=
len
(
dst_min
))
BATCH_SIZE
=
256
dataset_tr
=
Dataset
(
data_in_scaled
[:
last_train
],
data_out_scaled
[:
last_train
])
data_loader_tr
=
utils_data
.
DataLoader
(
dataset_tr
,
batch_size
=
BATCH_SIZE
,
num_workers
=
4
,
shuffle
=
False
,
sampler
=
sampler
)
dataset_val
=
Dataset
(
data_in_scaled
[
ixs_valid
],
data_out_scaled
[
ixs_valid
])
data_loader_val
=
utils_data
.
DataLoader
(
dataset_val
,
batch_size
=
BATCH_SIZE
,
num_workers
=
4
,
shuffle
=
True
)
dataset_ts
=
Dataset
(
data_in_scaled
[
ixs_test
],
data_out_scaled
[
ixs_test
])
data_loader_ts
=
utils_data
.
DataLoader
(
dataset_ts
,
batch_size
=
BATCH_SIZE
,
num_workers
=
4
,
shuffle
=
True
)
```
%% Cell type:code id: tags:
```
python
delta_var
=
mmScaler
.
transform
(
mmScaler
.
data_max_
-
mmScaler
.
data_min_
)
*
0.01
```
%% Cell type:code id: tags:
```
python
batch
=
next
(
iter
(
data_loader_tr
))
```
%% Cell type:code id: tags:
```
python
class
DSTnet
(
nn
.
Module
):
def
__init__
(
self
,
nvars
,
nhidden_i
,
nhidden_o
,
n_out_i
,
before
,
after
):
super
().
__init__
()
self
.
nvars
=
nvars
self
.
nhidden_i
=
nhidden_i
self
.
nhidden_o
=
nhidden_o
self
.
before
=
before
self
.
after
=
after
self
.
n_out_i
=
n_out_i
self
.
lstm
=
nn
.
LSTM
(
self
.
nvars
,
self
.
n_out_i
,
self
.
nhidden_i
,
batch_first
=
True
)
self
.
first_merged_layer
=
self
.
n_out_i
*
self
.
before
self
.
bn1
=
nn
.
BatchNorm1d
(
num_features
=
self
.
first_merged_layer
)
# self.bn1 = nn.LayerNorm(self.first_merged_layer)
self
.
linear_o_1
=
nn
.
Linear
(
self
.
first_merged_layer
,
self
.
nhidden_o
)
self
.
ln1
=
nn
.
LayerNorm
(
self
.
nhidden_o
)
self
.
linear_o_2
=
nn
.
Linear
(
self
.
nhidden_o
,
self
.
nhidden_o
)
self
.
linear_o_3
=
nn
.
Linear
(
self
.
nhidden_o
,
self
.
nhidden_o
//
2
)
# self.bn2 = nn.BatchNorm1d(num_features=self.nhidden_o)
self
.
linear_o_4
=
nn
.
Linear
(
self
.
nhidden_o
//
2
,
self
.
after
)
def
init_hidden
(
self
,
batch_size
):
hidden
=
torch
.
randn
(
self
.
nhidden_i
,
batch_size
,
self
.
n_out_i
).
to
(
device
)
cell
=
torch
.
randn
(
self
.
nhidden_i
,
batch_size
,
self
.
n_out_i
).
to
(
device
)
return
(
hidden
,
cell
)
def
forward
(
self
,
x0
):
self
.
hidden
=
self
.
init_hidden
(
x0
.
size
(
0
))
x
=
self
.
lstm
(
x0
,
self
.
hidden
)[
0
].
reshape
(
x0
.
shape
[
0
],
-
1
)
x
=
self
.
bn1
(
x
)
# x = F.relu(x)
x
=
F
.
relu
(
self
.
linear_o_1
(
x
))
# x = self.ln1(x)
x
=
F
.
dropout
(
x
,
0.2
,
training
=
self
.
training
)
x
=
F
.
relu
(
self
.
linear_o_2
(
x
))
x
=
F
.
dropout
(
x
,
0.2
,
training
=
self
.
training
)
x
=
F
.
relu
(
self
.
linear_o_3
(
x
))
x
=
F
.
dropout
(
x
,
0.2
,
training
=
self
.
training
)
x
=
self
.
linear_o_4
(
x
)
return
x
```
%% Cell type:code id: tags:
```
python
loss_f
=
nn
.
L1Loss
()
loss_mse
=
nn
.
MSELoss
()
nhidden_i
=
2
nhidden_o
=
128
n_out_i
=
8
before
=
BEFORE
nvars
=
data_in_scaled
.
shape
[
-
1
]
dst_net
=
DSTnet
(
nvars
,
nhidden_i
,
nhidden_o
,
n_out_i
,
before
,
AFTER
).
to
(
device
)
print
(
dst_net
)
num_epochs
=
10000
lr
=
1e-5
optimizer
=
torch
.
optim
.
Adam
(
dst_net
.
parameters
(),
lr
=
lr
,
weight_decay
=
1e-5
)
history_tr
=
np
.
zeros
((
num_epochs
,
2
))
history_valid
=
np
.
zeros
((
num_epochs
,
2
))
history_ts
=
np
.
zeros
((
num_epochs
,
2
))
for
epoch
in
range
(
num_epochs
):
# if epoch == 1400:
# lr = 1e-5
# optimizer = torch.optim.Adam(dst_net.parameters(), lr=lr)#, weight_decay=1e-5)
start_time
=
time
.
time
()
for
i
,
batch
in
enumerate
(
data_loader_tr
):
# delta_batch0 = (( 1- 2 * torch.rand(batch[0].size()))*delta_var).float()
# delta_batch1 = (( 1- 2 * torch.rand(batch[1].size()))*delta_var[-1]).float()
x
=
(
batch
[
0
]
+
((
1
-
2
*
torch
.
rand
(
batch
[
0
].
size
()))
*
batch
[
0
]
*
0.001
)).
float
().
to
(
device
)
#+ delta_batch0
y
=
(
batch
[
1
]
+
((
1
-
2
*
torch
.
rand
(
batch
[
1
].
size
()))
*
batch
[
1
]
*
0.001
)).
float
().
to
(
device
)
#+ delta_batch1
optimizer
.
zero_grad
()
dst_net
.
train
()
outputs
=
dst_net
(
x
)
# loss = loss_f(outputs*torch.tensor(np.arange(1, 13)), y*torch.tensor(np.arange(1, 13))) #+ torch.sqrt(loss_mse(outputs, y) + 0.0000001)# * (1 + torch.randn(y.shape).to(device) * 0.01))
loss
=
loss_f
(
outputs
,
y
)
#+ torch.sqrt(loss_mse(outputs, y) + 0.0000001)# * (1 + torch.randn(y.shape).to(device) * 0.01))
# loss = loss_mse(outputs, y)# * (1 + torch.randn(y.shape).to(device) * 0.01))
loss
.
backward
()
optimizer
.
step
()
dst_net
.
eval
()
data_out_scaled_loss
=
mm_scaler_out
.
inverse_transform
(
data_out_scaled
.
clone
())
outputs
=
dst_net
(
data_in_scaled
[:
last_train
].
to
(
device
).
float
())
loss_tr
=
np
.
sqrt
(
loss_mse
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[:
last_train
].
to
(
device
).
float
()).
item
())
loss_mae_tr
=
loss_f
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[:
last_train
].
to
(
device
).
float
()).
item
()
outputs
=
dst_net
(
data_in_scaled
[
ixs_valid
].
to
(
device
).
float
())
loss_valid
=
np
.
sqrt
(
loss_mse
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[
ixs_valid
].
to
(
device
).
float
()).
item
())
loss_mae_valid
=
loss_f
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[
ixs_valid
].
to
(
device
).
float
()).
item
()
outputs
=
dst_net
(
data_in_scaled
[
ixs_test
].
to
(
device
).
float
())
loss_ts
=
np
.
sqrt
(
loss_mse
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[
ixs_test
].
to
(
device
).
float
()).
item
())
loss_mae_ts
=
loss_f
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[
ixs_test
].
to
(
device
).
float
()).
item
()
history_tr
[
epoch
]
=
[
loss_tr
,
loss_mae_tr
]
history_valid
[
epoch
]
=
[
loss_valid
,
loss_mae_valid
]
history_ts
[
epoch
]
=
[
loss_ts
,
loss_mae_ts
]
epoch_time
=
time
.
time
()
-
start_time
if
(
epoch
%
10
==
0
):
print
(
'Epoch %d time = %.2f, tr_rmse = %0.5f, valid_rmse = %.5f, ts_rmse = %.5f, tr_mae = %0.5f, valid_mae = %.5f, ts_mae = %.5f'
%
(
epoch
,
epoch_time
,
loss_tr
,
loss_valid
,
loss_ts
,
loss_mae_tr
,
loss_mae_valid
,
loss_mae_ts
))
torch
.
save
(
dst_net
.
state_dict
(),
'../models/dst_net_full.pth'
)
np
.
savetxt
(
'../hist/history_tr_rmse_mae_full.txt'
,
history_tr
)
np
.
savetxt
(
'../hist/history_valid_rmse_mae_full.txt'
,
history_valid
)
np
.
savetxt
(
'../hist/history_ts_rmse_mae_full.txt'
,
history_ts
)
```
%%%% Output: stream
DSTnet(
(lstm): LSTM(9, 8, num_layers=2, batch_first=True)
(bn1): BatchNorm1d(96, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(linear_o_1): Linear(in_features=96, out_features=64, bias=True)
(ln1): LayerNorm((64,), eps=1e-05, elementwise_affine=True)
(linear_o_2): Linear(in_features=64, out_features=64, bias=True)
(linear_o_3): Linear(in_features=64, out_features=32, bias=True)
(linear_o_4): Linear(in_features=32, out_features=12, bias=True)
)
Epoch 0 time = 9.58, tr_rmse = 469.83637, valid_rmse = 475.11872, ts_rmse = 475.36345, tr_mae = 461.05780, valid_mae = 466.56754, ts_mae = 466.85388
Epoch 1 time = 10.01, tr_rmse = 388.58652, valid_rmse = 393.32884, ts_rmse = 393.88383, tr_mae = 360.97275, valid_mae = 366.07150, ts_mae = 366.71188
Epoch 2 time = 11.28, tr_rmse = 282.13619, valid_rmse = 286.54900, ts_rmse = 286.04732, tr_mae = 246.84175, valid_mae = 251.61148, ts_mae = 250.79152
Epoch 3 time = 11.71, tr_rmse = 212.87363, valid_rmse = 214.78504, ts_rmse = 214.61001, tr_mae = 180.41080, valid_mae = 182.33406, ts_mae = 182.10858
Epoch 4 time = 10.12, tr_rmse = 166.96828, valid_rmse = 167.52934, ts_rmse = 166.93450, tr_mae = 139.07254, valid_mae = 139.51793, ts_mae = 139.05449
Epoch 5 time = 10.23, tr_rmse = 140.29911, valid_rmse = 139.34353, ts_rmse = 138.90956, tr_mae = 115.83358, valid_mae = 114.99672, ts_mae = 114.60511
Epoch 6 time = 10.33, tr_rmse = 120.11670, valid_rmse = 117.13997, ts_rmse = 117.47479, tr_mae = 98.16451, valid_mae = 95.47210, ts_mae = 95.73440
Epoch 7 time = 10.31, tr_rmse = 107.94639, valid_rmse = 103.54335, ts_rmse = 104.31949, tr_mae = 87.92388, valid_mae = 83.86409, ts_mae = 84.50546
Epoch 8 time = 10.73, tr_rmse = 97.97863, valid_rmse = 93.65564, ts_rmse = 93.83395, tr_mae = 79.52438, valid_mae = 75.50884, ts_mae = 75.72380
Epoch 9 time = 11.80, tr_rmse = 88.08864, valid_rmse = 83.91973, ts_rmse = 84.07096, tr_mae = 71.08361, valid_mae = 67.13800, ts_mae = 67.23650
Epoch 10 time = 10.76, tr_rmse = 80.36456, valid_rmse = 76.11947, ts_rmse = 76.78473, tr_mae = 64.69331, valid_mae = 60.75425, ts_mae = 61.39462
Epoch 11 time = 10.88, tr_rmse = 72.85488, valid_rmse = 69.12700, ts_rmse = 68.93170, tr_mae = 58.58426, valid_mae = 55.14393, ts_mae = 54.92891
Epoch 12 time = 10.87, tr_rmse = 66.03329, valid_rmse = 62.42380, ts_rmse = 62.62510, tr_mae = 52.81767, valid_mae = 49.42125, ts_mae = 49.64627
Epoch 13 time = 10.50, tr_rmse = 61.55198, valid_rmse = 57.67189, ts_rmse = 57.33591, tr_mae = 49.39264, valid_mae = 46.03705, ts_mae = 45.57819
Epoch 14 time = 11.63, tr_rmse = 54.95930, valid_rmse = 51.38882, ts_rmse = 51.63277, tr_mae = 43.92029, valid_mae = 40.71434, ts_mae = 40.90249
Epoch 15 time = 12.06, tr_rmse = 49.49959, valid_rmse = 46.07767, ts_rmse = 46.29188, tr_mae = 39.43318, valid_mae = 36.51028, ts_mae = 36.73224
Epoch 16 time = 11.99, tr_rmse = 45.47639, valid_rmse = 42.51303, ts_rmse = 42.63423, tr_mae = 36.23988, valid_mae = 33.64177, ts_mae = 33.74437
Epoch 17 time = 10.14, tr_rmse = 41.53393, valid_rmse = 38.55350, ts_rmse = 38.22472, tr_mae = 33.14735, valid_mae = 30.51845, ts_mae = 30.38503
Epoch 18 time = 10.14, tr_rmse = 38.54800, valid_rmse = 35.39444, ts_rmse = 35.18512, tr_mae = 30.77516, valid_mae = 28.05162, ts_mae = 27.98601
Epoch 19 time = 10.21, tr_rmse = 34.60249, valid_rmse = 31.87325, ts_rmse = 31.92139, tr_mae = 27.43313, valid_mae = 25.12820, ts_mae = 25.14160
Epoch 20 time = 10.31, tr_rmse = 32.41131, valid_rmse = 28.78282, ts_rmse = 29.02951, tr_mae = 25.81217, valid_mae = 22.82328, ts_mae = 23.12247
Epoch 21 time = 10.10, tr_rmse = 29.63539, valid_rmse = 26.22939, ts_rmse = 26.28407, tr_mae = 23.49904, valid_mae = 20.76940, ts_mae = 20.76274
Epoch 22 time = 10.15, tr_rmse = 28.14579, valid_rmse = 24.74018, ts_rmse = 24.69780, tr_mae = 22.37327, valid_mae = 19.63754, ts_mae = 19.61604
Epoch 23 time = 10.14, tr_rmse = 25.84842, valid_rmse = 22.65259, ts_rmse = 22.41701, tr_mae = 20.45133, valid_mae = 17.93198, ts_mae = 17.75001
Epoch 24 time = 10.05, tr_rmse = 24.99609, valid_rmse = 21.44524, ts_rmse = 21.28371, tr_mae = 19.81792, valid_mae = 16.98862, ts_mae = 16.88686
Epoch 25 time = 10.28, tr_rmse = 24.22077, valid_rmse = 20.67378, ts_rmse = 20.61935, tr_mae = 19.29541, valid_mae = 16.43044, ts_mae = 16.43814
Epoch 26 time = 10.22, tr_rmse = 21.41277, valid_rmse = 18.25019, ts_rmse = 18.22687, tr_mae = 16.55845, valid_mae = 14.23280, ts_mae = 14.21476
Epoch 27 time = 10.03, tr_rmse = 20.52705, valid_rmse = 17.25853, ts_rmse = 17.11398, tr_mae = 15.79898, valid_mae = 13.37073, ts_mae = 13.31232
Epoch 28 time = 10.14, tr_rmse = 20.65998, valid_rmse = 17.21814, ts_rmse = 17.19531, tr_mae = 16.12646, valid_mae = 13.54704, ts_mae = 13.57142
Epoch 29 time = 10.20, tr_rmse = 20.19309, valid_rmse = 16.69780, ts_rmse = 16.61451, tr_mae = 15.72647, valid_mae = 13.06056, ts_mae = 13.08549
Epoch 30 time = 10.58, tr_rmse = 20.29426, valid_rmse = 16.83579, ts_rmse = 16.70910, tr_mae = 15.95925, valid_mae = 13.32516, ts_mae = 13.26896
Epoch 31 time = 10.47, tr_rmse = 20.42426, valid_rmse = 16.99970, ts_rmse = 16.94828, tr_mae = 16.21970, valid_mae = 13.60875, ts_mae = 13.59752
Epoch 32 time = 10.74, tr_rmse = 19.73991, valid_rmse = 16.32760, ts_rmse = 16.33337, tr_mae = 15.56311, valid_mae = 13.00600, ts_mae = 13.06388
Epoch 33 time = 10.57, tr_rmse = 19.63533, valid_rmse = 16.15513, ts_rmse = 16.05821, tr_mae = 15.52516, valid_mae = 12.87851, ts_mae = 12.84972
Epoch 34 time = 10.49, tr_rmse = 18.54266, valid_rmse = 15.20507, ts_rmse = 15.15259, tr_mae = 14.40320, valid_mae = 11.96353, ts_mae = 11.97522
Epoch 35 time = 10.34, tr_rmse = 19.29880, valid_rmse = 15.94948, ts_rmse = 15.93653, tr_mae = 15.38048, valid_mae = 12.87380, ts_mae = 12.90806
Epoch 36 time = 10.72, tr_rmse = 18.32653, valid_rmse = 14.98241, ts_rmse = 14.94959, tr_mae = 14.35635, valid_mae = 11.92258, ts_mae = 11.94039
Epoch 37 time = 10.43, tr_rmse = 17.21544, valid_rmse = 13.98859, ts_rmse = 13.89573, tr_mae = 13.09338, valid_mae = 10.89522, ts_mae = 10.84038
Epoch 38 time = 10.48, tr_rmse = 17.38045, valid_rmse = 14.06629, ts_rmse = 14.02992, tr_mae = 13.38677, valid_mae = 11.03890, ts_mae = 11.05629
Epoch 39 time = 10.22, tr_rmse = 17.14795, valid_rmse = 13.85358, ts_rmse = 13.78351, tr_mae = 13.16051, valid_mae = 10.87153, ts_mae = 10.84944
Epoch 40 time = 10.31, tr_rmse = 17.67979, valid_rmse = 14.47412, ts_rmse = 14.37751, tr_mae = 13.80511, valid_mae = 11.55238, ts_mae = 11.50688
Epoch 41 time = 11.34, tr_rmse = 17.77805, valid_rmse = 14.61537, ts_rmse = 14.54692, tr_mae = 14.00038, valid_mae = 11.77332, ts_mae = 11.76388
Epoch 42 time = 11.22, tr_rmse = 17.21191, valid_rmse = 14.02303, ts_rmse = 13.96267, tr_mae = 13.38353, valid_mae = 11.17042, ts_mae = 11.16596
Epoch 43 time = 11.88, tr_rmse = 17.55124, valid_rmse = 14.42488, ts_rmse = 14.35334, tr_mae = 13.82063, valid_mae = 11.62828, ts_mae = 11.63386
Epoch 44 time = 11.89, tr_rmse = 16.57793, valid_rmse = 13.49831, ts_rmse = 13.43744, tr_mae = 12.68515, valid_mae = 10.63555, ts_mae = 10.63021
Epoch 45 time = 12.33, tr_rmse = 15.78338, valid_rmse = 12.78805, ts_rmse = 12.68631, tr_mae = 11.78901, valid_mae = 9.89431, ts_mae = 9.88264
Epoch 46 time = 13.33, tr_rmse = 17.23601, valid_rmse = 14.28218, ts_rmse = 14.19937, tr_mae = 13.56428, valid_mae = 11.60134, ts_mae = 11.57264
Epoch 47 time = 15.47, tr_rmse = 16.13500, valid_rmse = 13.18999, ts_rmse = 13.06547, tr_mae = 12.26640, valid_mae = 10.38128, ts_mae = 10.32580
Epoch 48 time = 14.67, tr_rmse = 16.26168, valid_rmse = 13.38527, ts_rmse = 13.32936, tr_mae = 12.44717, valid_mae = 10.64614, ts_mae = 10.63803
Epoch 49 time = 13.45, tr_rmse = 16.17817, valid_rmse = 13.28476, ts_rmse = 13.23232, tr_mae = 12.38392, valid_mae = 10.53350, ts_mae = 10.55287
Epoch 50 time = 12.46, tr_rmse = 16.38148, valid_rmse = 13.47378, ts_rmse = 13.38205, tr_mae = 12.64094, valid_mae = 10.76516, ts_mae = 10.73328
Epoch 51 time = 12.26, tr_rmse = 15.56148, valid_rmse = 12.64202, ts_rmse = 12.52262, tr_mae = 11.65497, valid_mae = 9.82705, ts_mae = 9.79202
Epoch 52 time = 14.19, tr_rmse = 15.53018, valid_rmse = 12.64870, ts_rmse = 12.55463, tr_mae = 11.67029, valid_mae = 9.87795, ts_mae = 9.84212
Epoch 53 time = 12.87, tr_rmse = 15.28347, valid_rmse = 12.46730, ts_rmse = 12.38350, tr_mae = 11.38336, valid_mae = 9.68268, ts_mae = 9.67069
Epoch 54 time = 11.29, tr_rmse = 16.09112, valid_rmse = 13.29786, ts_rmse = 13.21833, tr_mae = 12.39709, valid_mae = 10.65072, ts_mae = 10.63649
Epoch 55 time = 10.59, tr_rmse = 15.83603, valid_rmse = 13.12799, ts_rmse = 13.04642, tr_mae = 12.12847, valid_mae = 10.48769, ts_mae = 10.47445
Epoch 56 time = 10.33, tr_rmse = 15.52105, valid_rmse = 12.81395, ts_rmse = 12.71112, tr_mae = 11.74423, valid_mae = 10.15618, ts_mae = 10.11368
Epoch 57 time = 10.42, tr_rmse = 16.41152, valid_rmse = 13.78769, ts_rmse = 13.70997, tr_mae = 12.85738, valid_mae = 11.27541, ts_mae = 11.25530
Epoch 58 time = 10.22, tr_rmse = 16.63460, valid_rmse = 14.08087, ts_rmse = 14.02129, tr_mae = 13.17562, valid_mae = 11.63457, ts_mae = 11.63199
Epoch 59 time = 10.13, tr_rmse = 16.16365, valid_rmse = 13.56861, ts_rmse = 13.52295, tr_mae = 12.60638, valid_mae = 11.06464, ts_mae = 11.06080
Epoch 60 time = 10.08, tr_rmse = 15.51564, valid_rmse = 12.89216, ts_rmse = 12.79591, tr_mae = 11.81635, valid_mae = 10.28886, ts_mae = 10.24864
Epoch 61 time = 9.86, tr_rmse = 15.91470, valid_rmse = 13.29360, ts_rmse = 13.22204, tr_mae = 12.33385, valid_mae = 10.77306, ts_mae = 10.74912
Epoch 62 time = 9.97, tr_rmse = 14.73767, valid_rmse = 12.04800, ts_rmse = 11.94883, tr_mae = 10.85858, valid_mae = 9.32158, ts_mae = 9.28417
Epoch 63 time = 10.08, tr_rmse = 15.05917, valid_rmse = 12.52876, ts_rmse = 12.40228, tr_mae = 11.29063, valid_mae = 9.90692, ts_mae = 9.85459
Epoch 64 time = 9.95, tr_rmse = 15.06442, valid_rmse = 12.44993, ts_rmse = 12.33474, tr_mae = 11.32299, valid_mae = 9.83320, ts_mae = 9.79063
Epoch 65 time = 10.02, tr_rmse = 15.61311, valid_rmse = 13.09232, ts_rmse = 13.02093, tr_mae = 12.03137, valid_mae = 10.58654, ts_mae = 10.57894
Epoch 66 time = 10.07, tr_rmse = 14.40380, valid_rmse = 11.71924, ts_rmse = 11.62332, tr_mae = 10.50385, valid_mae = 8.99472, ts_mae = 8.97009
Epoch 67 time = 10.05, tr_rmse = 14.52767, valid_rmse = 11.87821, ts_rmse = 11.78398, tr_mae = 10.68050, valid_mae = 9.18571, ts_mae = 9.16256
Epoch 68 time = 10.02, tr_rmse = 15.00845, valid_rmse = 12.55439, ts_rmse = 12.46748, tr_mae = 11.32056, valid_mae = 10.02200, ts_mae = 9.99311
Epoch 69 time = 10.33, tr_rmse = 14.44392, valid_rmse = 11.83655, ts_rmse = 11.75043, tr_mae = 10.57627, valid_mae = 9.14701, ts_mae = 9.12627
Epoch 70 time = 10.18, tr_rmse = 14.28779, valid_rmse = 11.66831, ts_rmse = 11.58814, tr_mae = 10.38579, valid_mae = 8.94792, ts_mae = 8.93932
Epoch 71 time = 11.14, tr_rmse = 15.31477, valid_rmse = 12.91881, ts_rmse = 12.85393, tr_mae = 11.74161, valid_mae = 10.47108, ts_mae = 10.46557
Epoch 72 time = 10.01, tr_rmse = 14.70426, valid_rmse = 12.21199, ts_rmse = 12.12925, tr_mae = 10.98379, valid_mae = 9.65113, ts_mae = 9.62532
Epoch 73 time = 10.07, tr_rmse = 13.99588, valid_rmse = 11.35286, ts_rmse = 11.24176, tr_mae = 10.04490, valid_mae = 8.59237, ts_mae = 8.56614
Epoch 74 time = 10.26, tr_rmse = 14.15444, valid_rmse = 11.56670, ts_rmse = 11.46455, tr_mae = 10.27206, valid_mae = 8.87231, ts_mae = 8.84424
Epoch 75 time = 9.92, tr_rmse = 14.01988, valid_rmse = 11.38251, ts_rmse = 11.26661, tr_mae = 10.09486, valid_mae = 8.65922, ts_mae = 8.62552
Epoch 76 time = 10.05, tr_rmse = 14.67822, valid_rmse = 12.12102, ts_rmse = 12.03409, tr_mae = 11.00063, valid_mae = 9.56788, ts_mae = 9.55477
Epoch 77 time = 9.90, tr_rmse = 13.68067, valid_rmse = 10.95839, ts_rmse = 10.84711, tr_mae = 9.65796, valid_mae = 8.15112, ts_mae = 8.11814
Epoch 78 time = 9.78, tr_rmse = 14.22561, valid_rmse = 11.56145, ts_rmse = 11.46000, tr_mae = 10.42153, valid_mae = 8.89960, ts_mae = 8.87085
Epoch 79 time = 9.64, tr_rmse = 14.30211, valid_rmse = 11.73217, ts_rmse = 11.63013, tr_mae = 10.53490, valid_mae = 9.11136, ts_mae = 9.08469
Epoch 80 time = 9.72, tr_rmse = 14.19549, valid_rmse = 11.63289, ts_rmse = 11.53184, tr_mae = 10.38946, valid_mae = 8.99306, ts_mae = 8.96507
Epoch 81 time = 9.64, tr_rmse = 14.44488, valid_rmse = 11.88758, ts_rmse = 11.81018, tr_mae = 10.74841, valid_mae = 9.32871, ts_mae = 9.31740
Epoch 82 time = 9.63, tr_rmse = 13.58662, valid_rmse = 10.87767, ts_rmse = 10.77203, tr_mae = 9.57060, valid_mae = 8.07753, ts_mae = 8.06174
Epoch 83 time = 9.68, tr_rmse = 13.42303, valid_rmse = 10.68689, ts_rmse = 10.56719, tr_mae = 9.34650, valid_mae = 7.82585, ts_mae = 7.79768
Epoch 84 time = 9.76, tr_rmse = 13.49247, valid_rmse = 10.79765, ts_rmse = 10.68637, tr_mae = 9.47515, valid_mae = 7.98611, ts_mae = 7.96827
Epoch 85 time = 9.55, tr_rmse = 13.89071, valid_rmse = 11.22091, ts_rmse = 11.10001, tr_mae = 10.01489, valid_mae = 8.50205, ts_mae = 8.46201
Epoch 86 time = 9.69, tr_rmse = 13.64691, valid_rmse = 10.97278, ts_rmse = 10.90439, tr_mae = 9.69617, valid_mae = 8.21510, ts_mae = 8.22004
Epoch 87 time = 9.72, tr_rmse = 13.17901, valid_rmse = 10.46408, ts_rmse = 10.35410, tr_mae = 9.03755, valid_mae = 7.57627, ts_mae = 7.56084
Epoch 88 time = 9.53, tr_rmse = 13.54532, valid_rmse = 10.84519, ts_rmse = 10.75348, tr_mae = 9.58779, valid_mae = 8.08651, ts_mae = 8.06878
Epoch 89 time = 9.61, tr_rmse = 13.30816, valid_rmse = 10.58069, ts_rmse = 10.48358, tr_mae = 9.22884, valid_mae = 7.73194, ts_mae = 7.71888
Epoch 90 time = 10.30, tr_rmse = 12.84662, valid_rmse = 10.07131, ts_rmse = 9.93971, tr_mae = 8.53808, valid_mae = 7.06664, ts_mae = 7.04660
Epoch 91 time = 9.63, tr_rmse = 13.02916, valid_rmse = 10.25566, ts_rmse = 10.14524, tr_mae = 8.83429, valid_mae = 7.32265, ts_mae = 7.31255
Epoch 92 time = 9.56, tr_rmse = 13.65271, valid_rmse = 11.02411, ts_rmse = 10.93602, tr_mae = 9.75074, valid_mae = 8.30927, ts_mae = 8.29930
Epoch 93 time = 9.86, tr_rmse = 12.95008, valid_rmse = 10.21134, ts_rmse = 10.07199, tr_mae = 8.74316, valid_mae = 7.27271, ts_mae = 7.23556
Epoch 94 time = 9.60, tr_rmse = 13.14386, valid_rmse = 10.44819, ts_rmse = 10.34299, tr_mae = 9.03990, valid_mae = 7.60458, ts_mae = 7.59260
Epoch 95 time = 9.60, tr_rmse = 12.78912, valid_rmse = 10.00238, ts_rmse = 9.88001, tr_mae = 8.50171, valid_mae = 7.00762, ts_mae = 6.98685
Epoch 96 time = 9.59, tr_rmse = 12.94203, valid_rmse = 10.17279, ts_rmse = 10.06654, tr_mae = 8.75254, valid_mae = 7.23814, ts_mae = 7.22357
Epoch 97 time = 9.57, tr_rmse = 12.59826, valid_rmse = 9.82026, ts_rmse = 9.68437, tr_mae = 8.22326, valid_mae = 6.74566, ts_mae = 6.73006
Epoch 98 time = 9.63, tr_rmse = 12.92355, valid_rmse = 10.16960, ts_rmse = 10.03940, tr_mae = 8.74053, valid_mae = 7.22504, ts_mae = 7.20040
Epoch 99 time = 9.64, tr_rmse = 12.63733, valid_rmse = 9.87658, ts_rmse = 9.75832, tr_mae = 8.28938, valid_mae = 6.83889, ts_mae = 6.82062
Epoch 100 time = 9.63, tr_rmse = 12.67251, valid_rmse = 9.92161, ts_rmse = 9.77713, tr_mae = 8.35471, valid_mae = 6.90170, ts_mae = 6.86750
Epoch 101 time = 9.50, tr_rmse = 12.90002, valid_rmse = 10.17578, ts_rmse = 10.04830, tr_mae = 8.72223, valid_mae = 7.25903, ts_mae = 7.22479
Epoch 102 time = 10.33, tr_rmse = 12.58596, valid_rmse = 9.82230, ts_rmse = 9.68495, tr_mae = 8.23168, valid_mae = 6.76074, ts_mae = 6.73515
Epoch 103 time = 11.60, tr_rmse = 12.55069, valid_rmse = 9.75375, ts_rmse = 9.63323, tr_mae = 8.17461, valid_mae = 6.66919, ts_mae = 6.65718
Epoch 104 time = 12.43, tr_rmse = 12.66751, valid_rmse = 9.92375, ts_rmse = 9.79058, tr_mae = 8.36662, valid_mae = 6.91178, ts_mae = 6.88959
Epoch 105 time = 9.97, tr_rmse = 12.44932, valid_rmse = 9.65303, ts_rmse = 9.52220, tr_mae = 8.02172, valid_mae = 6.54700, ts_mae = 6.52470
Epoch 106 time = 9.77, tr_rmse = 12.46710, valid_rmse = 9.66681, ts_rmse = 9.52531, tr_mae = 8.05451, valid_mae = 6.55822, ts_mae = 6.52735
Epoch 107 time = 9.66, tr_rmse = 12.71769, valid_rmse = 10.00135, ts_rmse = 9.86676, tr_mae = 8.46640, valid_mae = 7.02236, ts_mae = 6.99738
Epoch 108 time = 9.64, tr_rmse = 12.75950, valid_rmse = 10.03371, ts_rmse = 9.88442, tr_mae = 8.52509, valid_mae = 7.06267, ts_mae = 7.02889
Epoch 109 time = 9.75, tr_rmse = 12.70778, valid_rmse = 9.97790, ts_rmse = 9.84799, tr_mae = 8.45464, valid_mae = 7.00031, ts_mae = 6.97136
Epoch 110 time = 9.88, tr_rmse = 12.38902, valid_rmse = 9.62790, ts_rmse = 9.47578, tr_mae = 7.93482, valid_mae = 6.50208, ts_mae = 6.47624
Epoch 111 time = 10.64, tr_rmse = 12.67779, valid_rmse = 9.91986, ts_rmse = 9.80360, tr_mae = 8.41121, valid_mae = 6.91305, ts_mae = 6.89453
Epoch 112 time = 10.42, tr_rmse = 12.31152, valid_rmse = 9.53139, ts_rmse = 9.40533, tr_mae = 7.81515, valid_mae = 6.38153, ts_mae = 6.36694
Epoch 113 time = 10.18, tr_rmse = 12.20469, valid_rmse = 9.43003, ts_rmse = 9.28377, tr_mae = 7.63606, valid_mae = 6.22561, ts_mae = 6.20241
Epoch 114 time = 10.29, tr_rmse = 12.46466, valid_rmse = 9.70368, ts_rmse = 9.57696, tr_mae = 8.09414, valid_mae = 6.62006, ts_mae = 6.60201
Epoch 115 time = 10.11, tr_rmse = 12.35911, valid_rmse = 9.58442, ts_rmse = 9.44928, tr_mae = 7.91057, valid_mae = 6.45092, ts_mae = 6.43487
Epoch 116 time = 9.95, tr_rmse = 12.43472, valid_rmse = 9.67943, ts_rmse = 9.53903, tr_mae = 8.04232, valid_mae = 6.59204, ts_mae = 6.56901
Epoch 117 time = 9.93, tr_rmse = 12.59010, valid_rmse = 9.86404, ts_rmse = 9.72820, tr_mae = 8.29404, valid_mae = 6.85226, ts_mae = 6.83504
Epoch 118 time = 9.73, tr_rmse = 12.28011, valid_rmse = 9.52150, ts_rmse = 9.37112, tr_mae = 7.76807, valid_mae = 6.35469, ts_mae = 6.32748
Epoch 119 time = 9.67, tr_rmse = 12.26070, valid_rmse = 9.50103, ts_rmse = 9.36911, tr_mae = 7.76513, valid_mae = 6.33785, ts_mae = 6.32008
Epoch 120 time = 9.88, tr_rmse = 12.24698, valid_rmse = 9.47697, ts_rmse = 9.34078, tr_mae = 7.73763, valid_mae = 6.30484, ts_mae = 6.28843
Epoch 121 time = 9.63, tr_rmse = 12.33462, valid_rmse = 9.59934, ts_rmse = 9.46399, tr_mae = 7.89922, valid_mae = 6.47677, ts_mae = 6.46079
Epoch 122 time = 9.59, tr_rmse = 12.28515, valid_rmse = 9.51347, ts_rmse = 9.37951, tr_mae = 7.81837, valid_mae = 6.36412, ts_mae = 6.34477
Epoch 123 time = 9.76, tr_rmse = 12.07962, valid_rmse = 9.34540, ts_rmse = 9.18700, tr_mae = 7.41665, valid_mae = 6.06403, ts_mae = 6.04086
Epoch 124 time = 10.14, tr_rmse = 12.13731, valid_rmse = 9.37629, ts_rmse = 9.23750, tr_mae = 7.54123, valid_mae = 6.14802, ts_mae = 6.13302
Epoch 125 time = 10.17, tr_rmse = 12.12403, valid_rmse = 9.38473, ts_rmse = 9.23510, tr_mae = 7.53778, valid_mae = 6.14092, ts_mae = 6.11818
Epoch 126 time = 10.21, tr_rmse = 12.18409, valid_rmse = 9.43528, ts_rmse = 9.27855, tr_mae = 7.64273, valid_mae = 6.21341, ts_mae = 6.18222
Epoch 127 time = 10.11, tr_rmse = 12.23193, valid_rmse = 9.49594, ts_rmse = 9.34838, tr_mae = 7.74636, valid_mae = 6.33260, ts_mae = 6.30728
Epoch 128 time = 10.11, tr_rmse = 12.24432, valid_rmse = 9.49473, ts_rmse = 9.35764, tr_mae = 7.77105, valid_mae = 6.34558, ts_mae = 6.32702
Epoch 129 time = 10.33, tr_rmse = 12.17954, valid_rmse = 9.43895, ts_rmse = 9.29565, tr_mae = 7.64516, valid_mae = 6.23200, ts_mae = 6.20991
Epoch 130 time = 10.01, tr_rmse = 12.21154, valid_rmse = 9.46968, ts_rmse = 9.32772, tr_mae = 7.71866, valid_mae = 6.29693, ts_mae = 6.27550
Epoch 131 time = 9.89, tr_rmse = 12.02393, valid_rmse = 9.30178, ts_rmse = 9.14544, tr_mae = 7.34634, valid_mae = 6.01295, ts_mae = 5.99836
Epoch 132 time = 9.67, tr_rmse = 12.21697, valid_rmse = 9.47365, ts_rmse = 9.33209, tr_mae = 7.73759, valid_mae = 6.30941, ts_mae = 6.29013
Epoch 133 time = 9.53, tr_rmse = 12.11342, valid_rmse = 9.36954, ts_rmse = 9.21028, tr_mae = 7.53308, valid_mae = 6.14005, ts_mae = 6.11505
Epoch 134 time = 9.85, tr_rmse = 12.13826, valid_rmse = 9.39345, ts_rmse = 9.25181, tr_mae = 7.60142, valid_mae = 6.18174, ts_mae = 6.15985
Epoch 135 time = 9.59, tr_rmse = 12.16288, valid_rmse = 9.42688, ts_rmse = 9.27720, tr_mae = 7.64934, valid_mae = 6.23434, ts_mae = 6.20746
Epoch 136 time = 9.64, tr_rmse = 12.14524, valid_rmse = 9.40923, ts_rmse = 9.27187, tr_mae = 7.62366, valid_mae = 6.20490, ts_mae = 6.18589
Epoch 137 time = 9.96, tr_rmse = 12.09280, valid_rmse = 9.36022, ts_rmse = 9.20293, tr_mae = 7.51324, valid_mae = 6.12751, ts_mae = 6.10270
Epoch 138 time = 10.29, tr_rmse = 12.09668, valid_rmse = 9.35903, ts_rmse = 9.21267, tr_mae = 7.53575, valid_mae = 6.13177, ts_mae = 6.10882
Epoch 139 time = 10.61, tr_rmse = 12.02317, valid_rmse = 9.31265, ts_rmse = 9.16103, tr_mae = 7.39463, valid_mae = 6.03258, ts_mae = 6.01435
Epoch 140 time = 10.13, tr_rmse = 12.12939, valid_rmse = 9.38538, ts_rmse = 9.25536, tr_mae = 7.60557, valid_mae = 6.19602, ts_mae = 6.18018
Epoch 141 time = 9.98, tr_rmse = 12.27630, valid_rmse = 9.53153, ts_rmse = 9.39871, tr_mae = 7.86701, valid_mae = 6.40734, ts_mae = 6.37918
Epoch 142 time = 9.92, tr_rmse = 12.05217, valid_rmse = 9.30870, ts_rmse = 9.15616, tr_mae = 7.44782, valid_mae = 6.06440, ts_mae = 6.04647
Epoch 143 time = 9.93, tr_rmse = 12.06121, valid_rmse = 9.32761, ts_rmse = 9.18806, tr_mae = 7.47005, valid_mae = 6.09616, ts_mae = 6.08379
Epoch 144 time = 10.07, tr_rmse = 12.15252, valid_rmse = 9.40971, ts_rmse = 9.28042, tr_mae = 7.64656, valid_mae = 6.21536, ts_mae = 6.20234
Epoch 145 time = 9.82, tr_rmse = 12.04092, valid_rmse = 9.31385, ts_rmse = 9.15835, tr_mae = 7.44568, valid_mae = 6.06408, ts_mae = 6.04371
Epoch 146 time = 9.62, tr_rmse = 12.00922, valid_rmse = 9.29216, ts_rmse = 9.15069, tr_mae = 7.38351, valid_mae = 6.01544, ts_mae = 6.00239
Epoch 147 time = 9.57, tr_rmse = 12.02154, valid_rmse = 9.29804, ts_rmse = 9.15720, tr_mae = 7.42006, valid_mae = 6.04432, ts_mae = 6.03118
Epoch 148 time = 9.71, tr_rmse = 11.96063, valid_rmse = 9.26204, ts_rmse = 9.09052, tr_mae = 7.25539, valid_mae = 5.94576, ts_mae = 5.91728
Epoch 149 time = 9.76, tr_rmse = 11.98294, valid_rmse = 9.28031, ts_rmse = 9.11991, tr_mae = 7.33709, valid_mae = 6.00401, ts_mae = 5.97991
Epoch 150 time = 9.93, tr_rmse = 11.98201, valid_rmse = 9.26304, ts_rmse = 9.09726, tr_mae = 7.29550, valid_mae = 5.96803, ts_mae = 5.94490
Epoch 151 time = 10.36, tr_rmse = 11.95375, valid_rmse = 9.26240, ts_rmse = 9.10599, tr_mae = 7.28541, valid_mae = 5.96597, ts_mae = 5.93999
Epoch 152 time = 10.20, tr_rmse = 11.95320, valid_rmse = 9.26976, ts_rmse = 9.11181, tr_mae = 7.28612, valid_mae = 5.96873, ts_mae = 5.95088
Epoch 153 time = 11.14, tr_rmse = 11.94092, valid_rmse = 9.25315, ts_rmse = 9.09080, tr_mae = 7.23789, valid_mae = 5.93808, ts_mae = 5.91175
Epoch 154 time = 10.20, tr_rmse = 12.02068, valid_rmse = 9.31955, ts_rmse = 9.16298, tr_mae = 7.42571, valid_mae = 6.06238, ts_mae = 6.03997
Epoch 155 time = 9.98, tr_rmse = 11.94548, valid_rmse = 9.24708, ts_rmse = 9.08229, tr_mae = 7.27479, valid_mae = 5.94745, ts_mae = 5.92552
Epoch 156 time = 9.92, tr_rmse = 11.94377, valid_rmse = 9.27590, ts_rmse = 9.10089, tr_mae = 7.17972, valid_mae = 5.92313, ts_mae = 5.90295
Epoch 157 time = 9.92, tr_rmse = 11.93111, valid_rmse = 9.24700, ts_rmse = 9.08799, tr_mae = 7.24499, valid_mae = 5.94637, ts_mae = 5.92468
Epoch 158 time = 9.71, tr_rmse = 11.95140, valid_rmse = 9.24714, ts_rmse = 9.09890, tr_mae = 7.28302, valid_mae = 5.95412, ts_mae = 5.93894
Epoch 159 time = 9.84, tr_rmse = 12.06940, valid_rmse = 9.34891, ts_rmse = 9.20637, tr_mae = 7.54799, valid_mae = 6.13657, ts_mae = 6.11827
Epoch 160 time = 9.76, tr_rmse = 12.03176, valid_rmse = 9.30410, ts_rmse = 9.15052, tr_mae = 7.48819, valid_mae = 6.08559, ts_mae = 6.06591
Epoch 161 time = 9.60, tr_rmse = 12.00661, valid_rmse = 9.29226, ts_rmse = 9.15007, tr_mae = 7.43311, valid_mae = 6.04290, ts_mae = 6.02923
Epoch 162 time = 9.78, tr_rmse = 11.99979, valid_rmse = 9.28291, ts_rmse = 9.12949, tr_mae = 7.41862, valid_mae = 6.02945, ts_mae = 6.00485
Epoch 163 time = 10.27, tr_rmse = 11.92250, valid_rmse = 9.23770, ts_rmse = 9.08023, tr_mae = 7.24806, valid_mae = 5.92935, ts_mae = 5.90798
Epoch 164 time = 10.20, tr_rmse = 11.96087, valid_rmse = 9.26453, ts_rmse = 9.12817, tr_mae = 7.34646, valid_mae = 5.99501, ts_mae = 5.98024
Epoch 165 time = 10.21, tr_rmse = 11.96636, valid_rmse = 9.25312, ts_rmse = 9.09527, tr_mae = 7.37173, valid_mae = 6.00186, ts_mae = 5.97405
Epoch 166 time = 10.25, tr_rmse = 11.95451, valid_rmse = 9.25114, ts_rmse = 9.10794, tr_mae = 7.34201, valid_mae = 5.98468, ts_mae = 5.96936
Epoch 167 time = 10.05, tr_rmse = 11.93393, valid_rmse = 9.24919, ts_rmse = 9.09249, tr_mae = 7.30663, valid_mae = 5.97101, ts_mae = 5.94513
Epoch 168 time = 9.95, tr_rmse = 11.89580, valid_rmse = 9.24336, ts_rmse = 9.08408, tr_mae = 7.20925, valid_mae = 5.92660, ts_mae = 5.90493
Epoch 169 time = 9.85, tr_rmse = 12.01448, valid_rmse = 9.30519, ts_rmse = 9.14459, tr_mae = 7.46769, valid_mae = 6.06613, ts_mae = 6.03342
Epoch 170 time = 9.69, tr_rmse = 11.92328, valid_rmse = 9.24357, ts_rmse = 9.08134, tr_mae = 7.29060, valid_mae = 5.95392, ts_mae = 5.93193
Epoch 171 time = 9.87, tr_rmse = 11.97109, valid_rmse = 9.27559, ts_rmse = 9.12407, tr_mae = 7.40269, valid_mae = 6.02765, ts_mae = 6.00245
Epoch 172 time = 9.71, tr_rmse = 11.97110, valid_rmse = 9.27092, ts_rmse = 9.12137, tr_mae = 7.38728, valid_mae = 6.02429, ts_mae = 5.99801
Epoch 173 time = 9.92, tr_rmse = 11.91242, valid_rmse = 9.23236, ts_rmse = 9.05820, tr_mae = 7.26689, valid_mae = 5.93821, ts_mae = 5.91186
Epoch 174 time = 10.26, tr_rmse = 11.92822, valid_rmse = 9.22520, ts_rmse = 9.07796, tr_mae = 7.31747, valid_mae = 5.95477, ts_mae = 5.93551
Epoch 175 time = 10.33, tr_rmse = 11.88255, valid_rmse = 9.21310, ts_rmse = 9.04718, tr_mae = 7.20631, valid_mae = 5.90215, ts_mae = 5.88123
Epoch 176 time = 10.17, tr_rmse = 11.87675, valid_rmse = 9.22559, ts_rmse = 9.05423, tr_mae = 7.14677, valid_mae = 5.88592, ts_mae = 5.86035
Epoch 177 time = 10.14, tr_rmse = 11.88650, valid_rmse = 9.20524, ts_rmse = 9.04307, tr_mae = 7.23289, valid_mae = 5.90898, ts_mae = 5.88639
Epoch 178 time = 10.17, tr_rmse = 11.94746, valid_rmse = 9.25480, ts_rmse = 9.09992, tr_mae = 7.36934, valid_mae = 6.00055, ts_mae = 5.98023
Epoch 179 time = 9.98, tr_rmse = 11.86245, valid_rmse = 9.22126, ts_rmse = 9.04812, tr_mae = 7.17001, valid_mae = 5.89249, ts_mae = 5.86209
Epoch 180 time = 9.85, tr_rmse = 11.87409, valid_rmse = 9.21461, ts_rmse = 9.04575, tr_mae = 7.22949, valid_mae = 5.91262, ts_mae = 5.88749
Epoch 181 time = 9.98, tr_rmse = 11.88134, valid_rmse = 9.20783, ts_rmse = 9.03412, tr_mae = 7.23036, valid_mae = 5.90239, ts_mae = 5.87887
Epoch 182 time = 9.63, tr_rmse = 11.87552, valid_rmse = 9.31973, ts_rmse = 9.14347, tr_mae = 7.12477, valid_mae = 5.96495, ts_mae = 5.93619
Epoch 183 time = 9.73, tr_rmse = 11.88883, valid_rmse = 9.19873, ts_rmse = 9.03616, tr_mae = 7.22437, valid_mae = 5.90645, ts_mae = 5.88966
Epoch 184 time = 9.72, tr_rmse = 11.91378, valid_rmse = 9.23258, ts_rmse = 9.06552, tr_mae = 7.30647, valid_mae = 5.97188, ts_mae = 5.94648
Epoch 185 time = 9.66, tr_rmse = 11.87588, valid_rmse = 9.27383, ts_rmse = 9.08748, tr_mae = 7.11119, valid_mae = 5.91230, ts_mae = 5.87958
Epoch 186 time = 10.09, tr_rmse = 11.88798, valid_rmse = 9.20811, ts_rmse = 9.03456, tr_mae = 7.26477, valid_mae = 5.92447, ts_mae = 5.89436
Epoch 187 time = 10.27, tr_rmse = 11.84456, valid_rmse = 9.21985, ts_rmse = 9.03882, tr_mae = 7.13940, valid_mae = 5.88161, ts_mae = 5.84877
Epoch 188 time = 10.34, tr_rmse = 11.84135, valid_rmse = 9.19835, ts_rmse = 9.01326, tr_mae = 7.14339, valid_mae = 5.86605, ts_mae = 5.83192
Epoch 189 time = 10.11, tr_rmse = 11.84525, valid_rmse = 9.23149, ts_rmse = 9.05811, tr_mae = 7.10935, valid_mae = 5.88021, ts_mae = 5.85031
Epoch 190 time = 10.12, tr_rmse = 11.94332, valid_rmse = 9.29757, ts_rmse = 9.11061, tr_mae = 7.13404, valid_mae = 5.91587, ts_mae = 5.88781
Epoch 191 time = 9.94, tr_rmse = 11.87457, valid_rmse = 9.22200, ts_rmse = 9.05228, tr_mae = 7.23181, valid_mae = 5.92631, ts_mae = 5.89325
Epoch 192 time = 9.90, tr_rmse = 11.86250, valid_rmse = 9.18971, ts_rmse = 9.02317, tr_mae = 7.23591, valid_mae = 5.90139, ts_mae = 5.87672
Epoch 193 time = 9.81, tr_rmse = 11.84097, valid_rmse = 9.27201, ts_rmse = 9.08255, tr_mae = 7.09730, valid_mae = 5.90891, ts_mae = 5.87510
Epoch 194 time = 9.71, tr_rmse = 11.89535, valid_rmse = 9.22792, ts_rmse = 9.06222, tr_mae = 7.30328, valid_mae = 5.95544, ts_mae = 5.92563
Epoch 195 time = 9.68, tr_rmse = 11.83768, valid_rmse = 9.21425, ts_rmse = 9.04115, tr_mae = 7.10716, valid_mae = 5.86989, ts_mae = 5.84761
Epoch 196 time = 9.75, tr_rmse = 11.82915, valid_rmse = 9.19771, ts_rmse = 9.00730, tr_mae = 7.11883, valid_mae = 5.85419, ts_mae = 5.82227
Epoch 197 time = 9.86, tr_rmse = 11.86284, valid_rmse = 9.19667, ts_rmse = 9.02792, tr_mae = 7.24012, valid_mae = 5.90613, ts_mae = 5.87710
Epoch 198 time = 9.95, tr_rmse = 11.83923, valid_rmse = 9.18624, ts_rmse = 9.01938, tr_mae = 7.16725, valid_mae = 5.86767, ts_mae = 5.84152
Epoch 199 time = 10.14, tr_rmse = 11.83831, valid_rmse = 9.19354, ts_rmse = 9.01262, tr_mae = 7.18687, valid_mae = 5.88110, ts_mae = 5.84589
Epoch 200 time = 10.16, tr_rmse = 11.85885, valid_rmse = 9.19334, ts_rmse = 9.01663, tr_mae = 7.24259, valid_mae = 5.90721, ts_mae = 5.88097
Epoch 201 time = 10.18, tr_rmse = 11.92915, valid_rmse = 9.23669, ts_rmse = 9.06845, tr_mae = 7.37189, valid_mae = 6.01116, ts_mae = 5.97991
Epoch 202 time = 10.07, tr_rmse = 11.86387, valid_rmse = 9.24205, ts_rmse = 9.05623, tr_mae = 7.08191, valid_mae = 5.86115, ts_mae = 5.83404
Epoch 203 time = 10.01, tr_rmse = 11.88128, valid_rmse = 9.20540, ts_rmse = 9.03496, tr_mae = 7.30109, valid_mae = 5.94187, ts_mae = 5.90846
Epoch 204 time = 9.90, tr_rmse = 11.82509, valid_rmse = 9.16372, ts_rmse = 8.98825, tr_mae = 7.14794, valid_mae = 5.85317, ts_mae = 5.82624
Epoch 205 time = 9.79, tr_rmse = 11.84858, valid_rmse = 9.20607, ts_rmse = 9.02065, tr_mae = 7.22112, valid_mae = 5.90522, ts_mae = 5.86986
Epoch 206 time = 9.72, tr_rmse = 11.80826, valid_rmse = 9.17781, ts_rmse = 8.98572, tr_mae = 7.11373, valid_mae = 5.84084, ts_mae = 5.80887
Epoch 207 time = 9.70, tr_rmse = 11.81686, valid_rmse = 9.22000, ts_rmse = 9.03278, tr_mae = 7.12467, valid_mae = 5.88590, ts_mae = 5.84781
Epoch 208 time = 9.68, tr_rmse = 11.81497, valid_rmse = 9.20413, ts_rmse = 9.01627, tr_mae = 7.07578, valid_mae = 5.84877, ts_mae = 5.81205
Epoch 209 time = 9.80, tr_rmse = 11.86736, valid_rmse = 9.18941, ts_rmse = 9.02132, tr_mae = 7.27384, valid_mae = 5.92001, ts_mae = 5.89467
Epoch 210 time = 10.06, tr_rmse = 11.82237, valid_rmse = 9.23436, ts_rmse = 9.05197, tr_mae = 7.07685, valid_mae = 5.87367, ts_mae = 5.84502
Epoch 211 time = 10.73, tr_rmse = 11.80312, valid_rmse = 9.19685, ts_rmse = 9.00674, tr_mae = 7.12096, valid_mae = 5.85844, ts_mae = 5.82517
Epoch 212 time = 10.18, tr_rmse = 11.81738, valid_rmse = 9.16021, ts_rmse = 8.97825, tr_mae = 7.16430, valid_mae = 5.85686, ts_mae = 5.82566
Epoch 213 time = 10.33, tr_rmse = 11.81050, valid_rmse = 9.17086, ts_rmse = 8.98389, tr_mae = 7.16658, valid_mae = 5.86197, ts_mae = 5.82616
Epoch 214 time = 10.13, tr_rmse = 11.79881, valid_rmse = 9.16154, ts_rmse = 8.97778, tr_mae = 7.11266, valid_mae = 5.83430, ts_mae = 5.80172
Epoch 215 time = 9.89, tr_rmse = 11.80230, valid_rmse = 9.19327, ts_rmse = 9.00486, tr_mae = 7.08541, valid_mae = 5.84665, ts_mae = 5.81319
Epoch 216 time = 9.82, tr_rmse = 11.82477, valid_rmse = 9.26204, ts_rmse = 9.08005, tr_mae = 7.07727, valid_mae = 5.90339, ts_mae = 5.86797
Epoch 217 time = 9.87, tr_rmse = 11.90317, valid_rmse = 9.23293, ts_rmse = 9.06030, tr_mae = 7.34855, valid_mae = 5.97384, ts_mae = 5.94316
Epoch 218 time = 9.72, tr_rmse = 11.79810, valid_rmse = 9.17971, ts_rmse = 8.98953, tr_mae = 7.10364, valid_mae = 5.83990, ts_mae = 5.80359
Epoch 219 time = 9.78, tr_rmse = 11.79166, valid_rmse = 9.16976, ts_rmse = 8.98498, tr_mae = 7.11071, valid_mae = 5.83390, ts_mae = 5.80687
Epoch 220 time = 9.65, tr_rmse = 11.78979, valid_rmse = 9.17533, ts_rmse = 8.99086, tr_mae = 7.11345, valid_mae = 5.84433, ts_mae = 5.81026
Epoch 221 time = 9.62, tr_rmse = 11.80783, valid_rmse = 9.15762, ts_rmse = 8.97944, tr_mae = 7.17176, valid_mae = 5.86130, ts_mae = 5.83068
Epoch 222 time = 9.89, tr_rmse = 11.79197, valid_rmse = 9.15824, ts_rmse = 8.97256, tr_mae = 7.13716, valid_mae = 5.83950, ts_mae = 5.80769
Epoch 223 time = 10.15, tr_rmse = 11.78839, valid_rmse = 9.17133, ts_rmse = 8.98587, tr_mae = 7.13125, valid_mae = 5.85093, ts_mae = 5.81434
Epoch 224 time = 10.26, tr_rmse = 11.80114, valid_rmse = 9.15393, ts_rmse = 8.96476, tr_mae = 7.12675, valid_mae = 5.83838, ts_mae = 5.80369
Epoch 225 time = 11.08, tr_rmse = 11.80603, valid_rmse = 9.17958, ts_rmse = 8.98894, tr_mae = 7.16677, valid_mae = 5.87116, ts_mae = 5.83286
Epoch 226 time = 10.09, tr_rmse = 11.81781, valid_rmse = 9.21605, ts_rmse = 9.02238, tr_mae = 7.07457, valid_mae = 5.84315, ts_mae = 5.81150
Epoch 227 time = 9.92, tr_rmse = 11.79083, valid_rmse = 9.15234, ts_rmse = 8.96990, tr_mae = 7.16090, valid_mae = 5.85181, ts_mae = 5.82125
Epoch 228 time = 9.92, tr_rmse = 11.79166, valid_rmse = 9.23543, ts_rmse = 9.03391, tr_mae = 7.06433, valid_mae = 5.87290, ts_mae = 5.83601
Epoch 229 time = 9.90, tr_rmse = 11.79044, valid_rmse = 9.17452, ts_rmse = 8.97801, tr_mae = 7.13890, valid_mae = 5.85384, ts_mae = 5.81086
Epoch 230 time = 9.79, tr_rmse = 11.80582, valid_rmse = 9.15976, ts_rmse = 8.97070, tr_mae = 7.18560, valid_mae = 5.86910, ts_mae = 5.83126
Epoch 231 time = 9.85, tr_rmse = 11.79466, valid_rmse = 9.16309, ts_rmse = 8.97252, tr_mae = 7.17934, valid_mae = 5.86713, ts_mae = 5.82662
Epoch 232 time = 10.07, tr_rmse = 11.78108, valid_rmse = 9.21509, ts_rmse = 9.01985, tr_mae = 7.06689, valid_mae = 5.86407, ts_mae = 5.82627
Epoch 233 time = 9.67, tr_rmse = 11.77203, valid_rmse = 9.14827, ts_rmse = 8.96429, tr_mae = 7.11243, valid_mae = 5.83034, ts_mae = 5.79432
Epoch 234 time = 9.93, tr_rmse = 11.77145, valid_rmse = 9.14637, ts_rmse = 8.96191, tr_mae = 7.11801, valid_mae = 5.83577, ts_mae = 5.80333
Epoch 235 time = 10.16, tr_rmse = 11.76912, valid_rmse = 9.17674, ts_rmse = 8.98133, tr_mae = 7.06144, valid_mae = 5.82669, ts_mae = 5.79019
Epoch 236 time = 10.26, tr_rmse = 11.75961, valid_rmse = 9.16587, ts_rmse = 8.96385, tr_mae = 7.09041, valid_mae = 5.83061, ts_mae = 5.79037
Epoch 237 time = 10.18, tr_rmse = 11.76802, valid_rmse = 9.16457, ts_rmse = 8.95730, tr_mae = 7.09116, valid_mae = 5.82949, ts_mae = 5.78393
Epoch 238 time = 10.05, tr_rmse = 11.76838, valid_rmse = 9.16936, ts_rmse = 8.97172, tr_mae = 7.11443, valid_mae = 5.84533, ts_mae = 5.80533
Epoch 239 time = 9.93, tr_rmse = 11.76146, valid_rmse = 9.15032, ts_rmse = 8.96929, tr_mae = 7.10993, valid_mae = 5.83080, ts_mae = 5.79739
Epoch 240 time = 9.99, tr_rmse = 11.77892, valid_rmse = 9.16425, ts_rmse = 8.96659, tr_mae = 7.15868, valid_mae = 5.86172, ts_mae = 5.81751
Epoch 241 time = 10.35, tr_rmse = 11.75052, valid_rmse = 9.15911, ts_rmse = 8.96304, tr_mae = 7.09902, valid_mae = 5.83348, ts_mae = 5.79825
Epoch 242 time = 9.71, tr_rmse = 11.74653, valid_rmse = 9.15103, ts_rmse = 8.96552, tr_mae = 7.08035, valid_mae = 5.81923, ts_mae = 5.78341
Epoch 243 time = 9.82, tr_rmse = 11.78110, valid_rmse = 9.17649, ts_rmse = 8.99072, tr_mae = 7.16995, valid_mae = 5.87005, ts_mae = 5.83370
Epoch 244 time = 10.28, tr_rmse = 11.77787, valid_rmse = 9.17613, ts_rmse = 8.97783, tr_mae = 7.14170, valid_mae = 5.86498, ts_mae = 5.82106
Epoch 245 time = 9.72, tr_rmse = 11.77173, valid_rmse = 9.13716, ts_rmse = 8.95378, tr_mae = 7.15445, valid_mae = 5.84702, ts_mae = 5.81313
Epoch 246 time = 9.86, tr_rmse = 11.81869, valid_rmse = 9.18830, ts_rmse = 9.00555, tr_mae = 7.27003, valid_mae = 5.93502, ts_mae = 5.90188
Epoch 247 time = 10.37, tr_rmse = 11.76459, valid_rmse = 9.16187, ts_rmse = 8.97250, tr_mae = 7.12750, valid_mae = 5.84938, ts_mae = 5.81578
Epoch 248 time = 10.16, tr_rmse = 11.81257, valid_rmse = 9.18885, ts_rmse = 9.00226, tr_mae = 7.26875, valid_mae = 5.93548, ts_mae = 5.89742
Epoch 249 time = 10.44, tr_rmse = 11.77027, valid_rmse = 9.14672, ts_rmse = 8.95580, tr_mae = 7.17422, valid_mae = 5.86395, ts_mae = 5.82538
Epoch 250 time = 10.30, tr_rmse = 11.73947, valid_rmse = 9.14899, ts_rmse = 8.95315, tr_mae = 7.06319, valid_mae = 5.81401, ts_mae = 5.77824
Epoch 251 time = 10.07, tr_rmse = 11.75722, valid_rmse = 9.15113, ts_rmse = 8.95829, tr_mae = 7.12576, valid_mae = 5.84534, ts_mae = 5.80573
Epoch 252 time = 10.01, tr_rmse = 11.77384, valid_rmse = 9.15667, ts_rmse = 8.97659, tr_mae = 7.19560, valid_mae = 5.87548, ts_mae = 5.84240
Epoch 253 time = 10.14, tr_rmse = 11.77782, valid_rmse = 9.14728, ts_rmse = 8.96175, tr_mae = 7.19810, valid_mae = 5.87744, ts_mae = 5.84071
Epoch 254 time = 9.87, tr_rmse = 11.76770, valid_rmse = 9.15784, ts_rmse = 8.97070, tr_mae = 7.19357, valid_mae = 5.90183, ts_mae = 5.86578
Epoch 255 time = 9.87, tr_rmse = 11.74559, valid_rmse = 9.14752, ts_rmse = 8.96680, tr_mae = 7.10325, valid_mae = 5.83211, ts_mae = 5.79709
Epoch 256 time = 9.85, tr_rmse = 11.78722, valid_rmse = 9.21895, ts_rmse = 9.02315, tr_mae = 7.04445, valid_mae = 5.84254, ts_mae = 5.81146
Epoch 257 time = 9.62, tr_rmse = 11.73070, valid_rmse = 9.13710, ts_rmse = 8.95016, tr_mae = 7.10402, valid_mae = 5.83290, ts_mae = 5.79304
Epoch 258 time = 9.82, tr_rmse = 11.80076, valid_rmse = 9.17686, ts_rmse = 8.98830, tr_mae = 7.26565, valid_mae = 5.92930, ts_mae = 5.88742
Epoch 259 time = 9.99, tr_rmse = 11.73046, valid_rmse = 9.14051, ts_rmse = 8.95683, tr_mae = 7.07953, valid_mae = 5.82174, ts_mae = 5.79046
Epoch 260 time = 10.16, tr_rmse = 11.78609, valid_rmse = 9.17285, ts_rmse = 8.98359, tr_mae = 7.22291, valid_mae = 5.90643, ts_mae = 5.86948
Epoch 261 time = 10.19, tr_rmse = 11.75108, valid_rmse = 9.19353, ts_rmse = 8.99197, tr_mae = 7.02398, valid_mae = 5.81671, ts_mae = 5.78155
Epoch 262 time = 10.45, tr_rmse = 11.72230, valid_rmse = 9.13622, ts_rmse = 8.94034, tr_mae = 7.05811, valid_mae = 5.80696, ts_mae = 5.76865
Epoch 263 time = 9.98, tr_rmse = 11.72984, valid_rmse = 9.14182, ts_rmse = 8.94484, tr_mae = 7.11116, valid_mae = 5.83073, ts_mae = 5.79458
Epoch 264 time = 10.03, tr_rmse = 11.73023, valid_rmse = 9.14991, ts_rmse = 8.95021, tr_mae = 7.09274, valid_mae = 5.82769, ts_mae = 5.78570
Epoch 265 time = 9.93, tr_rmse = 11.73014, valid_rmse = 9.12612, ts_rmse = 8.94151, tr_mae = 7.11253, valid_mae = 5.83336, ts_mae = 5.79997
Epoch 266 time = 9.81, tr_rmse = 11.72354, valid_rmse = 9.17777, ts_rmse = 8.98196, tr_mae = 7.05459, valid_mae = 5.83963, ts_mae = 5.79851
Epoch 267 time = 9.79, tr_rmse = 11.72693, valid_rmse = 9.16454, ts_rmse = 8.96751, tr_mae = 7.07021, valid_mae = 5.83612, ts_mae = 5.79574
Epoch 268 time = 9.69, tr_rmse = 11.72356, valid_rmse = 9.22286, ts_rmse = 9.01990, tr_mae = 7.04285, valid_mae = 5.86626, ts_mae = 5.81656
Epoch 269 time = 9.68, tr_rmse = 11.71624, valid_rmse = 9.15036, ts_rmse = 8.94995, tr_mae = 7.06144, valid_mae = 5.81993, ts_mae = 5.77844
Epoch 270 time = 9.71, tr_rmse = 11.73166, valid_rmse = 9.12990, ts_rmse = 8.93355, tr_mae = 7.12414, valid_mae = 5.83550, ts_mae = 5.79583
Epoch 271 time = 9.88, tr_rmse = 11.73215, valid_rmse = 9.13704, ts_rmse = 8.93064, tr_mae = 7.06820, valid_mae = 5.80657, ts_mae = 5.77106
Epoch 272 time = 10.19, tr_rmse = 11.71502, valid_rmse = 9.15378, ts_rmse = 8.94589, tr_mae = 7.02481, valid_mae = 5.79787, ts_mae = 5.75824
Epoch 273 time = 10.35, tr_rmse = 11.79026, valid_rmse = 9.16884, ts_rmse = 8.98626, tr_mae = 7.26837, valid_mae = 5.93061, ts_mae = 5.89448
Epoch 274 time = 10.26, tr_rmse = 11.70327, valid_rmse = 9.14011, ts_rmse = 8.93248, tr_mae = 7.03380, valid_mae = 5.79601, ts_mae = 5.75508
Epoch 275 time = 10.00, tr_rmse = 11.80393, valid_rmse = 9.18795, ts_rmse = 9.00815, tr_mae = 7.31290, valid_mae = 5.95872, ts_mae = 5.92280
Epoch 276 time = 9.96, tr_rmse = 11.74232, valid_rmse = 9.16866, ts_rmse = 8.96614, tr_mae = 7.02149, valid_mae = 5.79642, ts_mae = 5.75963
Epoch 277 time = 9.93, tr_rmse = 11.71182, valid_rmse = 9.14527, ts_rmse = 8.94195, tr_mae = 7.07927, valid_mae = 5.82573, ts_mae = 5.78217
Epoch 278 time = 9.86, tr_rmse = 11.70496, valid_rmse = 9.13463, ts_rmse = 8.94380, tr_mae = 7.10489, valid_mae = 5.83181, ts_mae = 5.79439
Epoch 279 time = 9.76, tr_rmse = 11.71876, valid_rmse = 9.12114, ts_rmse = 8.92689, tr_mae = 7.12604, valid_mae = 5.84383, ts_mae = 5.80748
Epoch 280 time = 9.76, tr_rmse = 11.71844, valid_rmse = 9.14172, ts_rmse = 8.94364, tr_mae = 7.11267, valid_mae = 5.84207, ts_mae = 5.80396
Epoch 281 time = 9.54, tr_rmse = 11.71301, valid_rmse = 9.12416, ts_rmse = 8.93648, tr_mae = 7.13884, valid_mae = 5.84798, ts_mae = 5.81348
Epoch 282 time = 9.85, tr_rmse = 11.70648, valid_rmse = 9.14033, ts_rmse = 8.94755, tr_mae = 7.08012, valid_mae = 5.82333, ts_mae = 5.78616
Epoch 283 time = 10.12, tr_rmse = 11.75006, valid_rmse = 9.15722, ts_rmse = 8.97008, tr_mae = 7.20739, valid_mae = 5.89443, ts_mae = 5.85865
Epoch 284 time = 10.25, tr_rmse = 11.69680, valid_rmse = 9.15533, ts_rmse = 8.95744, tr_mae = 7.02334, valid_mae = 5.80577, ts_mae = 5.76649
Epoch 285 time = 10.18, tr_rmse = 11.72731, valid_rmse = 9.14127, ts_rmse = 8.95151, tr_mae = 7.18118, valid_mae = 5.87736, ts_mae = 5.83460
Epoch 286 time = 10.20, tr_rmse = 11.69487, valid_rmse = 9.11612, ts_rmse = 8.92580, tr_mae = 7.10238, valid_mae = 5.82995, ts_mae = 5.79141
Epoch 287 time = 9.92, tr_rmse = 11.70697, valid_rmse = 9.13613, ts_rmse = 8.95328, tr_mae = 7.12039, valid_mae = 5.84137, ts_mae = 5.80824
Epoch 288 time = 9.85, tr_rmse = 11.70605, valid_rmse = 9.14925, ts_rmse = 8.93784, tr_mae = 7.02240, valid_mae = 5.79223, ts_mae = 5.75661
Epoch 289 time = 9.97, tr_rmse = 11.68761, valid_rmse = 9.13814, ts_rmse = 8.94306, tr_mae = 7.07348, valid_mae = 5.82607, ts_mae = 5.78712
Epoch 290 time = 9.78, tr_rmse = 11.71507, valid_rmse = 9.14569, ts_rmse = 8.94124, tr_mae = 7.13738, valid_mae = 5.86106, ts_mae = 5.81798
Epoch 291 time = 9.72, tr_rmse = 11.67557, valid_rmse = 9.14375, ts_rmse = 8.93616, tr_mae = 7.02582, valid_mae = 5.80623, ts_mae = 5.76181
Epoch 292 time = 9.81, tr_rmse = 11.70772, valid_rmse = 9.20870, ts_rmse = 8.99781, tr_mae = 7.01272, valid_mae = 5.84674, ts_mae = 5.80796
Epoch 293 time = 9.75, tr_rmse = 11.70678, valid_rmse = 9.12092, ts_rmse = 8.92818, tr_mae = 7.14028, valid_mae = 5.85338, ts_mae = 5.81126
Epoch 294 time = 10.43, tr_rmse = 11.66192, valid_rmse = 9.13645, ts_rmse = 8.92976, tr_mae = 7.01513, valid_mae = 5.79819, ts_mae = 5.75570
Epoch 295 time = 10.23, tr_rmse = 11.74085, valid_rmse = 9.14413, ts_rmse = 8.96079, tr_mae = 7.18919, valid_mae = 5.87866, ts_mae = 5.84128
Epoch 296 time = 10.16, tr_rmse = 11.68670, valid_rmse = 9.11235, ts_rmse = 8.91582, tr_mae = 7.10929, valid_mae = 5.83283, ts_mae = 5.78909
Epoch 297 time = 10.09, tr_rmse = 11.68740, valid_rmse = 9.18549, ts_rmse = 8.97517, tr_mae = 7.00089, valid_mae = 5.83096, ts_mae = 5.78569
Epoch 298 time = 10.01, tr_rmse = 11.68648, valid_rmse = 9.13017, ts_rmse = 8.93182, tr_mae = 7.09697, valid_mae = 5.83352, ts_mae = 5.78901
Epoch 299 time = 9.89, tr_rmse = 11.66788, valid_rmse = 9.13758, ts_rmse = 8.93408, tr_mae = 7.02694, valid_mae = 5.80981, ts_mae = 5.76587
Epoch 300 time = 9.91, tr_rmse = 11.67946, valid_rmse = 9.12655, ts_rmse = 8.92285, tr_mae = 7.08905, valid_mae = 5.83028, ts_mae = 5.78256
Epoch 301 time = 9.79, tr_rmse = 11.68633, valid_rmse = 9.11656, ts_rmse = 8.91961, tr_mae = 7.12458, valid_mae = 5.84116, ts_mae = 5.79934
Epoch 302 time = 9.74, tr_rmse = 11.66888, valid_rmse = 9.12743, ts_rmse = 8.92229, tr_mae = 7.05239, valid_mae = 5.81383, ts_mae = 5.77167
Epoch 303 time = 10.57, tr_rmse = 11.67279, valid_rmse = 9.11347, ts_rmse = 8.90616, tr_mae = 7.05019, valid_mae = 5.79842, ts_mae = 5.75914
Epoch 304 time = 9.75, tr_rmse = 11.67730, valid_rmse = 9.13821, ts_rmse = 8.91721, tr_mae = 7.03685, valid_mae = 5.81701, ts_mae = 5.76522
Epoch 305 time = 9.85, tr_rmse = 11.73014, valid_rmse = 9.15189, ts_rmse = 8.95870, tr_mae = 7.22170, valid_mae = 5.91165, ts_mae = 5.87053
Epoch 306 time = 10.15, tr_rmse = 11.71194, valid_rmse = 9.15786, ts_rmse = 8.95059, tr_mae = 7.15303, valid_mae = 5.87518, ts_mae = 5.82505
Epoch 307 time = 10.36, tr_rmse = 11.65742, valid_rmse = 9.11307, ts_rmse = 8.89646, tr_mae = 7.03748, valid_mae = 5.79814, ts_mae = 5.74972
Epoch 308 time = 10.26, tr_rmse = 11.67783, valid_rmse = 9.12096, ts_rmse = 8.92333, tr_mae = 7.10512, valid_mae = 5.83550, ts_mae = 5.79083
Epoch 309 time = 10.29, tr_rmse = 11.72600, valid_rmse = 9.14332, ts_rmse = 8.94245, tr_mae = 7.20016, valid_mae = 5.89429, ts_mae = 5.84909
Epoch 310 time = 10.07, tr_rmse = 11.66108, valid_rmse = 9.13132, ts_rmse = 8.92313, tr_mae = 7.04284, valid_mae = 5.80979, ts_mae = 5.76343
Epoch 311 time = 9.99, tr_rmse = 11.70143, valid_rmse = 9.12679, ts_rmse = 8.91974, tr_mae = 7.17843, valid_mae = 5.87934, ts_mae = 5.83161
Epoch 312 time = 9.95, tr_rmse = 11.69062, valid_rmse = 9.21617, ts_rmse = 9.00518, tr_mae = 6.98759, valid_mae = 5.84729, ts_mae = 5.80588
Epoch 313 time = 11.29, tr_rmse = 11.65654, valid_rmse = 9.11938, ts_rmse = 8.91377, tr_mae = 7.02624, valid_mae = 5.80139, ts_mae = 5.75584
Epoch 314 time = 9.81, tr_rmse = 11.64697, valid_rmse = 9.14172, ts_rmse = 8.94594, tr_mae = 6.99312, valid_mae = 5.80137, ts_mae = 5.76200
Epoch 315 time = 9.87, tr_rmse = 11.64405, valid_rmse = 9.11519, ts_rmse = 8.91144, tr_mae = 7.00968, valid_mae = 5.78977, ts_mae = 5.74419
Epoch 316 time = 9.73, tr_rmse = 11.65735, valid_rmse = 9.16019, ts_rmse = 8.94851, tr_mae = 6.98131, valid_mae = 5.80462, ts_mae = 5.76097
Epoch 317 time = 9.76, tr_rmse = 11.71324, valid_rmse = 9.14418, ts_rmse = 8.94169, tr_mae = 7.18592, valid_mae = 5.88887, ts_mae = 5.83857
Epoch 318 time = 10.02, tr_rmse = 11.66830, valid_rmse = 9.12007, ts_rmse = 8.91270, tr_mae = 7.06745, valid_mae = 5.81667, ts_mae = 5.77247
Epoch 319 time = 10.29, tr_rmse = 11.66161, valid_rmse = 9.15901, ts_rmse = 8.96298, tr_mae = 7.00146, valid_mae = 5.81963, ts_mae = 5.77829
Epoch 320 time = 10.25, tr_rmse = 11.66493, valid_rmse = 9.11102, ts_rmse = 8.90328, tr_mae = 7.09813, valid_mae = 5.83706, ts_mae = 5.79523
Epoch 321 time = 10.16, tr_rmse = 11.65093, valid_rmse = 9.10470, ts_rmse = 8.90077, tr_mae = 7.02073, valid_mae = 5.79142, ts_mae = 5.74819
Epoch 322 time = 10.21, tr_rmse = 11.64512, valid_rmse = 9.13918, ts_rmse = 8.91721, tr_mae = 7.01152, valid_mae = 5.80558, ts_mae = 5.75232
Epoch 323 time = 10.06, tr_rmse = 11.66082, valid_rmse = 9.15965, ts_rmse = 8.95020, tr_mae = 6.98812, valid_mae = 5.80971, ts_mae = 5.76696
Epoch 324 time = 9.91, tr_rmse = 11.65474, valid_rmse = 9.20591, ts_rmse = 8.97869, tr_mae = 6.99403, valid_mae = 5.85043, ts_mae = 5.79530
Epoch 325 time = 10.04, tr_rmse = 11.64274, valid_rmse = 9.10672, ts_rmse = 8.89985, tr_mae = 7.05703, valid_mae = 5.80918, ts_mae = 5.76442
Epoch 326 time = 9.84, tr_rmse = 11.65158, valid_rmse = 9.16229, ts_rmse = 8.95919, tr_mae = 7.02358, valid_mae = 5.83089, ts_mae = 5.78826
Epoch 327 time = 9.85, tr_rmse = 11.65996, valid_rmse = 9.14991, ts_rmse = 8.93763, tr_mae = 7.00751, valid_mae = 5.81285, ts_mae = 5.76815
Epoch 328 time = 9.79, tr_rmse = 11.64173, valid_rmse = 9.11536, ts_rmse = 8.91975, tr_mae = 7.03250, valid_mae = 5.80407, ts_mae = 5.76339
Epoch 329 time = 9.67, tr_rmse = 11.67022, valid_rmse = 9.17325, ts_rmse = 8.98022, tr_mae = 7.04314, valid_mae = 5.85065, ts_mae = 5.80749
Epoch 330 time = 9.74, tr_rmse = 11.65733, valid_rmse = 9.11193, ts_rmse = 8.90355, tr_mae = 7.09529, valid_mae = 5.82976, ts_mae = 5.78411
Epoch 331 time = 9.90, tr_rmse = 11.64769, valid_rmse = 9.15153, ts_rmse = 8.94871, tr_mae = 6.99012, valid_mae = 5.80826, ts_mae = 5.76539
Epoch 332 time = 10.05, tr_rmse = 11.72356, valid_rmse = 9.14997, ts_rmse = 8.96570, tr_mae = 7.22130, valid_mae = 5.90794, ts_mae = 5.86584
Epoch 333 time = 10.36, tr_rmse = 11.68466, valid_rmse = 9.11727, ts_rmse = 8.90990, tr_mae = 7.15400, valid_mae = 5.86252, ts_mae = 5.81554
Epoch 334 time = 10.15, tr_rmse = 11.66963, valid_rmse = 9.14461, ts_rmse = 8.94441, tr_mae = 7.08941, valid_mae = 5.84077, ts_mae = 5.79250
Epoch 335 time = 10.32, tr_rmse = 11.63924, valid_rmse = 9.11139, ts_rmse = 8.90389, tr_mae = 7.05495, valid_mae = 5.81257, ts_mae = 5.76666
Epoch 336 time = 10.14, tr_rmse = 11.70307, valid_rmse = 9.14397, ts_rmse = 8.95345, tr_mae = 7.18276, valid_mae = 5.88620, ts_mae = 5.83780
Epoch 337 time = 10.16, tr_rmse = 11.64092, valid_rmse = 9.11941, ts_rmse = 8.91214, tr_mae = 7.00824, valid_mae = 5.79649, ts_mae = 5.75091
Epoch 338 time = 9.84, tr_rmse = 11.67561, valid_rmse = 9.18823, ts_rmse = 8.97623, tr_mae = 6.97726, valid_mae = 5.82340, ts_mae = 5.77999
Epoch 339 time = 9.87, tr_rmse = 11.62891, valid_rmse = 9.13637, ts_rmse = 8.90922, tr_mae = 6.98737, valid_mae = 5.79101, ts_mae = 5.73989
Epoch 340 time = 9.90, tr_rmse = 11.64153, valid_rmse = 9.12322, ts_rmse = 8.92964, tr_mae = 7.06852, valid_mae = 5.82446, ts_mae = 5.78204
Epoch 341 time = 9.78, tr_rmse = 11.62220, valid_rmse = 9.11143, ts_rmse = 8.90467, tr_mae = 7.00835, valid_mae = 5.78735, ts_mae = 5.74484
Epoch 342 time = 9.63, tr_rmse = 11.63116, valid_rmse = 9.11429, ts_rmse = 8.91351, tr_mae = 7.01777, valid_mae = 5.79510, ts_mae = 5.74923
Epoch 343 time = 9.72, tr_rmse = 11.62674, valid_rmse = 9.16556, ts_rmse = 8.94949, tr_mae = 7.00547, valid_mae = 5.82949, ts_mae = 5.77579
Epoch 344 time = 9.91, tr_rmse = 11.63801, valid_rmse = 9.13357, ts_rmse = 8.94074, tr_mae = 7.05784, valid_mae = 5.82305, ts_mae = 5.78090
Epoch 345 time = 11.04, tr_rmse = 11.62158, valid_rmse = 9.09472, ts_rmse = 8.88956, tr_mae = 6.99329, valid_mae = 5.77626, ts_mae = 5.73329
Epoch 346 time = 10.29, tr_rmse = 11.73508, valid_rmse = 9.16250, ts_rmse = 8.97159, tr_mae = 7.26054, valid_mae = 5.93731, ts_mae = 5.89172
Epoch 347 time = 10.44, tr_rmse = 11.61254, valid_rmse = 9.12382, ts_rmse = 8.90630, tr_mae = 6.99150, valid_mae = 5.79365, ts_mae = 5.73837
Epoch 348 time = 10.18, tr_rmse = 11.61316, valid_rmse = 9.12059, ts_rmse = 8.90235, tr_mae = 7.00908, valid_mae = 5.79733, ts_mae = 5.74357
Epoch 349 time = 10.01, tr_rmse = 11.63782, valid_rmse = 9.19445, ts_rmse = 8.98794, tr_mae = 6.99986, valid_mae = 5.85318, ts_mae = 5.80249
Epoch 350 time = 10.03, tr_rmse = 11.63597, valid_rmse = 9.13568, ts_rmse = 8.91943, tr_mae = 7.06425, valid_mae = 5.82446, ts_mae = 5.77047
Epoch 351 time = 9.97, tr_rmse = 11.60788, valid_rmse = 9.12071, ts_rmse = 8.91761, tr_mae = 6.99428, valid_mae = 5.78865, ts_mae = 5.74412
Epoch 352 time = 9.87, tr_rmse = 11.62250, valid_rmse = 9.11639, ts_rmse = 8.92351, tr_mae = 7.00297, valid_mae = 5.78825, ts_mae = 5.74822
Epoch 353 time = 9.77, tr_rmse = 11.61830, valid_rmse = 9.14309, ts_rmse = 8.93485, tr_mae = 6.99883, valid_mae = 5.80911, ts_mae = 5.76145
Epoch 354 time = 9.52, tr_rmse = 11.60637, valid_rmse = 9.10001, ts_rmse = 8.88574, tr_mae = 6.99510, valid_mae = 5.77656, ts_mae = 5.72947
Epoch 355 time = 10.32, tr_rmse = 11.61219, valid_rmse = 9.11781, ts_rmse = 8.92091, tr_mae = 6.99658, valid_mae = 5.79693, ts_mae = 5.75238
Epoch 356 time = 10.06, tr_rmse = 11.60429, valid_rmse = 9.14490, ts_rmse = 8.95110, tr_mae = 6.99732, valid_mae = 5.81707, ts_mae = 5.77099
Epoch 357 time = 10.30, tr_rmse = 11.59966, valid_rmse = 9.13700, ts_rmse = 8.92636, tr_mae = 6.97458, valid_mae = 5.79384, ts_mae = 5.74697
Epoch 358 time = 10.26, tr_rmse = 11.60331, valid_rmse = 9.09249, ts_rmse = 8.90257, tr_mae = 7.02485, valid_mae = 5.79202, ts_mae = 5.75205
Epoch 359 time = 10.19, tr_rmse = 11.60498, valid_rmse = 9.12691, ts_rmse = 8.90914, tr_mae = 6.97200, valid_mae = 5.78238, ts_mae = 5.73192
Epoch 360 time = 10.08, tr_rmse = 11.64920, valid_rmse = 9.14510, ts_rmse = 8.95098, tr_mae = 7.10330, valid_mae = 5.84775, ts_mae = 5.80240
Epoch 361 time = 10.19, tr_rmse = 11.67283, valid_rmse = 9.13117, ts_rmse = 8.95670, tr_mae = 7.15367, valid_mae = 5.86911, ts_mae = 5.82311
Epoch 362 time = 9.95, tr_rmse = 11.61620, valid_rmse = 9.11837, ts_rmse = 8.91115, tr_mae = 7.04744, valid_mae = 5.81391, ts_mae = 5.76509
Epoch 363 time = 9.99, tr_rmse = 11.60914, valid_rmse = 9.09927, ts_rmse = 8.90572, tr_mae = 7.04601, valid_mae = 5.80139, ts_mae = 5.75608
Epoch 364 time = 9.93, tr_rmse = 11.59973, valid_rmse = 9.12116, ts_rmse = 8.90586, tr_mae = 6.98742, valid_mae = 5.78771, ts_mae = 5.73846
Epoch 365 time = 9.69, tr_rmse = 11.61782, valid_rmse = 9.12681, ts_rmse = 8.92908, tr_mae = 7.04828, valid_mae = 5.81816, ts_mae = 5.76872
Epoch 366 time = 11.37, tr_rmse = 11.60660, valid_rmse = 9.10156, ts_rmse = 8.90219, tr_mae = 7.03442, valid_mae = 5.79652, ts_mae = 5.75117
Epoch 367 time = 11.39, tr_rmse = 11.62511, valid_rmse = 9.14811, ts_rmse = 8.95199, tr_mae = 7.03533, valid_mae = 5.82992, ts_mae = 5.77870
Epoch 368 time = 10.54, tr_rmse = 11.60309, valid_rmse = 9.09472, ts_rmse = 8.89800, tr_mae = 7.03277, valid_mae = 5.79722, ts_mae = 5.75231
Epoch 369 time = 10.78, tr_rmse = 11.64773, valid_rmse = 9.15399, ts_rmse = 8.96218, tr_mae = 7.08016, valid_mae = 5.84245, ts_mae = 5.79252
Epoch 370 time = 10.90, tr_rmse = 11.64174, valid_rmse = 9.12072, ts_rmse = 8.92969, tr_mae = 7.08602, valid_mae = 5.82883, ts_mae = 5.77774
Epoch 371 time = 11.51, tr_rmse = 11.58940, valid_rmse = 9.08690, ts_rmse = 8.89475, tr_mae = 6.99022, valid_mae = 5.77266, ts_mae = 5.72955
Epoch 372 time = 14.32, tr_rmse = 11.66345, valid_rmse = 9.12259, ts_rmse = 8.94343, tr_mae = 7.16885, valid_mae = 5.87074, ts_mae = 5.82651
Epoch 373 time = 12.52, tr_rmse = 11.59399, valid_rmse = 9.08642, ts_rmse = 8.88831, tr_mae = 7.03117, valid_mae = 5.79115, ts_mae = 5.74712
Epoch 374 time = 14.24, tr_rmse = 11.60183, valid_rmse = 9.13371, ts_rmse = 8.93763, tr_mae = 7.00778, valid_mae = 5.81443, ts_mae = 5.76414
Epoch 375 time = 12.47, tr_rmse = 11.58708, valid_rmse = 9.11789, ts_rmse = 8.90871, tr_mae = 6.97218, valid_mae = 5.77928, ts_mae = 5.73658
Epoch 376 time = 11.46, tr_rmse = 11.61762, valid_rmse = 9.19828, ts_rmse = 8.99767, tr_mae = 6.98947, valid_mae = 5.86163, ts_mae = 5.80808
Epoch 377 time = 11.29, tr_rmse = 11.58487, valid_rmse = 9.12182, ts_rmse = 8.91004, tr_mae = 6.97428, valid_mae = 5.78748, ts_mae = 5.73594
Epoch 378 time = 11.19, tr_rmse = 11.57604, valid_rmse = 9.07869, ts_rmse = 8.87690, tr_mae = 7.00407, valid_mae = 5.77715, ts_mae = 5.73373
Epoch 379 time = 11.28, tr_rmse = 11.58069, valid_rmse = 9.11015, ts_rmse = 8.89862, tr_mae = 6.99905, valid_mae = 5.78936, ts_mae = 5.73829
Epoch 380 time = 11.09, tr_rmse = 11.62475, valid_rmse = 9.17438, ts_rmse = 8.95516, tr_mae = 6.97236, valid_mae = 5.82065, ts_mae = 5.76983
Epoch 381 time = 10.55, tr_rmse = 11.58400, valid_rmse = 9.12749, ts_rmse = 8.91437, tr_mae = 6.96351, valid_mae = 5.78524, ts_mae = 5.73730
Epoch 382 time = 10.50, tr_rmse = 11.59269, valid_rmse = 9.08617, ts_rmse = 8.90498, tr_mae = 7.06289, valid_mae = 5.81268, ts_mae = 5.76759
Epoch 383 time = 10.60, tr_rmse = 11.61432, valid_rmse = 9.10702, ts_rmse = 8.93079, tr_mae = 7.07174, valid_mae = 5.82024, ts_mae = 5.77541
Epoch 384 time = 10.74, tr_rmse = 11.58798, valid_rmse = 9.12528, ts_rmse = 8.92435, tr_mae = 6.96088, valid_mae = 5.78343, ts_mae = 5.73615
Epoch 385 time = 11.20, tr_rmse = 11.60105, valid_rmse = 9.14060, ts_rmse = 8.94376, tr_mae = 7.04677, valid_mae = 5.83385, ts_mae = 5.78304
Epoch 386 time = 11.65, tr_rmse = 11.57512, valid_rmse = 9.09201, ts_rmse = 8.90648, tr_mae = 6.99978, valid_mae = 5.78216, ts_mae = 5.74040
Epoch 387 time = 11.30, tr_rmse = 11.57994, valid_rmse = 9.10749, ts_rmse = 8.91088, tr_mae = 6.97776, valid_mae = 5.78366, ts_mae = 5.73372
Epoch 388 time = 11.34, tr_rmse = 11.61029, valid_rmse = 9.20682, ts_rmse = 8.99296, tr_mae = 6.96532, valid_mae = 5.85544, ts_mae = 5.80021
Epoch 389 time = 10.97, tr_rmse = 11.56845, valid_rmse = 9.09158, ts_rmse = 8.87982, tr_mae = 6.98634, valid_mae = 5.77395, ts_mae = 5.72354
Epoch 390 time = 10.75, tr_rmse = 11.56432, valid_rmse = 9.07254, ts_rmse = 8.88381, tr_mae = 6.99743, valid_mae = 5.77232, ts_mae = 5.73373
Epoch 391 time = 12.03, tr_rmse = 11.57096, valid_rmse = 9.11113, ts_rmse = 8.90015, tr_mae = 6.96548, valid_mae = 5.77928, ts_mae = 5.72784
Epoch 392 time = 11.12, tr_rmse = 11.56896, valid_rmse = 9.08221, ts_rmse = 8.87262, tr_mae = 7.02144, valid_mae = 5.79007, ts_mae = 5.73741
Epoch 393 time = 11.67, tr_rmse = 11.57111, valid_rmse = 9.08619, ts_rmse = 8.89895, tr_mae = 7.02125, valid_mae = 5.78923, ts_mae = 5.74777
Epoch 394 time = 11.22, tr_rmse = 11.55719, valid_rmse = 9.09749, ts_rmse = 8.89835, tr_mae = 6.99011, valid_mae = 5.78102, ts_mae = 5.73263
Epoch 395 time = 12.40, tr_rmse = 11.64022, valid_rmse = 9.12859, ts_rmse = 8.94007, tr_mae = 7.22637, valid_mae = 5.93725, ts_mae = 5.89365
Epoch 396 time = 11.07, tr_rmse = 11.60647, valid_rmse = 9.09737, ts_rmse = 8.92651, tr_mae = 7.08862, valid_mae = 5.82346, ts_mae = 5.77935
Epoch 397 time = 10.93, tr_rmse = 11.57358, valid_rmse = 9.09470, ts_rmse = 8.90988, tr_mae = 7.00113, valid_mae = 5.78009, ts_mae = 5.73656
Epoch 398 time = 11.55, tr_rmse = 11.56106, valid_rmse = 9.08252, ts_rmse = 8.88775, tr_mae = 6.99482, valid_mae = 5.77609, ts_mae = 5.72807
Epoch 399 time = 14.18, tr_rmse = 11.59602, valid_rmse = 9.21584, ts_rmse = 9.01448, tr_mae = 6.96296, valid_mae = 5.86078, ts_mae = 5.81031
Epoch 400 time = 12.72, tr_rmse = 11.56065, valid_rmse = 9.08293, ts_rmse = 8.91120, tr_mae = 6.99534, valid_mae = 5.78094, ts_mae = 5.73949
Epoch 401 time = 11.31, tr_rmse = 11.58209, valid_rmse = 9.10751, ts_rmse = 8.93677, tr_mae = 7.03965, valid_mae = 5.80702, ts_mae = 5.76790
Epoch 402 time = 10.89, tr_rmse = 11.56422, valid_rmse = 9.11846, ts_rmse = 8.92860, tr_mae = 6.98464, valid_mae = 5.80181, ts_mae = 5.75043
Epoch 403 time = 10.83, tr_rmse = 11.56557, valid_rmse = 9.11483, ts_rmse = 8.91433, tr_mae = 6.97800, valid_mae = 5.78518, ts_mae = 5.73537
Epoch 404 time = 10.80, tr_rmse = 11.55746, valid_rmse = 9.06090, ts_rmse = 8.88553, tr_mae = 7.03165, valid_mae = 5.78856, ts_mae = 5.74572
Epoch 405 time = 11.08, tr_rmse = 11.58410, valid_rmse = 9.10731, ts_rmse = 8.92278, tr_mae = 7.05905, valid_mae = 5.81948, ts_mae = 5.77103
Epoch 406 time = 10.15, tr_rmse = 11.55347, valid_rmse = 9.12514, ts_rmse = 8.93761, tr_mae = 6.95808, valid_mae = 5.79070, ts_mae = 5.74520
Epoch 407 time = 9.96, tr_rmse = 11.56875, valid_rmse = 9.14350, ts_rmse = 8.95514, tr_mae = 6.97868, valid_mae = 5.81390, ts_mae = 5.76151
Epoch 408 time = 9.94, tr_rmse = 11.56955, valid_rmse = 9.08532, ts_rmse = 8.90998, tr_mae = 7.04306, valid_mae = 5.80024, ts_mae = 5.75836
Epoch 409 time = 9.95, tr_rmse = 11.56891, valid_rmse = 9.10711, ts_rmse = 8.91467, tr_mae = 7.01423, valid_mae = 5.80416, ts_mae = 5.74956
Epoch 410 time = 9.96, tr_rmse = 11.53694, valid_rmse = 9.06980, ts_rmse = 8.88129, tr_mae = 6.99217, valid_mae = 5.77098, ts_mae = 5.72859
Epoch 411 time = 10.20, tr_rmse = 11.55798, valid_rmse = 9.07372, ts_rmse = 8.87282, tr_mae = 6.99655, valid_mae = 5.77374, ts_mae = 5.72231
Epoch 412 time = 9.93, tr_rmse = 11.54878, valid_rmse = 9.06272, ts_rmse = 8.87999, tr_mae = 7.00977, valid_mae = 5.77950, ts_mae = 5.73503
Epoch 413 time = 9.98, tr_rmse = 11.55972, valid_rmse = 9.10757, ts_rmse = 8.92924, tr_mae = 7.00018, valid_mae = 5.79749, ts_mae = 5.75401
Epoch 414 time = 10.56, tr_rmse = 11.61993, valid_rmse = 9.10381, ts_rmse = 8.94597, tr_mae = 7.16075, valid_mae = 5.86395, ts_mae = 5.82455
Epoch 415 time = 10.58, tr_rmse = 11.54527, valid_rmse = 9.11755, ts_rmse = 8.93098, tr_mae = 6.97140, valid_mae = 5.78924, ts_mae = 5.74271
Epoch 416 time = 10.28, tr_rmse = 11.55443, valid_rmse = 9.10258, ts_rmse = 8.92358, tr_mae = 6.99447, valid_mae = 5.79522, ts_mae = 5.74772
Epoch 417 time = 10.33, tr_rmse = 11.55140, valid_rmse = 9.08002, ts_rmse = 8.89349, tr_mae = 7.03159, valid_mae = 5.79364, ts_mae = 5.74496
Epoch 418 time = 10.25, tr_rmse = 11.54852, valid_rmse = 9.07297, ts_rmse = 8.90516, tr_mae = 7.00739, valid_mae = 5.78112, ts_mae = 5.74256
Epoch 419 time = 10.09, tr_rmse = 11.57266, valid_rmse = 9.16012, ts_rmse = 8.95855, tr_mae = 6.97074, valid_mae = 5.82309, ts_mae = 5.76090
Epoch 420 time = 9.95, tr_rmse = 11.54715, valid_rmse = 9.06937, ts_rmse = 8.88687, tr_mae = 7.01475, valid_mae = 5.78085, ts_mae = 5.73335
Epoch 421 time = 9.96, tr_rmse = 11.54472, valid_rmse = 9.08849, ts_rmse = 8.90760, tr_mae = 7.00107, valid_mae = 5.78444, ts_mae = 5.73819
Epoch 422 time = 10.00, tr_rmse = 11.55200, valid_rmse = 9.10293, ts_rmse = 8.91820, tr_mae = 6.98664, valid_mae = 5.78724, ts_mae = 5.73604
Epoch 423 time = 9.95, tr_rmse = 11.54836, valid_rmse = 9.08232, ts_rmse = 8.87762, tr_mae = 6.97583, valid_mae = 5.76487, ts_mae = 5.71150
Epoch 424 time = 9.92, tr_rmse = 11.56578, valid_rmse = 9.14334, ts_rmse = 8.94480, tr_mae = 6.95630, valid_mae = 5.81592, ts_mae = 5.76483
Epoch 425 time = 9.96, tr_rmse = 11.54268, valid_rmse = 9.09754, ts_rmse = 8.91410, tr_mae = 6.98757, valid_mae = 5.78859, ts_mae = 5.74142
Epoch 426 time = 9.97, tr_rmse = 11.55215, valid_rmse = 9.07502, ts_rmse = 8.90204, tr_mae = 7.03499, valid_mae = 5.79321, ts_mae = 5.74959
Epoch 427 time = 10.02, tr_rmse = 11.54055, valid_rmse = 9.07330, ts_rmse = 8.90225, tr_mae = 6.99203, valid_mae = 5.77038, ts_mae = 5.73209
Epoch 428 time = 10.04, tr_rmse = 11.56176, valid_rmse = 9.13251, ts_rmse = 8.93598, tr_mae = 6.94204, valid_mae = 5.77512, ts_mae = 5.72781
Epoch 429 time = 10.28, tr_rmse = 11.52427, valid_rmse = 9.07034, ts_rmse = 8.87631, tr_mae = 6.94847, valid_mae = 5.75419, ts_mae = 5.70584
Epoch 430 time = 10.09, tr_rmse = 11.57299, valid_rmse = 9.11058, ts_rmse = 8.94649, tr_mae = 7.05667, valid_mae = 5.81737, ts_mae = 5.77203
Epoch 431 time = 10.08, tr_rmse = 11.55348, valid_rmse = 9.17225, ts_rmse = 8.98311, tr_mae = 6.95692, valid_mae = 5.83426, ts_mae = 5.78272
Epoch 432 time = 10.15, tr_rmse = 11.53248, valid_rmse = 9.09983, ts_rmse = 8.92240, tr_mae = 6.98447, valid_mae = 5.79033, ts_mae = 5.73736
Epoch 433 time = 10.02, tr_rmse = 11.51622, valid_rmse = 9.05400, ts_rmse = 8.87430, tr_mae = 6.99462, valid_mae = 5.77166, ts_mae = 5.72485
Epoch 434 time = 9.98, tr_rmse = 11.53498, valid_rmse = 9.07923, ts_rmse = 8.88721, tr_mae = 6.97028, valid_mae = 5.76661, ts_mae = 5.71571
Epoch 435 time = 10.12, tr_rmse = 11.56259, valid_rmse = 9.07612, ts_rmse = 8.90671, tr_mae = 7.06113, valid_mae = 5.80030, ts_mae = 5.75949
Epoch 436 time = 10.01, tr_rmse = 11.56371, valid_rmse = 9.06734, ts_rmse = 8.90860, tr_mae = 7.05190, valid_mae = 5.79514, ts_mae = 5.75305
Epoch 437 time = 10.05, tr_rmse = 11.56021, valid_rmse = 9.15960, ts_rmse = 8.96592, tr_mae = 6.94833, valid_mae = 5.81482, ts_mae = 5.76439
Epoch 438 time = 9.99, tr_rmse = 11.55762, valid_rmse = 9.07363, ts_rmse = 8.91374, tr_mae = 7.07455, valid_mae = 5.80894, ts_mae = 5.76607
Epoch 439 time = 10.00, tr_rmse = 11.51694, valid_rmse = 9.05464, ts_rmse = 8.87417, tr_mae = 6.99610, valid_mae = 5.76882, ts_mae = 5.72370
Epoch 440 time = 9.98, tr_rmse = 11.52522, valid_rmse = 9.06258, ts_rmse = 8.88271, tr_mae = 7.02773, valid_mae = 5.78745, ts_mae = 5.74077
Epoch 441 time = 10.01, tr_rmse = 11.53125, valid_rmse = 9.07261, ts_rmse = 8.90521, tr_mae = 7.03626, valid_mae = 5.79579, ts_mae = 5.74623
Epoch 442 time = 9.95, tr_rmse = 11.54047, valid_rmse = 9.11507, ts_rmse = 8.93359, tr_mae = 7.00177, valid_mae = 5.79922, ts_mae = 5.74871
Epoch 443 time = 9.82, tr_rmse = 11.53218, valid_rmse = 9.05381, ts_rmse = 8.87712, tr_mae = 6.99153, valid_mae = 5.76137, ts_mae = 5.71688
Epoch 444 time = 9.88, tr_rmse = 11.55138, valid_rmse = 9.13432, ts_rmse = 8.94754, tr_mae = 6.94366, valid_mae = 5.78546, ts_mae = 5.73612
Epoch 445 time = 10.05, tr_rmse = 11.52961, valid_rmse = 9.14743, ts_rmse = 8.94244, tr_mae = 6.93462, valid_mae = 5.80382, ts_mae = 5.75146
Epoch 446 time = 10.73, tr_rmse = 11.52585, valid_rmse = 9.12754, ts_rmse = 8.95051, tr_mae = 6.97233, valid_mae = 5.80617, ts_mae = 5.75387
Epoch 447 time = 10.37, tr_rmse = 11.50645, valid_rmse = 9.07918, ts_rmse = 8.89777, tr_mae = 6.96248, valid_mae = 5.77783, ts_mae = 5.72141
Epoch 448 time = 10.13, tr_rmse = 11.54404, valid_rmse = 9.15617, ts_rmse = 8.96324, tr_mae = 6.93352, valid_mae = 5.80888, ts_mae = 5.76199
Epoch 449 time = 10.07, tr_rmse = 11.51997, valid_rmse = 9.10126, ts_rmse = 8.92056, tr_mae = 6.94079, valid_mae = 5.77966, ts_mae = 5.72751
Epoch 450 time = 10.01, tr_rmse = 11.50479, valid_rmse = 9.07365, ts_rmse = 8.89522, tr_mae = 6.97760, valid_mae = 5.77264, ts_mae = 5.72791
Epoch 451 time = 9.88, tr_rmse = 11.53828, valid_rmse = 9.14021, ts_rmse = 8.97261, tr_mae = 6.96691, valid_mae = 5.81817, ts_mae = 5.76816
Epoch 452 time = 9.91, tr_rmse = 11.52201, valid_rmse = 9.08947, ts_rmse = 8.90104, tr_mae = 6.93882, valid_mae = 5.76391, ts_mae = 5.71656
Epoch 453 time = 9.96, tr_rmse = 11.48868, valid_rmse = 9.08300, ts_rmse = 8.89423, tr_mae = 6.93796, valid_mae = 5.76839, ts_mae = 5.71520
Epoch 454 time = 9.89, tr_rmse = 11.50903, valid_rmse = 9.09706, ts_rmse = 8.90277, tr_mae = 6.92072, valid_mae = 5.76005, ts_mae = 5.71312
Epoch 455 time = 9.96, tr_rmse = 11.57293, valid_rmse = 9.08832, ts_rmse = 8.92192, tr_mae = 7.11080, valid_mae = 5.83094, ts_mae = 5.78500
Epoch 456 time = 9.82, tr_rmse = 11.52132, valid_rmse = 9.05844, ts_rmse = 8.89521, tr_mae = 7.01418, valid_mae = 5.77827, ts_mae = 5.73614
Epoch 457 time = 10.04, tr_rmse = 11.51261, valid_rmse = 9.08273, ts_rmse = 8.90728, tr_mae = 6.94333, valid_mae = 5.76583, ts_mae = 5.72144
Epoch 458 time = 10.76, tr_rmse = 11.54825, valid_rmse = 9.09324, ts_rmse = 8.93115, tr_mae = 7.02842, valid_mae = 5.79944, ts_mae = 5.75221
Epoch 459 time = 10.10, tr_rmse = 11.52317, valid_rmse = 9.11108, ts_rmse = 8.94689, tr_mae = 6.96231, valid_mae = 5.79647, ts_mae = 5.74863
Epoch 460 time = 10.02, tr_rmse = 11.55128, valid_rmse = 9.10215, ts_rmse = 8.93011, tr_mae = 7.05737, valid_mae = 5.81168, ts_mae = 5.76628
Epoch 461 time = 10.03, tr_rmse = 11.53679, valid_rmse = 9.14893, ts_rmse = 8.95553, tr_mae = 6.92432, valid_mae = 5.80405, ts_mae = 5.74742
Epoch 462 time = 9.88, tr_rmse = 11.53137, valid_rmse = 9.14797, ts_rmse = 8.96908, tr_mae = 6.94734, valid_mae = 5.81572, ts_mae = 5.76560
Epoch 463 time = 10.02, tr_rmse = 11.59019, valid_rmse = 9.13835, ts_rmse = 8.98326, tr_mae = 7.08736, valid_mae = 5.83940, ts_mae = 5.79302
Epoch 464 time = 10.30, tr_rmse = 11.53681, valid_rmse = 9.15117, ts_rmse = 8.96970, tr_mae = 6.93235, valid_mae = 5.80163, ts_mae = 5.75045
Epoch 465 time = 9.81, tr_rmse = 11.53375, valid_rmse = 9.12756, ts_rmse = 8.94531, tr_mae = 6.98968, valid_mae = 5.80590, ts_mae = 5.75284
Epoch 466 time = 9.80, tr_rmse = 11.51414, valid_rmse = 9.10183, ts_rmse = 8.93793, tr_mae = 6.97849, valid_mae = 5.78393, ts_mae = 5.73417
Epoch 467 time = 9.90, tr_rmse = 11.54028, valid_rmse = 9.08465, ts_rmse = 8.91298, tr_mae = 7.05642, valid_mae = 5.80669, ts_mae = 5.75595
Epoch 468 time = 9.90, tr_rmse = 11.53910, valid_rmse = 9.11801, ts_rmse = 8.95253, tr_mae = 7.01193, valid_mae = 5.80341, ts_mae = 5.75310
Epoch 469 time = 9.84, tr_rmse = 11.55686, valid_rmse = 9.11415, ts_rmse = 8.95174, tr_mae = 7.05679, valid_mae = 5.81270, ts_mae = 5.76753
Epoch 470 time = 12.37, tr_rmse = 11.50016, valid_rmse = 9.06381, ts_rmse = 8.89815, tr_mae = 6.99552, valid_mae = 5.77272, ts_mae = 5.72541
Epoch 471 time = 10.28, tr_rmse = 11.50142, valid_rmse = 9.05945, ts_rmse = 8.89468, tr_mae = 6.98295, valid_mae = 5.76418, ts_mae = 5.71887
Epoch 472 time = 11.37, tr_rmse = 11.51416, valid_rmse = 9.14902, ts_rmse = 8.97109, tr_mae = 6.92760, valid_mae = 5.80730, ts_mae = 5.75795
Epoch 473 time = 11.10, tr_rmse = 11.57685, valid_rmse = 9.10754, ts_rmse = 8.94786, tr_mae = 7.13039, valid_mae = 5.85051, ts_mae = 5.80362
Epoch 474 time = 11.38, tr_rmse = 11.55021, valid_rmse = 9.21998, ts_rmse = 9.03010, tr_mae = 6.94139, valid_mae = 5.86445, ts_mae = 5.81362
Epoch 475 time = 11.23, tr_rmse = 11.53562, valid_rmse = 9.13785, ts_rmse = 8.95780, tr_mae = 6.93532, valid_mae = 5.78807, ts_mae = 5.74182
Epoch 476 time = 10.79, tr_rmse = 11.54773, valid_rmse = 9.10645, ts_rmse = 8.95858, tr_mae = 7.05545, valid_mae = 5.81359, ts_mae = 5.76995
Epoch 477 time = 11.40, tr_rmse = 11.53072, valid_rmse = 9.11324, ts_rmse = 8.94562, tr_mae = 6.96452, valid_mae = 5.78782, ts_mae = 5.73936
Epoch 478 time = 9.92, tr_rmse = 11.49202, valid_rmse = 9.04427, ts_rmse = 8.87238, tr_mae = 6.95566, valid_mae = 5.74822, ts_mae = 5.70224
Epoch 479 time = 9.96, tr_rmse = 11.49439, valid_rmse = 9.10278, ts_rmse = 8.94243, tr_mae = 6.93632, valid_mae = 5.77601, ts_mae = 5.72989
Epoch 480 time = 10.42, tr_rmse = 11.50256, valid_rmse = 9.15609, ts_rmse = 8.97816, tr_mae = 6.93190, valid_mae = 5.81211, ts_mae = 5.76043
Epoch 481 time = 10.28, tr_rmse = 11.50888, valid_rmse = 9.15371, ts_rmse = 8.96821, tr_mae = 6.93789, valid_mae = 5.81260, ts_mae = 5.75491
Epoch 482 time = 10.26, tr_rmse = 11.51814, valid_rmse = 9.14122, ts_rmse = 8.95666, tr_mae = 6.95613, valid_mae = 5.80250, ts_mae = 5.74758
Epoch 483 time = 10.26, tr_rmse = 11.49796, valid_rmse = 9.05702, ts_rmse = 8.88706, tr_mae = 6.99531, valid_mae = 5.77182, ts_mae = 5.72551
Epoch 484 time = 10.45, tr_rmse = 11.54349, valid_rmse = 9.11820, ts_rmse = 8.96319, tr_mae = 7.05282, valid_mae = 5.82127, ts_mae = 5.77228
Epoch 485 time = 11.01, tr_rmse = 11.51899, valid_rmse = 9.10570, ts_rmse = 8.94737, tr_mae = 7.00139, valid_mae = 5.79387, ts_mae = 5.75018
Epoch 486 time = 12.42, tr_rmse = 11.49744, valid_rmse = 9.03344, ts_rmse = 8.85723, tr_mae = 7.00595, valid_mae = 5.76874, ts_mae = 5.72222
Epoch 487 time = 10.67, tr_rmse = 11.50855, valid_rmse = 9.09508, ts_rmse = 8.92663, tr_mae = 6.99368, valid_mae = 5.78810, ts_mae = 5.73341
Epoch 488 time = 10.76, tr_rmse = 11.48999, valid_rmse = 9.08221, ts_rmse = 8.90832, tr_mae = 6.96128, valid_mae = 5.76403, ts_mae = 5.71530
Epoch 489 time = 10.24, tr_rmse = 11.53612, valid_rmse = 9.09346, ts_rmse = 8.92953, tr_mae = 7.05112, valid_mae = 5.79973, ts_mae = 5.75331
Epoch 490 time = 10.17, tr_rmse = 11.54504, valid_rmse = 9.13523, ts_rmse = 8.98001, tr_mae = 7.03173, valid_mae = 5.81966, ts_mae = 5.77296
Epoch 491 time = 10.82, tr_rmse = 11.52385, valid_rmse = 9.16513, ts_rmse = 8.99429, tr_mae = 6.92570, valid_mae = 5.80949, ts_mae = 5.76463
Epoch 492 time = 11.13, tr_rmse = 11.48495, valid_rmse = 9.08084, ts_rmse = 8.92053, tr_mae = 6.95696, valid_mae = 5.76766, ts_mae = 5.72461
Epoch 493 time = 10.87, tr_rmse = 11.49542, valid_rmse = 9.13482, ts_rmse = 8.96021, tr_mae = 6.91927, valid_mae = 5.78481, ts_mae = 5.73755
Epoch 494 time = 11.08, tr_rmse = 11.48503, valid_rmse = 9.06856, ts_rmse = 8.87199, tr_mae = 6.97844, valid_mae = 5.77024, ts_mae = 5.70904
Epoch 495 time = 10.95, tr_rmse = 11.51078, valid_rmse = 9.06766, ts_rmse = 8.91761, tr_mae = 7.02634, valid_mae = 5.78856, ts_mae = 5.74497
Epoch 496 time = 11.00, tr_rmse = 11.51120, valid_rmse = 9.08197, ts_rmse = 8.91701, tr_mae = 7.02033, valid_mae = 5.78809, ts_mae = 5.73682
Epoch 497 time = 10.72, tr_rmse = 11.50802, valid_rmse = 9.07785, ts_rmse = 8.92076, tr_mae = 7.00157, valid_mae = 5.77855, ts_mae = 5.73279
Epoch 498 time = 11.28, tr_rmse = 11.47514, valid_rmse = 9.05457, ts_rmse = 8.90489, tr_mae = 6.97459, valid_mae = 5.76368, ts_mae = 5.71987
Epoch 499 time = 10.55, tr_rmse = 11.47407, valid_rmse = 9.10811, ts_rmse = 8.93017, tr_mae = 6.91098, valid_mae = 5.77407, ts_mae = 5.72312
Epoch 500 time = 10.72, tr_rmse = 11.48019, valid_rmse = 9.06698, ts_rmse = 8.89999, tr_mae = 6.98463, valid_mae = 5.77064, ts_mae = 5.72380
Epoch 501 time = 10.63, tr_rmse = 11.51511, valid_rmse = 9.18406, ts_rmse = 9.01645, tr_mae = 6.94419, valid_mae = 5.84293, ts_mae = 5.79235
Epoch 502 time = 10.23, tr_rmse = 11.49904, valid_rmse = 9.11410, ts_rmse = 8.94205, tr_mae = 6.98058, valid_mae = 5.78950, ts_mae = 5.73339
Epoch 503 time = 9.97, tr_rmse = 11.49992, valid_rmse = 9.08845, ts_rmse = 8.93180, tr_mae = 7.00282, valid_mae = 5.78366, ts_mae = 5.73717
Epoch 504 time = 10.01, tr_rmse = 11.48277, valid_rmse = 9.07495, ts_rmse = 8.91542, tr_mae = 6.98692, valid_mae = 5.77430, ts_mae = 5.72493
Epoch 505 time = 10.36, tr_rmse = 11.50328, valid_rmse = 9.13745, ts_rmse = 8.97183, tr_mae = 6.94428, valid_mae = 5.79923, ts_mae = 5.74984
Epoch 506 time = 10.59, tr_rmse = 11.46396, valid_rmse = 9.09733, ts_rmse = 8.92990, tr_mae = 6.90472, valid_mae = 5.76755, ts_mae = 5.71965
Epoch 507 time = 10.65, tr_rmse = 11.46511, valid_rmse = 9.09473, ts_rmse = 8.92671, tr_mae = 6.90839, valid_mae = 5.76548, ts_mae = 5.71986
Epoch 508 time = 10.69, tr_rmse = 11.51998, valid_rmse = 9.10378, ts_rmse = 8.94910, tr_mae = 7.05225, valid_mae = 5.80980, ts_mae = 5.75475
Epoch 509 time = 10.50, tr_rmse = 11.50564, valid_rmse = 9.07372, ts_rmse = 8.92258, tr_mae = 7.03297, valid_mae = 5.79057, ts_mae = 5.74820
Epoch 510 time = 11.07, tr_rmse = 11.49493, valid_rmse = 9.08058, ts_rmse = 8.92364, tr_mae = 7.00196, valid_mae = 5.78525, ts_mae = 5.73371
Epoch 511 time = 11.09, tr_rmse = 11.50483, valid_rmse = 9.09950, ts_rmse = 8.92552, tr_mae = 6.93104, valid_mae = 5.76273, ts_mae = 5.71908
Epoch 512 time = 11.94, tr_rmse = 11.45531, valid_rmse = 9.07946, ts_rmse = 8.91165, tr_mae = 6.92608, valid_mae = 5.75338, ts_mae = 5.70528
Epoch 513 time = 10.22, tr_rmse = 11.48489, valid_rmse = 9.11252, ts_rmse = 8.94841, tr_mae = 6.93238, valid_mae = 5.77046, ts_mae = 5.72651
Epoch 514 time = 10.07, tr_rmse = 11.50275, valid_rmse = 9.07553, ts_rmse = 8.92614, tr_mae = 7.04305, valid_mae = 5.79836, ts_mae = 5.75074
Epoch 515 time = 10.17, tr_rmse = 11.51894, valid_rmse = 9.10206, ts_rmse = 8.93804, tr_mae = 7.07202, valid_mae = 5.81730, ts_mae = 5.76724
Epoch 516 time = 10.58, tr_rmse = 11.46800, valid_rmse = 9.08140, ts_rmse = 8.92094, tr_mae = 6.93209, valid_mae = 5.75978, ts_mae = 5.71178
Epoch 517 time = 10.53, tr_rmse = 11.51993, valid_rmse = 9.09443, ts_rmse = 8.93004, tr_mae = 7.04300, valid_mae = 5.80088, ts_mae = 5.75054
Epoch 518 time = 10.65, tr_rmse = 11.49589, valid_rmse = 9.12466, ts_rmse = 8.97036, tr_mae = 6.97687, valid_mae = 5.79813, ts_mae = 5.74435
Epoch 519 time = 10.44, tr_rmse = 11.46360, valid_rmse = 9.07331, ts_rmse = 8.91871, tr_mae = 6.92846, valid_mae = 5.75713, ts_mae = 5.71255
Epoch 520 time = 10.57, tr_rmse = 11.49312, valid_rmse = 9.19187, ts_rmse = 9.02933, tr_mae = 6.93010, valid_mae = 5.85131, ts_mae = 5.80241
Epoch 521 time = 10.70, tr_rmse = 11.48878, valid_rmse = 9.09875, ts_rmse = 8.92711, tr_mae = 6.96240, valid_mae = 5.77075, ts_mae = 5.71427
Epoch 522 time = 10.64, tr_rmse = 11.47591, valid_rmse = 9.07451, ts_rmse = 8.91770, tr_mae = 6.98700, valid_mae = 5.77282, ts_mae = 5.72475
Epoch 523 time = 10.64, tr_rmse = 11.50631, valid_rmse = 9.12487, ts_rmse = 8.95083, tr_mae = 7.00473, valid_mae = 5.80799, ts_mae = 5.75271
Epoch 524 time = 10.39, tr_rmse = 11.44311, valid_rmse = 9.06564, ts_rmse = 8.88793, tr_mae = 6.92156, valid_mae = 5.74461, ts_mae = 5.69273
Epoch 525 time = 10.75, tr_rmse = 11.46499, valid_rmse = 9.05991, ts_rmse = 8.91849, tr_mae = 6.98056, valid_mae = 5.76736, ts_mae = 5.72461
Epoch 526 time = 10.68, tr_rmse = 11.46696, valid_rmse = 9.08043, ts_rmse = 8.91457, tr_mae = 6.93939, valid_mae = 5.76283, ts_mae = 5.70991
Epoch 527 time = 10.05, tr_rmse = 11.44879, valid_rmse = 9.03688, ts_rmse = 8.87894, tr_mae = 6.92202, valid_mae = 5.73328, ts_mae = 5.69254
Epoch 528 time = 10.02, tr_rmse = 11.48192, valid_rmse = 9.12036, ts_rmse = 8.96594, tr_mae = 6.92520, valid_mae = 5.77903, ts_mae = 5.73163
Epoch 529 time = 9.96, tr_rmse = 11.48721, valid_rmse = 9.09519, ts_rmse = 8.93207, tr_mae = 7.00964, valid_mae = 5.78968, ts_mae = 5.74143
Epoch 530 time = 9.97, tr_rmse = 11.44447, valid_rmse = 9.07613, ts_rmse = 8.90220, tr_mae = 6.89951, valid_mae = 5.74910, ts_mae = 5.69894
Epoch 531 time = 9.98, tr_rmse = 11.43485, valid_rmse = 9.05776, ts_rmse = 8.91426, tr_mae = 6.91537, valid_mae = 5.74008, ts_mae = 5.70222
Epoch 532 time = 10.07, tr_rmse = 11.46551, valid_rmse = 9.07569, ts_rmse = 8.92037, tr_mae = 6.94383, valid_mae = 5.75631, ts_mae = 5.70956
Epoch 533 time = 10.40, tr_rmse = 11.46672, valid_rmse = 9.06770, ts_rmse = 8.90877, tr_mae = 6.99181, valid_mae = 5.77048, ts_mae = 5.72456
Epoch 534 time = 10.88, tr_rmse = 11.47315, valid_rmse = 9.12321, ts_rmse = 8.97373, tr_mae = 6.93260, valid_mae = 5.78706, ts_mae = 5.73825
Epoch 535 time = 10.90, tr_rmse = 11.63434, valid_rmse = 9.17745, ts_rmse = 9.02990, tr_mae = 7.26815, valid_mae = 5.94257, ts_mae = 5.89426
Epoch 536 time = 10.74, tr_rmse = 11.47390, valid_rmse = 9.08887, ts_rmse = 8.93306, tr_mae = 6.97784, valid_mae = 5.77402, ts_mae = 5.72324
Epoch 537 time = 10.92, tr_rmse = 11.49091, valid_rmse = 9.09548, ts_rmse = 8.95396, tr_mae = 7.00900, valid_mae = 5.78397, ts_mae = 5.74142
Epoch 538 time = 10.48, tr_rmse = 11.46464, valid_rmse = 9.09118, ts_rmse = 8.92964, tr_mae = 6.96572, valid_mae = 5.77054, ts_mae = 5.72069
Epoch 539 time = 10.38, tr_rmse = 11.43855, valid_rmse = 9.05069, ts_rmse = 8.89081, tr_mae = 6.94980, valid_mae = 5.75258, ts_mae = 5.70305
Epoch 540 time = 9.93, tr_rmse = 11.47437, valid_rmse = 9.13123, ts_rmse = 8.97898, tr_mae = 6.92507, valid_mae = 5.78423, ts_mae = 5.73684
Epoch 541 time = 10.28, tr_rmse = 11.44979, valid_rmse = 9.06895, ts_rmse = 8.90646, tr_mae = 6.96528, valid_mae = 5.76316, ts_mae = 5.71335
Epoch 542 time = 10.16, tr_rmse = 11.44940, valid_rmse = 9.08277, ts_rmse = 8.92877, tr_mae = 6.92456, valid_mae = 5.75757, ts_mae = 5.71299
Epoch 543 time = 10.62, tr_rmse = 11.52503, valid_rmse = 9.09490, ts_rmse = 8.95456, tr_mae = 7.09562, valid_mae = 5.82450, ts_mae = 5.78196
Epoch 544 time = 10.95, tr_rmse = 11.46833, valid_rmse = 9.13569, ts_rmse = 8.98983, tr_mae = 6.93403, valid_mae = 5.80207, ts_mae = 5.74978
Epoch 545 time = 11.14, tr_rmse = 11.41832, valid_rmse = 9.04878, ts_rmse = 8.87690, tr_mae = 6.92607, valid_mae = 5.74344, ts_mae = 5.69303
Epoch 546 time = 10.98, tr_rmse = 11.43990, valid_rmse = 9.08991, ts_rmse = 8.93429, tr_mae = 6.90384, valid_mae = 5.76197, ts_mae = 5.71357
%%%% Output: error
---------------------------------------------------------------------------
KeyboardInterrupt Traceback (most recent call last)
<ipython-input-114-2113d1b2072d> in <module>
35 optimizer.zero_grad()
36 dst_net.train()
---> 37 outputs = dst_net(x)
38 # loss = loss_f(outputs*torch.tensor(np.arange(1, 13)), y*torch.tensor(np.arange(1, 13))) #+ torch.sqrt(loss_mse(outputs, y) + 0.0000001)# * (1 + torch.randn(y.shape).to(device) * 0.01))
39 loss = loss_f(outputs, y) #+ torch.sqrt(loss_mse(outputs, y) + 0.0000001)# * (1 + torch.randn(y.shape).to(device) * 0.01))
~/miniconda3/envs/dst/lib/python3.7/site-packages/torch/nn/modules/module.py in __call__(self, *input, **kwargs)
539 result = self._slow_forward(*input, **kwargs)
540 else:
--> 541 result = self.forward(*input, **kwargs)
542 for hook in self._forward_hooks.values():
543 hook_result = hook(self, input, result)
<ipython-input-111-0123f353083b> in forward(self, x0)
31 self.hidden = self.init_hidden(x0.size(0))
32
---> 33 x = self.lstm(x0, self.hidden)[0].reshape(x0.shape[0], -1)
34 x = self.bn1(x)
35 # x = F.relu(x)
~/miniconda3/envs/dst/lib/python3.7/site-packages/torch/nn/modules/module.py in __call__(self, *input, **kwargs)
539 result = self._slow_forward(*input, **kwargs)
540 else:
--> 541 result = self.forward(*input, **kwargs)
542 for hook in self._forward_hooks.values():
543 hook_result = hook(self, input, result)
~/miniconda3/envs/dst/lib/python3.7/site-packages/torch/nn/modules/rnn.py in forward(self, input, hx)
562 return self.forward_packed(input, hx)
563 else:
--> 564 return self.forward_tensor(input, hx)
565
566
~/miniconda3/envs/dst/lib/python3.7/site-packages/torch/nn/modules/rnn.py in forward_tensor(self, input, hx)
541 unsorted_indices = None
542
--> 543 output, hidden = self.forward_impl(input, hx, batch_sizes, max_batch_size, sorted_indices)
544
545 return output, self.permute_hidden(hidden, unsorted_indices)
~/miniconda3/envs/dst/lib/python3.7/site-packages/torch/nn/modules/rnn.py in forward_impl(self, input, hx, batch_sizes, max_batch_size, sorted_indices)
524 if batch_sizes is None:
525 result = _VF.lstm(input, hx, self._get_flat_weights(), self.bias, self.num_layers,
--> 526 self.dropout, self.training, self.bidirectional, self.batch_first)
527 else:
528 result = _VF.lstm(input, batch_sizes, hx, self._get_flat_weights(), self.bias,
KeyboardInterrupt:
%% Cell type:code id: tags:
```
python
plt
.
figure
(
figsize
=
(
12
,
8
))
plt
.
plot
(
history_tr
[:,
0
],
alpha
=
0.5
,
label
=
'train'
)
plt
.
plot
(
history_valid
[:,
0
],
alpha
=
0.5
,
label
=
'validation'
)
plt
.
plot
(
history_ts
[:,
0
],
alpha
=
0.5
,
label
=
'test'
)
plt
.
xlim
([
0
,
len
(
history_ts
[
history_ts
[:,
0
]
>
0
])]);
plt
.
ylim
([
8
,
13
]);
plt
.
legend
()
plt
.
xlabel
(
'epoch'
)
plt
.
ylabel
(
'loss'
)
plt
.
tick_params
(
labelright
=
True
)
```
%%%% Output: display_data
%% Cell type:code id: tags:
```
python
```
...
...
notebooks/model_training.ipynb
View file @
ccaf20fa
...
...
@@ -251,6 +251,15 @@
"ixs_test = ixs_valid_test[1::2]"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"np.savetxt('ixs_valid_test.txt', ixs_valid_test, fmt='%i')"
]
},
{
"cell_type": "code",
"execution_count": 45,
...
...
%% Cell type:code id: tags:
```
python
%
matplotlib
inline
import
matplotlib.pyplot
as
plt
import
sys
;
sys
.
path
.
append
(
'../DST'
)
import
os
from
DST.config
import
data_path
import
pandas
as
pd
import
numpy
as
np
import
seaborn
as
sns
;
sns
.
set
(
style
=
"whitegrid"
,
font_scale
=
1.3
)
import
torch
import
torch.nn
as
nn
import
time
import
math
import
torch.utils.data
as
utils_data
import
torch.nn.functional
as
F
import
datetime
```
%% Cell type:code id: tags:
```
python
torch
.
manual_seed
(
21894
)
np
.
random
.
seed
(
21894
)
device
=
torch
.
device
(
"cuda"
if
torch
.
cuda
.
is_available
()
else
"cpu"
)
```
%% Cell type:code id: tags:
```
python
BEFORE
=
12
AFTER
=
12
```
%% Cell type:code id: tags:
```
python
dst_data
=
pd
.
read_pickle
(
os
.
path
.
join
(
data_path
,
'dst.pkl'
))
dst_data
[
'ora_round'
]
=
dst_data
.
ora
.
apply
(
lambda
x
:
int
(
x
.
split
(
':'
)[
0
]))
dati_agg
=
dst_data
.
groupby
([
'data'
,
'ora_round'
]).
agg
({
'BX'
:
np
.
mean
,
'BY'
:
np
.
mean
,
'BZ'
:
np
.
mean
,
'FLOW_SPEED'
:
np
.
mean
,
'PROTON_DENSITY'
:
np
.
mean
,
'TEMPERATURE'
:
np
.
mean
,
'PRESSION'
:
np
.
mean
,
'ELETTRIC'
:
np
.
mean
,
'y'
:
np
.
mean
})
dati_agg
.
reset_index
(
inplace
=
True
)
dati_agg
.
sort_values
(
by
=
[
'data'
,
'ora_round'
],
inplace
=
True
)
dataset
=
dati_agg
.
drop
(
columns
=
[
'data'
,
'ora_round'
]).
values
dataset
=
torch
.
from_numpy
(
np
.
hstack
([
np
.
arange
(
len
(
dataset
)).
reshape
([
-
1
,
1
]),
dataset
]))
last_date_train
=
dati_agg
[
dati_agg
.
data
<=
datetime
.
datetime
(
2008
,
12
,
31
)].
index
[
-
1
]
len_valid_test
=
(
len
(
dataset
)
-
last_date_train
)
/
2
last_date_train
/
len
(
dataset
),
len_valid_test
/
len
(
dataset
)
data_in
=
dataset
.
unfold
(
0
,
BEFORE
,
1
).
transpose
(
2
,
1
)
data_out
=
dataset
[
BEFORE
:].
unfold
(
0
,
AFTER
,
1
).
transpose
(
2
,
1
)
data_in
=
data_in
[:
data_out
.
size
(
0
)]
data_out
=
data_out
[:,:,
-
1
]
data_in
.
size
(),
data_out
.
size
()
```
%%%% Output: execute_result
(torch.Size([261794, 12, 10]), torch.Size([261794, 12]))
%% Cell type:code id: tags:
```
python
where_not_nan_in
=
~
torch
.
isnan
(
data_in
).
any
(
2
,
keepdim
=
True
).
any
(
1
,
keepdim
=
True
).
reshape
(
-
1
)
data_in
=
data_in
[
where_not_nan_in
]
data_out
=
data_out
[
where_not_nan_in
]
```
%% Cell type:code id: tags:
```
python
where_not_nan_out
=
~
torch
.
isnan
(
data_out
).
any
(
1
,
keepdim
=
True
).
reshape
(
-
1
)
data_in
=
data_in
[
where_not_nan_out
]
data_out
=
data_out
[
where_not_nan_out
]
last_train
=
np
.
where
(
data_in
[:,
0
,
0
]
<=
last_date_train
)[
0
][
-
1
]
+
1
data_in
=
data_in
[:,
:,
1
:]
#len_tr = int(data_in.size(0) * 0.6)
n_channels
=
data_in
.
size
(
2
)
```
%% Cell type:code id: tags:
```
python
data_in
.
size
(),
data_out
.
size
()
```
%%%% Output: execute_result
(torch.Size([186534, 12, 9]), torch.Size([186534, 12]))
%% Cell type:code id: tags:
```
python
class
MinMaxScaler
():
"""
Transform features by scaling each feature to a given range
Features in the last dim
The transformation is given by::
X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0))
X_scaled = X_std * (max - min) + min
where min, max = feature_range.
"""
def
__init__
(
self
,
feature_range
=
(
0
,
1
)):
self
.
feature_range
=
feature_range
def
fit
(
self
,
X
):
X_size
=
X
.
size
()
X
=
X
.
reshape
(
-
1
,
X_size
[
-
1
])
data_min
=
X
.
min
(
axis
=
0
).
values
data_max
=
X
.
max
(
axis
=
0
).
values
data_range
=
data_max
-
data_min
self
.
scale_
=
((
self
.
feature_range
[
1
]
-
self
.
feature_range
[
0
])
/
data_range
)
self
.
min_
=
self
.
feature_range
[
0
]
-
data_min
*
self
.
scale_
self
.
data_min_
=
data_min
self
.
data_max_
=
data_max
self
.
data_range_
=
data_range
X
=
X
.
reshape
(
X_size
)
return
self
def
transform
(
self
,
X
):
X
*=
self
.
scale_
X
+=
self
.
min_
return
X
def
inverse_transform
(
self
,
X
):
X
-=
self
.
min_
X
/=
self
.
scale_
return
X
```
%% Cell type:code id: tags:
```
python
mmScaler
=
MinMaxScaler
((
0.1
,
.
9
))
mmScaler
.
fit
(
data_in
[:
last_train
])
data_in_scaled
=
data_in
.
clone
()
data_in_scaled
=
mmScaler
.
transform
(
data_in_scaled
)
```
%% Cell type:code id: tags:
```
python
mm_scaler_out
=
MinMaxScaler
((
0.1
,
.
9
))
mm_scaler_out
.
fit
(
data_in
[:
last_train
,
:,
-
1
].
reshape
(
-
1
,
data_in
.
size
(
1
),
1
))
data_out_scaled
=
data_out
.
clone
()
data_out_scaled
=
mm_scaler_out
.
transform
(
data_out_scaled
)
```
%% Cell type:code id: tags:
```
python
class
Dataset
(
utils_data
.
Dataset
):
def
__init__
(
self
,
dataset_in
,
dataset_out
):
self
.
dataset_in
=
dataset_in
self
.
dataset_out
=
dataset_out
def
__len__
(
self
):
return
self
.
dataset_in
.
size
(
0
)
def
__getitem__
(
self
,
idx
):
din_src
=
self
.
dataset_in
[
idx
]
dout
=
self
.
dataset_out
[
idx
]
return
din_src
,
dout
```
%% Cell type:code id: tags:
```
python
ixs_valid_test
=
np
.
arange
(
int
(
len_valid_test
))
+
last_train
np
.
random
.
shuffle
(
ixs_valid_test
)
ixs_valid
=
ixs_valid_test
[::
2
]
ixs_test
=
ixs_valid_test
[
1
::
2
]
```
%% Cell type:code id: tags:
```
python
np
.
savetxt
(
'ixs_valid_test.txt'
,
ixs_valid_test
,
fmt
=
'%i'
)
```
%% Cell type:code id: tags:
```
python
dst_min
=
data_out
[:
last_train
].
min
(
axis
=
1
).
values
.
flatten
()
bins
=
[
dst_min
.
min
()
-
10
]
+
list
(
np
.
arange
(
-
300
,
dst_min
.
max
()
+
10
,
10
))
h
,
b
=
np
.
histogram
(
dst_min
,
bins
=
bins
)
if
len
(
np
.
argwhere
(
h
==
0
))
>
0
:
bins
=
np
.
delete
(
bins
,
np
.
argwhere
(
h
==
0
)[
0
]
+
1
)
h
,
b
=
np
.
histogram
(
dst_min
,
bins
=
bins
)
w
=
h
.
max
()
/
h
def
fix_weight
(
dst_v
):
pos
=
np
.
argwhere
(
np
.
abs
(
b
-
dst_v
)
==
np
.
abs
((
b
-
dst_v
)).
min
())[
0
,
0
]
if
dst_v
-
b
[
pos
]
<
0
:
pos
=
pos
-
1
return
np
.
sqrt
(
w
[
pos
]
/
h
.
max
())
fix_weight_v
=
np
.
vectorize
(
fix_weight
)
weights
=
fix_weight_v
(
dst_min
)
sampler
=
torch
.
utils
.
data
.
sampler
.
WeightedRandomSampler
(
weights
,
num_samples
=
len
(
dst_min
))
BATCH_SIZE
=
256
dataset_tr
=
Dataset
(
data_in_scaled
[:
last_train
],
data_out_scaled
[:
last_train
])
data_loader_tr
=
utils_data
.
DataLoader
(
dataset_tr
,
batch_size
=
BATCH_SIZE
,
num_workers
=
4
,
shuffle
=
False
,
sampler
=
sampler
)
dataset_val
=
Dataset
(
data_in_scaled
[
ixs_valid
],
data_out_scaled
[
ixs_valid
])
data_loader_val
=
utils_data
.
DataLoader
(
dataset_val
,
batch_size
=
BATCH_SIZE
,
num_workers
=
4
,
shuffle
=
True
)
dataset_ts
=
Dataset
(
data_in_scaled
[
ixs_test
],
data_out_scaled
[
ixs_test
])
data_loader_ts
=
utils_data
.
DataLoader
(
dataset_ts
,
batch_size
=
BATCH_SIZE
,
num_workers
=
4
,
shuffle
=
True
)
```
%% Cell type:code id: tags:
```
python
delta_var
=
mmScaler
.
transform
(
mmScaler
.
data_max_
-
mmScaler
.
data_min_
)
*
0.01
```
%% Cell type:code id: tags:
```
python
batch
=
next
(
iter
(
data_loader_tr
))
```
%% Cell type:code id: tags:
```
python
class
DSTnet
(
nn
.
Module
):
def
__init__
(
self
,
nvars
,
nhidden_i
,
nhidden_o
,
n_out_i
,
before
,
after
):
super
().
__init__
()
self
.
nvars
=
nvars
self
.
nhidden_i
=
nhidden_i
self
.
nhidden_o
=
nhidden_o
self
.
before
=
before
self
.
after
=
after
self
.
n_out_i
=
n_out_i
self
.
lstm
=
nn
.
LSTM
(
self
.
nvars
,
self
.
n_out_i
,
self
.
nhidden_i
,
batch_first
=
True
)
self
.
first_merged_layer
=
self
.
n_out_i
*
self
.
before
self
.
bn1
=
nn
.
BatchNorm1d
(
num_features
=
self
.
first_merged_layer
)
# self.bn1 = nn.LayerNorm(self.first_merged_layer)
self
.
linear_o_1
=
nn
.
Linear
(
self
.
first_merged_layer
,
self
.
nhidden_o
)
self
.
ln1
=
nn
.
LayerNorm
(
self
.
nhidden_o
)
self
.
linear_o_2
=
nn
.
Linear
(
self
.
nhidden_o
,
self
.
nhidden_o
)
self
.
linear_o_3
=
nn
.
Linear
(
self
.
nhidden_o
,
self
.
nhidden_o
//
2
)
# self.bn2 = nn.BatchNorm1d(num_features=self.nhidden_o)
self
.
linear_o_4
=
nn
.
Linear
(
self
.
nhidden_o
//
2
,
self
.
after
)
def
init_hidden
(
self
,
batch_size
):
hidden
=
torch
.
randn
(
self
.
nhidden_i
,
batch_size
,
self
.
n_out_i
).
to
(
device
)
cell
=
torch
.
randn
(
self
.
nhidden_i
,
batch_size
,
self
.
n_out_i
).
to
(
device
)
return
(
hidden
,
cell
)
def
forward
(
self
,
x0
):
self
.
hidden
=
self
.
init_hidden
(
x0
.
size
(
0
))
x
=
self
.
lstm
(
x0
,
self
.
hidden
)[
0
].
reshape
(
x0
.
shape
[
0
],
-
1
)
x
=
self
.
bn1
(
x
)
# x = F.relu(x)
x
=
F
.
relu
(
self
.
linear_o_1
(
x
))
# x = self.ln1(x)
x
=
F
.
dropout
(
x
,
0.2
,
training
=
self
.
training
)
x
=
F
.
relu
(
self
.
linear_o_2
(
x
))
x
=
F
.
dropout
(
x
,
0.2
,
training
=
self
.
training
)
x
=
F
.
relu
(
self
.
linear_o_3
(
x
))
x
=
F
.
dropout
(
x
,
0.2
,
training
=
self
.
training
)
x
=
self
.
linear_o_4
(
x
)
return
x
```
%% Cell type:code id: tags:
```
python
loss_f
=
nn
.
L1Loss
()
loss_mse
=
nn
.
MSELoss
()
nhidden_i
=
2
nhidden_o
=
128
n_out_i
=
8
before
=
BEFORE
nvars
=
data_in_scaled
.
shape
[
-
1
]
dst_net
=
DSTnet
(
nvars
,
nhidden_i
,
nhidden_o
,
n_out_i
,
before
,
AFTER
).
to
(
device
)
print
(
dst_net
)
num_epochs
=
10000
lr
=
1e-5
optimizer
=
torch
.
optim
.
Adam
(
dst_net
.
parameters
(),
lr
=
lr
,
weight_decay
=
1e-5
)
history_tr
=
np
.
zeros
((
num_epochs
,
2
))
history_valid
=
np
.
zeros
((
num_epochs
,
2
))
history_ts
=
np
.
zeros
((
num_epochs
,
2
))
for
epoch
in
range
(
num_epochs
):
# if epoch == 1400:
# lr = 1e-5
# optimizer = torch.optim.Adam(dst_net.parameters(), lr=lr)#, weight_decay=1e-5)
start_time
=
time
.
time
()
for
i
,
batch
in
enumerate
(
data_loader_tr
):
# delta_batch0 = (( 1- 2 * torch.rand(batch[0].size()))*delta_var).float()
# delta_batch1 = (( 1- 2 * torch.rand(batch[1].size()))*delta_var[-1]).float()
x
=
(
batch
[
0
]
+
((
1
-
2
*
torch
.
rand
(
batch
[
0
].
size
()))
*
batch
[
0
]
*
0.001
)).
float
().
to
(
device
)
#+ delta_batch0
y
=
(
batch
[
1
]
+
((
1
-
2
*
torch
.
rand
(
batch
[
1
].
size
()))
*
batch
[
1
]
*
0.001
)).
float
().
to
(
device
)
#+ delta_batch1
optimizer
.
zero_grad
()
dst_net
.
train
()
outputs
=
dst_net
(
x
)
# loss = loss_f(outputs*torch.tensor(np.arange(1, 13)), y*torch.tensor(np.arange(1, 13))) #+ torch.sqrt(loss_mse(outputs, y) + 0.0000001)# * (1 + torch.randn(y.shape).to(device) * 0.01))
loss
=
loss_f
(
outputs
,
y
)
#+ torch.sqrt(loss_mse(outputs, y) + 0.0000001)# * (1 + torch.randn(y.shape).to(device) * 0.01))
# loss = loss_mse(outputs, y)# * (1 + torch.randn(y.shape).to(device) * 0.01))
loss
.
backward
()
optimizer
.
step
()
dst_net
.
eval
()
data_out_scaled_loss
=
mm_scaler_out
.
inverse_transform
(
data_out_scaled
.
clone
())
outputs
=
dst_net
(
data_in_scaled
[:
last_train
].
to
(
device
).
float
())
loss_tr
=
np
.
sqrt
(
loss_mse
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[:
last_train
].
to
(
device
).
float
()).
item
())
loss_mae_tr
=
loss_f
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[:
last_train
].
to
(
device
).
float
()).
item
()
outputs
=
dst_net
(
data_in_scaled
[
ixs_valid
].
to
(
device
).
float
())
loss_valid
=
np
.
sqrt
(
loss_mse
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[
ixs_valid
].
to
(
device
).
float
()).
item
())
loss_mae_valid
=
loss_f
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[
ixs_valid
].
to
(
device
).
float
()).
item
()
outputs
=
dst_net
(
data_in_scaled
[
ixs_test
].
to
(
device
).
float
())
loss_ts
=
np
.
sqrt
(
loss_mse
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[
ixs_test
].
to
(
device
).
float
()).
item
())
loss_mae_ts
=
loss_f
(
mm_scaler_out
.
inverse_transform
(
outputs
.
cpu
().
clone
()).
to
(
device
),
data_out_scaled_loss
[
ixs_test
].
to
(
device
).
float
()).
item
()
history_tr
[
epoch
]
=
[
loss_tr
,
loss_mae_tr
]
history_valid
[
epoch
]
=
[
loss_valid
,
loss_mae_valid
]
history_ts
[
epoch
]
=
[
loss_ts
,
loss_mae_ts
]
epoch_time
=
time
.
time
()
-
start_time
if
(
epoch
%
10
==
0
):
print
(
'Epoch %d time = %.2f, tr_rmse = %0.5f, valid_rmse = %.5f, ts_rmse = %.5f, tr_mae = %0.5f, valid_mae = %.5f, ts_mae = %.5f'
%
(
epoch
,
epoch_time
,
loss_tr
,
loss_valid
,
loss_ts
,
loss_mae_tr
,
loss_mae_valid
,
loss_mae_ts
))
torch
.
save
(
dst_net
.
state_dict
(),
'../models/dst_net_full.pth'
)
np
.
savetxt
(
'../hist/history_tr_rmse_mae_full.txt'
,
history_tr
)
np
.
savetxt
(
'../hist/history_valid_rmse_mae_full.txt'
,
history_valid
)
np
.
savetxt
(
'../hist/history_ts_rmse_mae_full.txt'
,
history_ts
)
```
%%%% Output: stream
DSTnet(
(lstm): LSTM(9, 8, num_layers=2, batch_first=True)
(bn1): BatchNorm1d(96, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(linear_o_1): Linear(in_features=96, out_features=64, bias=True)
(ln1): LayerNorm((64,), eps=1e-05, elementwise_affine=True)
(linear_o_2): Linear(in_features=64, out_features=64, bias=True)
(linear_o_3): Linear(in_features=64, out_features=32, bias=True)
(linear_o_4): Linear(in_features=32, out_features=12, bias=True)
)
Epoch 0 time = 9.58, tr_rmse = 469.83637, valid_rmse = 475.11872, ts_rmse = 475.36345, tr_mae = 461.05780, valid_mae = 466.56754, ts_mae = 466.85388
Epoch 1 time = 10.01, tr_rmse = 388.58652, valid_rmse = 393.32884, ts_rmse = 393.88383, tr_mae = 360.97275, valid_mae = 366.07150, ts_mae = 366.71188
Epoch 2 time = 11.28, tr_rmse = 282.13619, valid_rmse = 286.54900, ts_rmse = 286.04732, tr_mae = 246.84175, valid_mae = 251.61148, ts_mae = 250.79152
Epoch 3 time = 11.71, tr_rmse = 212.87363, valid_rmse = 214.78504, ts_rmse = 214.61001, tr_mae = 180.41080, valid_mae = 182.33406, ts_mae = 182.10858
Epoch 4 time = 10.12, tr_rmse = 166.96828, valid_rmse = 167.52934, ts_rmse = 166.93450, tr_mae = 139.07254, valid_mae = 139.51793, ts_mae = 139.05449
Epoch 5 time = 10.23, tr_rmse = 140.29911, valid_rmse = 139.34353, ts_rmse = 138.90956, tr_mae = 115.83358, valid_mae = 114.99672, ts_mae = 114.60511
Epoch 6 time = 10.33, tr_rmse = 120.11670, valid_rmse = 117.13997, ts_rmse = 117.47479, tr_mae = 98.16451, valid_mae = 95.47210, ts_mae = 95.73440
Epoch 7 time = 10.31, tr_rmse = 107.94639, valid_rmse = 103.54335, ts_rmse = 104.31949, tr_mae = 87.92388, valid_mae = 83.86409, ts_mae = 84.50546
Epoch 8 time = 10.73, tr_rmse = 97.97863, valid_rmse = 93.65564, ts_rmse = 93.83395, tr_mae = 79.52438, valid_mae = 75.50884, ts_mae = 75.72380
Epoch 9 time = 11.80, tr_rmse = 88.08864, valid_rmse = 83.91973, ts_rmse = 84.07096, tr_mae = 71.08361, valid_mae = 67.13800, ts_mae = 67.23650
Epoch 10 time = 10.76, tr_rmse = 80.36456, valid_rmse = 76.11947, ts_rmse = 76.78473, tr_mae = 64.69331, valid_mae = 60.75425, ts_mae = 61.39462
Epoch 11 time = 10.88, tr_rmse = 72.85488, valid_rmse = 69.12700, ts_rmse = 68.93170, tr_mae = 58.58426, valid_mae = 55.14393, ts_mae = 54.92891
Epoch 12 time = 10.87, tr_rmse = 66.03329, valid_rmse = 62.42380, ts_rmse = 62.62510, tr_mae = 52.81767, valid_mae = 49.42125, ts_mae = 49.64627
Epoch 13 time = 10.50, tr_rmse = 61.55198, valid_rmse = 57.67189, ts_rmse = 57.33591, tr_mae = 49.39264, valid_mae = 46.03705, ts_mae = 45.57819
Epoch 14 time = 11.63, tr_rmse = 54.95930, valid_rmse = 51.38882, ts_rmse = 51.63277, tr_mae = 43.92029, valid_mae = 40.71434, ts_mae = 40.90249
Epoch 15 time = 12.06, tr_rmse = 49.49959, valid_rmse = 46.07767, ts_rmse = 46.29188, tr_mae = 39.43318, valid_mae = 36.51028, ts_mae = 36.73224
Epoch 16 time = 11.99, tr_rmse = 45.47639, valid_rmse = 42.51303, ts_rmse = 42.63423, tr_mae = 36.23988, valid_mae = 33.64177, ts_mae = 33.74437
Epoch 17 time = 10.14, tr_rmse = 41.53393, valid_rmse = 38.55350, ts_rmse = 38.22472, tr_mae = 33.14735, valid_mae = 30.51845, ts_mae = 30.38503
Epoch 18 time = 10.14, tr_rmse = 38.54800, valid_rmse = 35.39444, ts_rmse = 35.18512, tr_mae = 30.77516, valid_mae = 28.05162, ts_mae = 27.98601
Epoch 19 time = 10.21, tr_rmse = 34.60249, valid_rmse = 31.87325, ts_rmse = 31.92139, tr_mae = 27.43313, valid_mae = 25.12820, ts_mae = 25.14160
Epoch 20 time = 10.31, tr_rmse = 32.41131, valid_rmse = 28.78282, ts_rmse = 29.02951, tr_mae = 25.81217, valid_mae = 22.82328, ts_mae = 23.12247
Epoch 21 time = 10.10, tr_rmse = 29.63539, valid_rmse = 26.22939, ts_rmse = 26.28407, tr_mae = 23.49904, valid_mae = 20.76940, ts_mae = 20.76274
Epoch 22 time = 10.15, tr_rmse = 28.14579, valid_rmse = 24.74018, ts_rmse = 24.69780, tr_mae = 22.37327, valid_mae = 19.63754, ts_mae = 19.61604
Epoch 23 time = 10.14, tr_rmse = 25.84842, valid_rmse = 22.65259, ts_rmse = 22.41701, tr_mae = 20.45133, valid_mae = 17.93198, ts_mae = 17.75001
Epoch 24 time = 10.05, tr_rmse = 24.99609, valid_rmse = 21.44524, ts_rmse = 21.28371, tr_mae = 19.81792, valid_mae = 16.98862, ts_mae = 16.88686
Epoch 25 time = 10.28, tr_rmse = 24.22077, valid_rmse = 20.67378, ts_rmse = 20.61935, tr_mae = 19.29541, valid_mae = 16.43044, ts_mae = 16.43814
Epoch 26 time = 10.22, tr_rmse = 21.41277, valid_rmse = 18.25019, ts_rmse = 18.22687, tr_mae = 16.55845, valid_mae = 14.23280, ts_mae = 14.21476
Epoch 27 time = 10.03, tr_rmse = 20.52705, valid_rmse = 17.25853, ts_rmse = 17.11398, tr_mae = 15.79898, valid_mae = 13.37073, ts_mae = 13.31232
Epoch 28 time = 10.14, tr_rmse = 20.65998, valid_rmse = 17.21814, ts_rmse = 17.19531, tr_mae = 16.12646, valid_mae = 13.54704, ts_mae = 13.57142
Epoch 29 time = 10.20, tr_rmse = 20.19309, valid_rmse = 16.69780, ts_rmse = 16.61451, tr_mae = 15.72647, valid_mae = 13.06056, ts_mae = 13.08549
Epoch 30 time = 10.58, tr_rmse = 20.29426, valid_rmse = 16.83579, ts_rmse = 16.70910, tr_mae = 15.95925, valid_mae = 13.32516, ts_mae = 13.26896
Epoch 31 time = 10.47, tr_rmse = 20.42426, valid_rmse = 16.99970, ts_rmse = 16.94828, tr_mae = 16.21970, valid_mae = 13.60875, ts_mae = 13.59752
Epoch 32 time = 10.74, tr_rmse = 19.73991, valid_rmse = 16.32760, ts_rmse = 16.33337, tr_mae = 15.56311, valid_mae = 13.00600, ts_mae = 13.06388
Epoch 33 time = 10.57, tr_rmse = 19.63533, valid_rmse = 16.15513, ts_rmse = 16.05821, tr_mae = 15.52516, valid_mae = 12.87851, ts_mae = 12.84972
Epoch 34 time = 10.49, tr_rmse = 18.54266, valid_rmse = 15.20507, ts_rmse = 15.15259, tr_mae = 14.40320, valid_mae = 11.96353, ts_mae = 11.97522
Epoch 35 time = 10.34, tr_rmse = 19.29880, valid_rmse = 15.94948, ts_rmse = 15.93653, tr_mae = 15.38048, valid_mae = 12.87380, ts_mae = 12.90806
Epoch 36 time = 10.72, tr_rmse = 18.32653, valid_rmse = 14.98241, ts_rmse = 14.94959, tr_mae = 14.35635, valid_mae = 11.92258, ts_mae = 11.94039
Epoch 37 time = 10.43, tr_rmse = 17.21544, valid_rmse = 13.98859, ts_rmse = 13.89573, tr_mae = 13.09338, valid_mae = 10.89522, ts_mae = 10.84038
Epoch 38 time = 10.48, tr_rmse = 17.38045, valid_rmse = 14.06629, ts_rmse = 14.02992, tr_mae = 13.38677, valid_mae = 11.03890, ts_mae = 11.05629
Epoch 39 time = 10.22, tr_rmse = 17.14795, valid_rmse = 13.85358, ts_rmse = 13.78351, tr_mae = 13.16051, valid_mae = 10.87153, ts_mae = 10.84944
Epoch 40 time = 10.31, tr_rmse = 17.67979, valid_rmse = 14.47412, ts_rmse = 14.37751, tr_mae = 13.80511, valid_mae = 11.55238, ts_mae = 11.50688
Epoch 41 time = 11.34, tr_rmse = 17.77805, valid_rmse = 14.61537, ts_rmse = 14.54692, tr_mae = 14.00038, valid_mae = 11.77332, ts_mae = 11.76388
Epoch 42 time = 11.22, tr_rmse = 17.21191, valid_rmse = 14.02303, ts_rmse = 13.96267, tr_mae = 13.38353, valid_mae = 11.17042, ts_mae = 11.16596
Epoch 43 time = 11.88, tr_rmse = 17.55124, valid_rmse = 14.42488, ts_rmse = 14.35334, tr_mae = 13.82063, valid_mae = 11.62828, ts_mae = 11.63386
Epoch 44 time = 11.89, tr_rmse = 16.57793, valid_rmse = 13.49831, ts_rmse = 13.43744, tr_mae = 12.68515, valid_mae = 10.63555, ts_mae = 10.63021
Epoch 45 time = 12.33, tr_rmse = 15.78338, valid_rmse = 12.78805, ts_rmse = 12.68631, tr_mae = 11.78901, valid_mae = 9.89431, ts_mae = 9.88264
Epoch 46 time = 13.33, tr_rmse = 17.23601, valid_rmse = 14.28218, ts_rmse = 14.19937, tr_mae = 13.56428, valid_mae = 11.60134, ts_mae = 11.57264
Epoch 47 time = 15.47, tr_rmse = 16.13500, valid_rmse = 13.18999, ts_rmse = 13.06547, tr_mae = 12.26640, valid_mae = 10.38128, ts_mae = 10.32580
Epoch 48 time = 14.67, tr_rmse = 16.26168, valid_rmse = 13.38527, ts_rmse = 13.32936, tr_mae = 12.44717, valid_mae = 10.64614, ts_mae = 10.63803
Epoch 49 time = 13.45, tr_rmse = 16.17817, valid_rmse = 13.28476, ts_rmse = 13.23232, tr_mae = 12.38392, valid_mae = 10.53350, ts_mae = 10.55287
Epoch 50 time = 12.46, tr_rmse = 16.38148, valid_rmse = 13.47378, ts_rmse = 13.38205, tr_mae = 12.64094, valid_mae = 10.76516, ts_mae = 10.73328
Epoch 51 time = 12.26, tr_rmse = 15.56148, valid_rmse = 12.64202, ts_rmse = 12.52262, tr_mae = 11.65497, valid_mae = 9.82705, ts_mae = 9.79202
Epoch 52 time = 14.19, tr_rmse = 15.53018, valid_rmse = 12.64870, ts_rmse = 12.55463, tr_mae = 11.67029, valid_mae = 9.87795, ts_mae = 9.84212
Epoch 53 time = 12.87, tr_rmse = 15.28347, valid_rmse = 12.46730, ts_rmse = 12.38350, tr_mae = 11.38336, valid_mae = 9.68268, ts_mae = 9.67069
Epoch 54 time = 11.29, tr_rmse = 16.09112, valid_rmse = 13.29786, ts_rmse = 13.21833, tr_mae = 12.39709, valid_mae = 10.65072, ts_mae = 10.63649
Epoch 55 time = 10.59, tr_rmse = 15.83603, valid_rmse = 13.12799, ts_rmse = 13.04642, tr_mae = 12.12847, valid_mae = 10.48769, ts_mae = 10.47445
Epoch 56 time = 10.33, tr_rmse = 15.52105, valid_rmse = 12.81395, ts_rmse = 12.71112, tr_mae = 11.74423, valid_mae = 10.15618, ts_mae = 10.11368
Epoch 57 time = 10.42, tr_rmse = 16.41152, valid_rmse = 13.78769, ts_rmse = 13.70997, tr_mae = 12.85738, valid_mae = 11.27541, ts_mae = 11.25530
Epoch 58 time = 10.22, tr_rmse = 16.63460, valid_rmse = 14.08087, ts_rmse = 14.02129, tr_mae = 13.17562, valid_mae = 11.63457, ts_mae = 11.63199
Epoch 59 time = 10.13, tr_rmse = 16.16365, valid_rmse = 13.56861, ts_rmse = 13.52295, tr_mae = 12.60638, valid_mae = 11.06464, ts_mae = 11.06080
Epoch 60 time = 10.08, tr_rmse = 15.51564, valid_rmse = 12.89216, ts_rmse = 12.79591, tr_mae = 11.81635, valid_mae = 10.28886, ts_mae = 10.24864
Epoch 61 time = 9.86, tr_rmse = 15.91470, valid_rmse = 13.29360, ts_rmse = 13.22204, tr_mae = 12.33385, valid_mae = 10.77306, ts_mae = 10.74912
Epoch 62 time = 9.97, tr_rmse = 14.73767, valid_rmse = 12.04800, ts_rmse = 11.94883, tr_mae = 10.85858, valid_mae = 9.32158, ts_mae = 9.28417
Epoch 63 time = 10.08, tr_rmse = 15.05917, valid_rmse = 12.52876, ts_rmse = 12.40228, tr_mae = 11.29063, valid_mae = 9.90692, ts_mae = 9.85459
Epoch 64 time = 9.95, tr_rmse = 15.06442, valid_rmse = 12.44993, ts_rmse = 12.33474, tr_mae = 11.32299, valid_mae = 9.83320, ts_mae = 9.79063
Epoch 65 time = 10.02, tr_rmse = 15.61311, valid_rmse = 13.09232, ts_rmse = 13.02093, tr_mae = 12.03137, valid_mae = 10.58654, ts_mae = 10.57894
Epoch 66 time = 10.07, tr_rmse = 14.40380, valid_rmse = 11.71924, ts_rmse = 11.62332, tr_mae = 10.50385, valid_mae = 8.99472, ts_mae = 8.97009
Epoch 67 time = 10.05, tr_rmse = 14.52767, valid_rmse = 11.87821, ts_rmse = 11.78398, tr_mae = 10.68050, valid_mae = 9.18571, ts_mae = 9.16256
Epoch 68 time = 10.02, tr_rmse = 15.00845, valid_rmse = 12.55439, ts_rmse = 12.46748, tr_mae = 11.32056, valid_mae = 10.02200, ts_mae = 9.99311
Epoch 69 time = 10.33, tr_rmse = 14.44392, valid_rmse = 11.83655, ts_rmse = 11.75043, tr_mae = 10.57627, valid_mae = 9.14701, ts_mae = 9.12627
Epoch 70 time = 10.18, tr_rmse = 14.28779, valid_rmse = 11.66831, ts_rmse = 11.58814, tr_mae = 10.38579, valid_mae = 8.94792, ts_mae = 8.93932
Epoch 71 time = 11.14, tr_rmse = 15.31477, valid_rmse = 12.91881, ts_rmse = 12.85393, tr_mae = 11.74161, valid_mae = 10.47108, ts_mae = 10.46557
Epoch 72 time = 10.01, tr_rmse = 14.70426, valid_rmse = 12.21199, ts_rmse = 12.12925, tr_mae = 10.98379, valid_mae = 9.65113, ts_mae = 9.62532
Epoch 73 time = 10.07, tr_rmse = 13.99588, valid_rmse = 11.35286, ts_rmse = 11.24176, tr_mae = 10.04490, valid_mae = 8.59237, ts_mae = 8.56614
Epoch 74 time = 10.26, tr_rmse = 14.15444, valid_rmse = 11.56670, ts_rmse = 11.46455, tr_mae = 10.27206, valid_mae = 8.87231, ts_mae = 8.84424
Epoch 75 time = 9.92, tr_rmse = 14.01988, valid_rmse = 11.38251, ts_rmse = 11.26661, tr_mae = 10.09486, valid_mae = 8.65922, ts_mae = 8.62552
Epoch 76 time = 10.05, tr_rmse = 14.67822, valid_rmse = 12.12102, ts_rmse = 12.03409, tr_mae = 11.00063, valid_mae = 9.56788, ts_mae = 9.55477
Epoch 77 time = 9.90, tr_rmse = 13.68067, valid_rmse = 10.95839, ts_rmse = 10.84711, tr_mae = 9.65796, valid_mae = 8.15112, ts_mae = 8.11814
Epoch 78 time = 9.78, tr_rmse = 14.22561, valid_rmse = 11.56145, ts_rmse = 11.46000, tr_mae = 10.42153, valid_mae = 8.89960, ts_mae = 8.87085
Epoch 79 time = 9.64, tr_rmse = 14.30211, valid_rmse = 11.73217, ts_rmse = 11.63013, tr_mae = 10.53490, valid_mae = 9.11136, ts_mae = 9.08469
Epoch 80 time = 9.72, tr_rmse = 14.19549, valid_rmse = 11.63289, ts_rmse = 11.53184, tr_mae = 10.38946, valid_mae = 8.99306, ts_mae = 8.96507
Epoch 81 time = 9.64, tr_rmse = 14.44488, valid_rmse = 11.88758, ts_rmse = 11.81018, tr_mae = 10.74841, valid_mae = 9.32871, ts_mae = 9.31740
Epoch 82 time = 9.63, tr_rmse = 13.58662, valid_rmse = 10.87767, ts_rmse = 10.77203, tr_mae = 9.57060, valid_mae = 8.07753, ts_mae = 8.06174
Epoch 83 time = 9.68, tr_rmse = 13.42303, valid_rmse = 10.68689, ts_rmse = 10.56719, tr_mae = 9.34650, valid_mae = 7.82585, ts_mae = 7.79768
Epoch 84 time = 9.76, tr_rmse = 13.49247, valid_rmse = 10.79765, ts_rmse = 10.68637, tr_mae = 9.47515, valid_mae = 7.98611, ts_mae = 7.96827
Epoch 85 time = 9.55, tr_rmse = 13.89071, valid_rmse = 11.22091, ts_rmse = 11.10001, tr_mae = 10.01489, valid_mae = 8.50205, ts_mae = 8.46201
Epoch 86 time = 9.69, tr_rmse = 13.64691, valid_rmse = 10.97278, ts_rmse = 10.90439, tr_mae = 9.69617, valid_mae = 8.21510, ts_mae = 8.22004
Epoch 87 time = 9.72, tr_rmse = 13.17901, valid_rmse = 10.46408, ts_rmse = 10.35410, tr_mae = 9.03755, valid_mae = 7.57627, ts_mae = 7.56084
Epoch 88 time = 9.53, tr_rmse = 13.54532, valid_rmse = 10.84519, ts_rmse = 10.75348, tr_mae = 9.58779, valid_mae = 8.08651, ts_mae = 8.06878
Epoch 89 time = 9.61, tr_rmse = 13.30816, valid_rmse = 10.58069, ts_rmse = 10.48358, tr_mae = 9.22884, valid_mae = 7.73194, ts_mae = 7.71888
Epoch 90 time = 10.30, tr_rmse = 12.84662, valid_rmse = 10.07131, ts_rmse = 9.93971, tr_mae = 8.53808, valid_mae = 7.06664, ts_mae = 7.04660
Epoch 91 time = 9.63, tr_rmse = 13.02916, valid_rmse = 10.25566, ts_rmse = 10.14524, tr_mae = 8.83429, valid_mae = 7.32265, ts_mae = 7.31255
Epoch 92 time = 9.56, tr_rmse = 13.65271, valid_rmse = 11.02411, ts_rmse = 10.93602, tr_mae = 9.75074, valid_mae = 8.30927, ts_mae = 8.29930
Epoch 93 time = 9.86, tr_rmse = 12.95008, valid_rmse = 10.21134, ts_rmse = 10.07199, tr_mae = 8.74316, valid_mae = 7.27271, ts_mae = 7.23556
Epoch 94 time = 9.60, tr_rmse = 13.14386, valid_rmse = 10.44819, ts_rmse = 10.34299, tr_mae = 9.03990, valid_mae = 7.60458, ts_mae = 7.59260
Epoch 95 time = 9.60, tr_rmse = 12.78912, valid_rmse = 10.00238, ts_rmse = 9.88001, tr_mae = 8.50171, valid_mae = 7.00762, ts_mae = 6.98685
Epoch 96 time = 9.59, tr_rmse = 12.94203, valid_rmse = 10.17279, ts_rmse = 10.06654, tr_mae = 8.75254, valid_mae = 7.23814, ts_mae = 7.22357
Epoch 97 time = 9.57, tr_rmse = 12.59826, valid_rmse = 9.82026, ts_rmse = 9.68437, tr_mae = 8.22326, valid_mae = 6.74566, ts_mae = 6.73006
Epoch 98 time = 9.63, tr_rmse = 12.92355, valid_rmse = 10.16960, ts_rmse = 10.03940, tr_mae = 8.74053, valid_mae = 7.22504, ts_mae = 7.20040
Epoch 99 time = 9.64, tr_rmse = 12.63733, valid_rmse = 9.87658, ts_rmse = 9.75832, tr_mae = 8.28938, valid_mae = 6.83889, ts_mae = 6.82062
Epoch 100 time = 9.63, tr_rmse = 12.67251, valid_rmse = 9.92161, ts_rmse = 9.77713, tr_mae = 8.35471, valid_mae = 6.90170, ts_mae = 6.86750
Epoch 101 time = 9.50, tr_rmse = 12.90002, valid_rmse = 10.17578, ts_rmse = 10.04830, tr_mae = 8.72223, valid_mae = 7.25903, ts_mae = 7.22479
Epoch 102 time = 10.33, tr_rmse = 12.58596, valid_rmse = 9.82230, ts_rmse = 9.68495, tr_mae = 8.23168, valid_mae = 6.76074, ts_mae = 6.73515
Epoch 103 time = 11.60, tr_rmse = 12.55069, valid_rmse = 9.75375, ts_rmse = 9.63323, tr_mae = 8.17461, valid_mae = 6.66919, ts_mae = 6.65718
Epoch 104 time = 12.43, tr_rmse = 12.66751, valid_rmse = 9.92375, ts_rmse = 9.79058, tr_mae = 8.36662, valid_mae = 6.91178, ts_mae = 6.88959
Epoch 105 time = 9.97, tr_rmse = 12.44932, valid_rmse = 9.65303, ts_rmse = 9.52220, tr_mae = 8.02172, valid_mae = 6.54700, ts_mae = 6.52470
Epoch 106 time = 9.77, tr_rmse = 12.46710, valid_rmse = 9.66681, ts_rmse = 9.52531, tr_mae = 8.05451, valid_mae = 6.55822, ts_mae = 6.52735
Epoch 107 time = 9.66, tr_rmse = 12.71769, valid_rmse = 10.00135, ts_rmse = 9.86676, tr_mae = 8.46640, valid_mae = 7.02236, ts_mae = 6.99738
Epoch 108 time = 9.64, tr_rmse = 12.75950, valid_rmse = 10.03371, ts_rmse = 9.88442, tr_mae = 8.52509, valid_mae = 7.06267, ts_mae = 7.02889
Epoch 109 time = 9.75, tr_rmse = 12.70778, valid_rmse = 9.97790, ts_rmse = 9.84799, tr_mae = 8.45464, valid_mae = 7.00031, ts_mae = 6.97136
Epoch 110 time = 9.88, tr_rmse = 12.38902, valid_rmse = 9.62790, ts_rmse = 9.47578, tr_mae = 7.93482, valid_mae = 6.50208, ts_mae = 6.47624
Epoch 111 time = 10.64, tr_rmse = 12.67779, valid_rmse = 9.91986, ts_rmse = 9.80360, tr_mae = 8.41121, valid_mae = 6.91305, ts_mae = 6.89453
Epoch 112 time = 10.42, tr_rmse = 12.31152, valid_rmse = 9.53139, ts_rmse = 9.40533, tr_mae = 7.81515, valid_mae = 6.38153, ts_mae = 6.36694
Epoch 113 time = 10.18, tr_rmse = 12.20469, valid_rmse = 9.43003, ts_rmse = 9.28377, tr_mae = 7.63606, valid_mae = 6.22561, ts_mae = 6.20241
Epoch 114 time = 10.29, tr_rmse = 12.46466, valid_rmse = 9.70368, ts_rmse = 9.57696, tr_mae = 8.09414, valid_mae = 6.62006, ts_mae = 6.60201
Epoch 115 time = 10.11, tr_rmse = 12.35911, valid_rmse = 9.58442, ts_rmse = 9.44928, tr_mae = 7.91057, valid_mae = 6.45092, ts_mae = 6.43487
Epoch 116 time = 9.95, tr_rmse = 12.43472, valid_rmse = 9.67943, ts_rmse = 9.53903, tr_mae = 8.04232, valid_mae = 6.59204, ts_mae = 6.56901
Epoch 117 time = 9.93, tr_rmse = 12.59010, valid_rmse = 9.86404, ts_rmse = 9.72820, tr_mae = 8.29404, valid_mae = 6.85226, ts_mae = 6.83504
Epoch 118 time = 9.73, tr_rmse = 12.28011, valid_rmse = 9.52150, ts_rmse = 9.37112, tr_mae = 7.76807, valid_mae = 6.35469, ts_mae = 6.32748
Epoch 119 time = 9.67, tr_rmse = 12.26070, valid_rmse = 9.50103, ts_rmse = 9.36911, tr_mae = 7.76513, valid_mae = 6.33785, ts_mae = 6.32008
Epoch 120 time = 9.88, tr_rmse = 12.24698, valid_rmse = 9.47697, ts_rmse = 9.34078, tr_mae = 7.73763, valid_mae = 6.30484, ts_mae = 6.28843
Epoch 121 time = 9.63, tr_rmse = 12.33462, valid_rmse = 9.59934, ts_rmse = 9.46399, tr_mae = 7.89922, valid_mae = 6.47677, ts_mae = 6.46079
Epoch 122 time = 9.59, tr_rmse = 12.28515, valid_rmse = 9.51347, ts_rmse = 9.37951, tr_mae = 7.81837, valid_mae = 6.36412, ts_mae = 6.34477
Epoch 123 time = 9.76, tr_rmse = 12.07962, valid_rmse = 9.34540, ts_rmse = 9.18700, tr_mae = 7.41665, valid_mae = 6.06403, ts_mae = 6.04086
Epoch 124 time = 10.14, tr_rmse = 12.13731, valid_rmse = 9.37629, ts_rmse = 9.23750, tr_mae = 7.54123, valid_mae = 6.14802, ts_mae = 6.13302
Epoch 125 time = 10.17, tr_rmse = 12.12403, valid_rmse = 9.38473, ts_rmse = 9.23510, tr_mae = 7.53778, valid_mae = 6.14092, ts_mae = 6.11818
Epoch 126 time = 10.21, tr_rmse = 12.18409, valid_rmse = 9.43528, ts_rmse = 9.27855, tr_mae = 7.64273, valid_mae = 6.21341, ts_mae = 6.18222
Epoch 127 time = 10.11, tr_rmse = 12.23193, valid_rmse = 9.49594, ts_rmse = 9.34838, tr_mae = 7.74636, valid_mae = 6.33260, ts_mae = 6.30728
Epoch 128 time = 10.11, tr_rmse = 12.24432, valid_rmse = 9.49473, ts_rmse = 9.35764, tr_mae = 7.77105, valid_mae = 6.34558, ts_mae = 6.32702
Epoch 129 time = 10.33, tr_rmse = 12.17954, valid_rmse = 9.43895, ts_rmse = 9.29565, tr_mae = 7.64516, valid_mae = 6.23200, ts_mae = 6.20991
Epoch 130 time = 10.01, tr_rmse = 12.21154, valid_rmse = 9.46968, ts_rmse = 9.32772, tr_mae = 7.71866, valid_mae = 6.29693, ts_mae = 6.27550
Epoch 131 time = 9.89, tr_rmse = 12.02393, valid_rmse = 9.30178, ts_rmse = 9.14544, tr_mae = 7.34634, valid_mae = 6.01295, ts_mae = 5.99836
Epoch 132 time = 9.67, tr_rmse = 12.21697, valid_rmse = 9.47365, ts_rmse = 9.33209, tr_mae = 7.73759, valid_mae = 6.30941, ts_mae = 6.29013
Epoch 133 time = 9.53, tr_rmse = 12.11342, valid_rmse = 9.36954, ts_rmse = 9.21028, tr_mae = 7.53308, valid_mae = 6.14005, ts_mae = 6.11505
Epoch 134 time = 9.85, tr_rmse = 12.13826, valid_rmse = 9.39345, ts_rmse = 9.25181, tr_mae = 7.60142, valid_mae = 6.18174, ts_mae = 6.15985
Epoch 135 time = 9.59, tr_rmse = 12.16288, valid_rmse = 9.42688, ts_rmse = 9.27720, tr_mae = 7.64934, valid_mae = 6.23434, ts_mae = 6.20746
Epoch 136 time = 9.64, tr_rmse = 12.14524, valid_rmse = 9.40923, ts_rmse = 9.27187, tr_mae = 7.62366, valid_mae = 6.20490, ts_mae = 6.18589
Epoch 137 time = 9.96, tr_rmse = 12.09280, valid_rmse = 9.36022, ts_rmse = 9.20293, tr_mae = 7.51324, valid_mae = 6.12751, ts_mae = 6.10270
Epoch 138 time = 10.29, tr_rmse = 12.09668, valid_rmse = 9.35903, ts_rmse = 9.21267, tr_mae = 7.53575, valid_mae = 6.13177, ts_mae = 6.10882
Epoch 139 time = 10.61, tr_rmse = 12.02317, valid_rmse = 9.31265, ts_rmse = 9.16103, tr_mae = 7.39463, valid_mae = 6.03258, ts_mae = 6.01435
Epoch 140 time = 10.13, tr_rmse = 12.12939, valid_rmse = 9.38538, ts_rmse = 9.25536, tr_mae = 7.60557, valid_mae = 6.19602, ts_mae = 6.18018
Epoch 141 time = 9.98, tr_rmse = 12.27630, valid_rmse = 9.53153, ts_rmse = 9.39871, tr_mae = 7.86701, valid_mae = 6.40734, ts_mae = 6.37918
Epoch 142 time = 9.92, tr_rmse = 12.05217, valid_rmse = 9.30870, ts_rmse = 9.15616, tr_mae = 7.44782, valid_mae = 6.06440, ts_mae = 6.04647
Epoch 143 time = 9.93, tr_rmse = 12.06121, valid_rmse = 9.32761, ts_rmse = 9.18806, tr_mae = 7.47005, valid_mae = 6.09616, ts_mae = 6.08379
Epoch 144 time = 10.07, tr_rmse = 12.15252, valid_rmse = 9.40971, ts_rmse = 9.28042, tr_mae = 7.64656, valid_mae = 6.21536, ts_mae = 6.20234
Epoch 145 time = 9.82, tr_rmse = 12.04092, valid_rmse = 9.31385, ts_rmse = 9.15835, tr_mae = 7.44568, valid_mae = 6.06408, ts_mae = 6.04371
Epoch 146 time = 9.62, tr_rmse = 12.00922, valid_rmse = 9.29216, ts_rmse = 9.15069, tr_mae = 7.38351, valid_mae = 6.01544, ts_mae = 6.00239
Epoch 147 time = 9.57, tr_rmse = 12.02154, valid_rmse = 9.29804, ts_rmse = 9.15720, tr_mae = 7.42006, valid_mae = 6.04432, ts_mae = 6.03118
Epoch 148 time = 9.71, tr_rmse = 11.96063, valid_rmse = 9.26204, ts_rmse = 9.09052, tr_mae = 7.25539, valid_mae = 5.94576, ts_mae = 5.91728
Epoch 149 time = 9.76, tr_rmse = 11.98294, valid_rmse = 9.28031, ts_rmse = 9.11991, tr_mae = 7.33709, valid_mae = 6.00401, ts_mae = 5.97991
Epoch 150 time = 9.93, tr_rmse = 11.98201, valid_rmse = 9.26304, ts_rmse = 9.09726, tr_mae = 7.29550, valid_mae = 5.96803, ts_mae = 5.94490
Epoch 151 time = 10.36, tr_rmse = 11.95375, valid_rmse = 9.26240, ts_rmse = 9.10599, tr_mae = 7.28541, valid_mae = 5.96597, ts_mae = 5.93999
Epoch 152 time = 10.20, tr_rmse = 11.95320, valid_rmse = 9.26976, ts_rmse = 9.11181, tr_mae = 7.28612, valid_mae = 5.96873, ts_mae = 5.95088
Epoch 153 time = 11.14, tr_rmse = 11.94092, valid_rmse = 9.25315, ts_rmse = 9.09080, tr_mae = 7.23789, valid_mae = 5.93808, ts_mae = 5.91175
Epoch 154 time = 10.20, tr_rmse = 12.02068, valid_rmse = 9.31955, ts_rmse = 9.16298, tr_mae = 7.42571, valid_mae = 6.06238, ts_mae = 6.03997
Epoch 155 time = 9.98, tr_rmse = 11.94548, valid_rmse = 9.24708, ts_rmse = 9.08229, tr_mae = 7.27479, valid_mae = 5.94745, ts_mae = 5.92552
Epoch 156 time = 9.92, tr_rmse = 11.94377, valid_rmse = 9.27590, ts_rmse = 9.10089, tr_mae = 7.17972, valid_mae = 5.92313, ts_mae = 5.90295
Epoch 157 time = 9.92, tr_rmse = 11.93111, valid_rmse = 9.24700, ts_rmse = 9.08799, tr_mae = 7.24499, valid_mae = 5.94637, ts_mae = 5.92468
Epoch 158 time = 9.71, tr_rmse = 11.95140, valid_rmse = 9.24714, ts_rmse = 9.09890, tr_mae = 7.28302, valid_mae = 5.95412, ts_mae = 5.93894
Epoch 159 time = 9.84, tr_rmse = 12.06940, valid_rmse = 9.34891, ts_rmse = 9.20637, tr_mae = 7.54799, valid_mae = 6.13657, ts_mae = 6.11827
Epoch 160 time = 9.76, tr_rmse = 12.03176, valid_rmse = 9.30410, ts_rmse = 9.15052, tr_mae = 7.48819, valid_mae = 6.08559, ts_mae = 6.06591
Epoch 161 time = 9.60, tr_rmse = 12.00661, valid_rmse = 9.29226, ts_rmse = 9.15007, tr_mae = 7.43311, valid_mae = 6.04290, ts_mae = 6.02923
Epoch 162 time = 9.78, tr_rmse = 11.99979, valid_rmse = 9.28291, ts_rmse = 9.12949, tr_mae = 7.41862, valid_mae = 6.02945, ts_mae = 6.00485
Epoch 163 time = 10.27, tr_rmse = 11.92250, valid_rmse = 9.23770, ts_rmse = 9.08023, tr_mae = 7.24806, valid_mae = 5.92935, ts_mae = 5.90798
Epoch 164 time = 10.20, tr_rmse = 11.96087, valid_rmse = 9.26453, ts_rmse = 9.12817, tr_mae = 7.34646, valid_mae = 5.99501, ts_mae = 5.98024
Epoch 165 time = 10.21, tr_rmse = 11.96636, valid_rmse = 9.25312, ts_rmse = 9.09527, tr_mae = 7.37173, valid_mae = 6.00186, ts_mae = 5.97405
Epoch 166 time = 10.25, tr_rmse = 11.95451, valid_rmse = 9.25114, ts_rmse = 9.10794, tr_mae = 7.34201, valid_mae = 5.98468, ts_mae = 5.96936
Epoch 167 time = 10.05, tr_rmse = 11.93393, valid_rmse = 9.24919, ts_rmse = 9.09249, tr_mae = 7.30663, valid_mae = 5.97101, ts_mae = 5.94513
Epoch 168 time = 9.95, tr_rmse = 11.89580, valid_rmse = 9.24336, ts_rmse = 9.08408, tr_mae = 7.20925, valid_mae = 5.92660, ts_mae = 5.90493
Epoch 169 time = 9.85, tr_rmse = 12.01448, valid_rmse = 9.30519, ts_rmse = 9.14459, tr_mae = 7.46769, valid_mae = 6.06613, ts_mae = 6.03342
Epoch 170 time = 9.69, tr_rmse = 11.92328, valid_rmse = 9.24357, ts_rmse = 9.08134, tr_mae = 7.29060, valid_mae = 5.95392, ts_mae = 5.93193
Epoch 171 time = 9.87, tr_rmse = 11.97109, valid_rmse = 9.27559, ts_rmse = 9.12407, tr_mae = 7.40269, valid_mae = 6.02765, ts_mae = 6.00245
Epoch 172 time = 9.71, tr_rmse = 11.97110, valid_rmse = 9.27092, ts_rmse = 9.12137, tr_mae = 7.38728, valid_mae = 6.02429, ts_mae = 5.99801
Epoch 173 time = 9.92, tr_rmse = 11.91242, valid_rmse = 9.23236, ts_rmse = 9.05820, tr_mae = 7.26689, valid_mae = 5.93821, ts_mae = 5.91186
Epoch 174 time = 10.26, tr_rmse = 11.92822, valid_rmse = 9.22520, ts_rmse = 9.07796, tr_mae = 7.31747, valid_mae = 5.95477, ts_mae = 5.93551
Epoch 175 time = 10.33, tr_rmse = 11.88255, valid_rmse = 9.21310, ts_rmse = 9.04718, tr_mae = 7.20631, valid_mae = 5.90215, ts_mae = 5.88123
Epoch 176 time = 10.17, tr_rmse = 11.87675, valid_rmse = 9.22559, ts_rmse = 9.05423, tr_mae = 7.14677, valid_mae = 5.88592, ts_mae = 5.86035
Epoch 177 time = 10.14, tr_rmse = 11.88650, valid_rmse = 9.20524, ts_rmse = 9.04307, tr_mae = 7.23289, valid_mae = 5.90898, ts_mae = 5.88639
Epoch 178 time = 10.17, tr_rmse = 11.94746, valid_rmse = 9.25480, ts_rmse = 9.09992, tr_mae = 7.36934, valid_mae = 6.00055, ts_mae = 5.98023
Epoch 179 time = 9.98, tr_rmse = 11.86245, valid_rmse = 9.22126, ts_rmse = 9.04812, tr_mae = 7.17001, valid_mae = 5.89249, ts_mae = 5.86209
Epoch 180 time = 9.85, tr_rmse = 11.87409, valid_rmse = 9.21461, ts_rmse = 9.04575, tr_mae = 7.22949, valid_mae = 5.91262, ts_mae = 5.88749
Epoch 181 time = 9.98, tr_rmse = 11.88134, valid_rmse = 9.20783, ts_rmse = 9.03412, tr_mae = 7.23036, valid_mae = 5.90239, ts_mae = 5.87887
Epoch 182 time = 9.63, tr_rmse = 11.87552, valid_rmse = 9.31973, ts_rmse = 9.14347, tr_mae = 7.12477, valid_mae = 5.96495, ts_mae = 5.93619
Epoch 183 time = 9.73, tr_rmse = 11.88883, valid_rmse = 9.19873, ts_rmse = 9.03616, tr_mae = 7.22437, valid_mae = 5.90645, ts_mae = 5.88966
Epoch 184 time = 9.72, tr_rmse = 11.91378, valid_rmse = 9.23258, ts_rmse = 9.06552, tr_mae = 7.30647, valid_mae = 5.97188, ts_mae = 5.94648
Epoch 185 time = 9.66, tr_rmse = 11.87588, valid_rmse = 9.27383, ts_rmse = 9.08748, tr_mae = 7.11119, valid_mae = 5.91230, ts_mae = 5.87958
Epoch 186 time = 10.09, tr_rmse = 11.88798, valid_rmse = 9.20811, ts_rmse = 9.03456, tr_mae = 7.26477, valid_mae = 5.92447, ts_mae = 5.89436
Epoch 187 time = 10.27, tr_rmse = 11.84456, valid_rmse = 9.21985, ts_rmse = 9.03882, tr_mae = 7.13940, valid_mae = 5.88161, ts_mae = 5.84877
Epoch 188 time = 10.34, tr_rmse = 11.84135, valid_rmse = 9.19835, ts_rmse = 9.01326, tr_mae = 7.14339, valid_mae = 5.86605, ts_mae = 5.83192
Epoch 189 time = 10.11, tr_rmse = 11.84525, valid_rmse = 9.23149, ts_rmse = 9.05811, tr_mae = 7.10935, valid_mae = 5.88021, ts_mae = 5.85031
Epoch 190 time = 10.12, tr_rmse = 11.94332, valid_rmse = 9.29757, ts_rmse = 9.11061, tr_mae = 7.13404, valid_mae = 5.91587, ts_mae = 5.88781
Epoch 191 time = 9.94, tr_rmse = 11.87457, valid_rmse = 9.22200, ts_rmse = 9.05228, tr_mae = 7.23181, valid_mae = 5.92631, ts_mae = 5.89325
Epoch 192 time = 9.90, tr_rmse = 11.86250, valid_rmse = 9.18971, ts_rmse = 9.02317, tr_mae = 7.23591, valid_mae = 5.90139, ts_mae = 5.87672
Epoch 193 time = 9.81, tr_rmse = 11.84097, valid_rmse = 9.27201, ts_rmse = 9.08255, tr_mae = 7.09730, valid_mae = 5.90891, ts_mae = 5.87510
Epoch 194 time = 9.71, tr_rmse = 11.89535, valid_rmse = 9.22792, ts_rmse = 9.06222, tr_mae = 7.30328, valid_mae = 5.95544, ts_mae = 5.92563
Epoch 195 time = 9.68, tr_rmse = 11.83768, valid_rmse = 9.21425, ts_rmse = 9.04115, tr_mae = 7.10716, valid_mae = 5.86989, ts_mae = 5.84761
Epoch 196 time = 9.75, tr_rmse = 11.82915, valid_rmse = 9.19771, ts_rmse = 9.00730, tr_mae = 7.11883, valid_mae = 5.85419, ts_mae = 5.82227
Epoch 197 time = 9.86, tr_rmse = 11.86284, valid_rmse = 9.19667, ts_rmse = 9.02792, tr_mae = 7.24012, valid_mae = 5.90613, ts_mae = 5.87710
Epoch 198 time = 9.95, tr_rmse = 11.83923, valid_rmse = 9.18624, ts_rmse = 9.01938, tr_mae = 7.16725, valid_mae = 5.86767, ts_mae = 5.84152
Epoch 199 time = 10.14, tr_rmse = 11.83831, valid_rmse = 9.19354, ts_rmse = 9.01262, tr_mae = 7.18687, valid_mae = 5.88110, ts_mae = 5.84589
Epoch 200 time = 10.16, tr_rmse = 11.85885, valid_rmse = 9.19334, ts_rmse = 9.01663, tr_mae = 7.24259, valid_mae = 5.90721, ts_mae = 5.88097
Epoch 201 time = 10.18, tr_rmse = 11.92915, valid_rmse = 9.23669, ts_rmse = 9.06845, tr_mae = 7.37189, valid_mae = 6.01116, ts_mae = 5.97991
Epoch 202 time = 10.07, tr_rmse = 11.86387, valid_rmse = 9.24205, ts_rmse = 9.05623, tr_mae = 7.08191, valid_mae = 5.86115, ts_mae = 5.83404
Epoch 203 time = 10.01, tr_rmse = 11.88128, valid_rmse = 9.20540, ts_rmse = 9.03496, tr_mae = 7.30109, valid_mae = 5.94187, ts_mae = 5.90846
Epoch 204 time = 9.90, tr_rmse = 11.82509, valid_rmse = 9.16372, ts_rmse = 8.98825, tr_mae = 7.14794, valid_mae = 5.85317, ts_mae = 5.82624
Epoch 205 time = 9.79, tr_rmse = 11.84858, valid_rmse = 9.20607, ts_rmse = 9.02065, tr_mae = 7.22112, valid_mae = 5.90522, ts_mae = 5.86986
Epoch 206 time = 9.72, tr_rmse = 11.80826, valid_rmse = 9.17781, ts_rmse = 8.98572, tr_mae = 7.11373, valid_mae = 5.84084, ts_mae = 5.80887
Epoch 207 time = 9.70, tr_rmse = 11.81686, valid_rmse = 9.22000, ts_rmse = 9.03278, tr_mae = 7.12467, valid_mae = 5.88590, ts_mae = 5.84781
Epoch 208 time = 9.68, tr_rmse = 11.81497, valid_rmse = 9.20413, ts_rmse = 9.01627, tr_mae = 7.07578, valid_mae = 5.84877, ts_mae = 5.81205
Epoch 209 time = 9.80, tr_rmse = 11.86736, valid_rmse = 9.18941, ts_rmse = 9.02132, tr_mae = 7.27384, valid_mae = 5.92001, ts_mae = 5.89467
Epoch 210 time = 10.06, tr_rmse = 11.82237, valid_rmse = 9.23436, ts_rmse = 9.05197, tr_mae = 7.07685, valid_mae = 5.87367, ts_mae = 5.84502
Epoch 211 time = 10.73, tr_rmse = 11.80312, valid_rmse = 9.19685, ts_rmse = 9.00674, tr_mae = 7.12096, valid_mae = 5.85844, ts_mae = 5.82517
Epoch 212 time = 10.18, tr_rmse = 11.81738, valid_rmse = 9.16021, ts_rmse = 8.97825, tr_mae = 7.16430, valid_mae = 5.85686, ts_mae = 5.82566
Epoch 213 time = 10.33, tr_rmse = 11.81050, valid_rmse = 9.17086, ts_rmse = 8.98389, tr_mae = 7.16658, valid_mae = 5.86197, ts_mae = 5.82616
Epoch 214 time = 10.13, tr_rmse = 11.79881, valid_rmse = 9.16154, ts_rmse = 8.97778, tr_mae = 7.11266, valid_mae = 5.83430, ts_mae = 5.80172
Epoch 215 time = 9.89, tr_rmse = 11.80230, valid_rmse = 9.19327, ts_rmse = 9.00486, tr_mae = 7.08541, valid_mae = 5.84665, ts_mae = 5.81319
Epoch 216 time = 9.82, tr_rmse = 11.82477, valid_rmse = 9.26204, ts_rmse = 9.08005, tr_mae = 7.07727, valid_mae = 5.90339, ts_mae = 5.86797
Epoch 217 time = 9.87, tr_rmse = 11.90317, valid_rmse = 9.23293, ts_rmse = 9.06030, tr_mae = 7.34855, valid_mae = 5.97384, ts_mae = 5.94316
Epoch 218 time = 9.72, tr_rmse = 11.79810, valid_rmse = 9.17971, ts_rmse = 8.98953, tr_mae = 7.10364, valid_mae = 5.83990, ts_mae = 5.80359
Epoch 219 time = 9.78, tr_rmse = 11.79166, valid_rmse = 9.16976, ts_rmse = 8.98498, tr_mae = 7.11071, valid_mae = 5.83390, ts_mae = 5.80687
Epoch 220 time = 9.65, tr_rmse = 11.78979, valid_rmse = 9.17533, ts_rmse = 8.99086, tr_mae = 7.11345, valid_mae = 5.84433, ts_mae = 5.81026
Epoch 221 time = 9.62, tr_rmse = 11.80783, valid_rmse = 9.15762, ts_rmse = 8.97944, tr_mae = 7.17176, valid_mae = 5.86130, ts_mae = 5.83068
Epoch 222 time = 9.89, tr_rmse = 11.79197, valid_rmse = 9.15824, ts_rmse = 8.97256, tr_mae = 7.13716, valid_mae = 5.83950, ts_mae = 5.80769
Epoch 223 time = 10.15, tr_rmse = 11.78839, valid_rmse = 9.17133, ts_rmse = 8.98587, tr_mae = 7.13125, valid_mae = 5.85093, ts_mae = 5.81434
Epoch 224 time = 10.26, tr_rmse = 11.80114, valid_rmse = 9.15393, ts_rmse = 8.96476, tr_mae = 7.12675, valid_mae = 5.83838, ts_mae = 5.80369
Epoch 225 time = 11.08, tr_rmse = 11.80603, valid_rmse = 9.17958, ts_rmse = 8.98894, tr_mae = 7.16677, valid_mae = 5.87116, ts_mae = 5.83286
Epoch 226 time = 10.09, tr_rmse = 11.81781, valid_rmse = 9.21605, ts_rmse = 9.02238, tr_mae = 7.07457, valid_mae = 5.84315, ts_mae = 5.81150
Epoch 227 time = 9.92, tr_rmse = 11.79083, valid_rmse = 9.15234, ts_rmse = 8.96990, tr_mae = 7.16090, valid_mae = 5.85181, ts_mae = 5.82125
Epoch 228 time = 9.92, tr_rmse = 11.79166, valid_rmse = 9.23543, ts_rmse = 9.03391, tr_mae = 7.06433, valid_mae = 5.87290, ts_mae = 5.83601
Epoch 229 time = 9.90, tr_rmse = 11.79044, valid_rmse = 9.17452, ts_rmse = 8.97801, tr_mae = 7.13890, valid_mae = 5.85384, ts_mae = 5.81086
Epoch 230 time = 9.79, tr_rmse = 11.80582, valid_rmse = 9.15976, ts_rmse = 8.97070, tr_mae = 7.18560, valid_mae = 5.86910, ts_mae = 5.83126
Epoch 231 time = 9.85, tr_rmse = 11.79466, valid_rmse = 9.16309, ts_rmse = 8.97252, tr_mae = 7.17934, valid_mae = 5.86713, ts_mae = 5.82662
Epoch 232 time = 10.07, tr_rmse = 11.78108, valid_rmse = 9.21509, ts_rmse = 9.01985, tr_mae = 7.06689, valid_mae = 5.86407, ts_mae = 5.82627
Epoch 233 time = 9.67, tr_rmse = 11.77203, valid_rmse = 9.14827, ts_rmse = 8.96429, tr_mae = 7.11243, valid_mae = 5.83034, ts_mae = 5.79432
Epoch 234 time = 9.93, tr_rmse = 11.77145, valid_rmse = 9.14637, ts_rmse = 8.96191, tr_mae = 7.11801, valid_mae = 5.83577, ts_mae = 5.80333
Epoch 235 time = 10.16, tr_rmse = 11.76912, valid_rmse = 9.17674, ts_rmse = 8.98133, tr_mae = 7.06144, valid_mae = 5.82669, ts_mae = 5.79019
Epoch 236 time = 10.26, tr_rmse = 11.75961, valid_rmse = 9.16587, ts_rmse = 8.96385, tr_mae = 7.09041, valid_mae = 5.83061, ts_mae = 5.79037
Epoch 237 time = 10.18, tr_rmse = 11.76802, valid_rmse = 9.16457, ts_rmse = 8.95730, tr_mae = 7.09116, valid_mae = 5.82949, ts_mae = 5.78393
Epoch 238 time = 10.05, tr_rmse = 11.76838, valid_rmse = 9.16936, ts_rmse = 8.97172, tr_mae = 7.11443, valid_mae = 5.84533, ts_mae = 5.80533
Epoch 239 time = 9.93, tr_rmse = 11.76146, valid_rmse = 9.15032, ts_rmse = 8.96929, tr_mae = 7.10993, valid_mae = 5.83080, ts_mae = 5.79739
Epoch 240 time = 9.99, tr_rmse = 11.77892, valid_rmse = 9.16425, ts_rmse = 8.96659, tr_mae = 7.15868, valid_mae = 5.86172, ts_mae = 5.81751
Epoch 241 time = 10.35, tr_rmse = 11.75052, valid_rmse = 9.15911, ts_rmse = 8.96304, tr_mae = 7.09902, valid_mae = 5.83348, ts_mae = 5.79825
Epoch 242 time = 9.71, tr_rmse = 11.74653, valid_rmse = 9.15103, ts_rmse = 8.96552, tr_mae = 7.08035, valid_mae = 5.81923, ts_mae = 5.78341
Epoch 243 time = 9.82, tr_rmse = 11.78110, valid_rmse = 9.17649, ts_rmse = 8.99072, tr_mae = 7.16995, valid_mae = 5.87005, ts_mae = 5.83370
Epoch 244 time = 10.28, tr_rmse = 11.77787, valid_rmse = 9.17613, ts_rmse = 8.97783, tr_mae = 7.14170, valid_mae = 5.86498, ts_mae = 5.82106
Epoch 245 time = 9.72, tr_rmse = 11.77173, valid_rmse = 9.13716, ts_rmse = 8.95378, tr_mae = 7.15445, valid_mae = 5.84702, ts_mae = 5.81313
Epoch 246 time = 9.86, tr_rmse = 11.81869, valid_rmse = 9.18830, ts_rmse = 9.00555, tr_mae = 7.27003, valid_mae = 5.93502, ts_mae = 5.90188
Epoch 247 time = 10.37, tr_rmse = 11.76459, valid_rmse = 9.16187, ts_rmse = 8.97250, tr_mae = 7.12750, valid_mae = 5.84938, ts_mae = 5.81578
Epoch 248 time = 10.16, tr_rmse = 11.81257, valid_rmse = 9.18885, ts_rmse = 9.00226, tr_mae = 7.26875, valid_mae = 5.93548, ts_mae = 5.89742
Epoch 249 time = 10.44, tr_rmse = 11.77027, valid_rmse = 9.14672, ts_rmse = 8.95580, tr_mae = 7.17422, valid_mae = 5.86395, ts_mae = 5.82538
Epoch 250 time = 10.30, tr_rmse = 11.73947, valid_rmse = 9.14899, ts_rmse = 8.95315, tr_mae = 7.06319, valid_mae = 5.81401, ts_mae = 5.77824
Epoch 251 time = 10.07, tr_rmse = 11.75722, valid_rmse = 9.15113, ts_rmse = 8.95829, tr_mae = 7.12576, valid_mae = 5.84534, ts_mae = 5.80573
Epoch 252 time = 10.01, tr_rmse = 11.77384, valid_rmse = 9.15667, ts_rmse = 8.97659, tr_mae = 7.19560, valid_mae = 5.87548, ts_mae = 5.84240
Epoch 253 time = 10.14, tr_rmse = 11.77782, valid_rmse = 9.14728, ts_rmse = 8.96175, tr_mae = 7.19810, valid_mae = 5.87744, ts_mae = 5.84071
Epoch 254 time = 9.87, tr_rmse = 11.76770, valid_rmse = 9.15784, ts_rmse = 8.97070, tr_mae = 7.19357, valid_mae = 5.90183, ts_mae = 5.86578
Epoch 255 time = 9.87, tr_rmse = 11.74559, valid_rmse = 9.14752, ts_rmse = 8.96680, tr_mae = 7.10325, valid_mae = 5.83211, ts_mae = 5.79709
Epoch 256 time = 9.85, tr_rmse = 11.78722, valid_rmse = 9.21895, ts_rmse = 9.02315, tr_mae = 7.04445, valid_mae = 5.84254, ts_mae = 5.81146
Epoch 257 time = 9.62, tr_rmse = 11.73070, valid_rmse = 9.13710, ts_rmse = 8.95016, tr_mae = 7.10402, valid_mae = 5.83290, ts_mae = 5.79304
Epoch 258 time = 9.82, tr_rmse = 11.80076, valid_rmse = 9.17686, ts_rmse = 8.98830, tr_mae = 7.26565, valid_mae = 5.92930, ts_mae = 5.88742
Epoch 259 time = 9.99, tr_rmse = 11.73046, valid_rmse = 9.14051, ts_rmse = 8.95683, tr_mae = 7.07953, valid_mae = 5.82174, ts_mae = 5.79046
Epoch 260 time = 10.16, tr_rmse = 11.78609, valid_rmse = 9.17285, ts_rmse = 8.98359, tr_mae = 7.22291, valid_mae = 5.90643, ts_mae = 5.86948
Epoch 261 time = 10.19, tr_rmse = 11.75108, valid_rmse = 9.19353, ts_rmse = 8.99197, tr_mae = 7.02398, valid_mae = 5.81671, ts_mae = 5.78155
Epoch 262 time = 10.45, tr_rmse = 11.72230, valid_rmse = 9.13622, ts_rmse = 8.94034, tr_mae = 7.05811, valid_mae = 5.80696, ts_mae = 5.76865