Example 14: Sequence-to-Scalar Prediction¶
Not all system identification tasks predict a full output sequence. Sometimes
the target is a single scalar -- a physical parameter, a classification label,
or a summary statistic. This example builds a custom data pipeline with
HDF5Attrs for scalar targets and uses SeqAggregation to reduce RNN output
to a scalar prediction.
Prerequisites¶
This example builds on Example 00 and Example 01. Make sure the library is installed:
uv sync --extra dev
Setup¶
from pathlib import Path
import torch.nn as nn
from torch.utils.data import DataLoader
from tsfast.tsdata import (
WindowedDataset, HDF5Signals, HDF5Attrs, SourceEntry,
DataLoaders, get_hdf_files, split_by_parent,
)
from tsfast.models.architectures.rnn import SimpleRNN
from tsfast.models._core.layers import SeqAggregation
from tsfast.models._core.scaling import ScaledModel, StandardScaler
from tsfast.training import Learner, fun_rmse
The Task: Estimating Initial Conditions¶
We have spring-damper trajectories with different initial positions (x0) and
velocities (v0). Given the opening segment of the time series [u, x, v] --
force input, position, and velocity -- can a neural network estimate what the
initial conditions were?
This is a sequence-to-scalar regression problem: the input is a multi-
channel time series and the output is a fixed-size vector [x0, v0].
Load the Dataset¶
The pinn_var_ic test data contains HDF5 files organized into train/,
valid/, and test/ directories. Each file stores a 500-step spring-damper
trajectory with the force input u, position x, and velocity v as
datasets, plus scalar attributes like x0 (initial position) and v0
(initial velocity).
def _find_project_root(marker: str = "test_data") -> Path:
"""Walk up from script/notebook location to find the project root."""
try:
start = Path(__file__).resolve().parent
except NameError:
start = Path(".").resolve()
p = start
while p != p.parent:
if (p / marker).is_dir():
return p
p = p.parent
raise FileNotFoundError(f"Could not find '{marker}' directory above {start}")
_root = _find_project_root()
data_path = _root / "test_data" / "pinn_var_ic"
files = get_hdf_files(data_path)
print(f"Found {len(files)} HDF5 files")
for f in files[:5]:
print(f" {f.parent.name}/{f.name}")
Found 34 HDF5 files test/x0_v0_chirp.h5 test/x0_v0_sine_15hz.h5 test/x1p5_v1_chirp.h5 test/x1p5_v1_sine_15hz.h5 test/x2_v3_chirp.h5
Building a Custom Data Pipeline¶
Unlike create_dls which creates sequence-to-sequence pipelines, here we need
a custom pipeline with:
- Input:
HDF5Signalsreading[u, x, v]columns as a multi-channel time series - Target:
HDF5Attrsreading[x0, v0]from HDF5 file attributes
inputs_block = HDF5Signals(['u', 'x', 'v'])
targets_block = HDF5Attrs(['x0', 'v0'])
Create SourceEntry objects from the discovered files. Each entry points to
an HDF5 file with a default resampling factor of 1.0.
entries = [SourceEntry(path=str(f)) for f in files]
train_idx, valid_idx = split_by_parent(files)
train_entries = [entries[i] for i in train_idx]
valid_entries = [entries[i] for i in valid_idx]
Build WindowedDataset for train and validation splits. Using
win_sz=100, stp_sz=500 gives one window per file: the first 100 timesteps
of the trajectory. The window must start at the trajectory beginning -- that
is where the initial condition is directly observable -- so the step size
matches the file length (500) to prevent additional windows from later in
the trajectory, whose [x0, v0] labels would not describe the window's own
starting state.
train_ds = WindowedDataset(train_entries, inputs=inputs_block, targets=targets_block, win_sz=100, stp_sz=500)
valid_ds = WindowedDataset(valid_entries, inputs=inputs_block, targets=targets_block, win_sz=100, stp_sz=500)
print(f"Train samples: {len(train_ds)}")
print(f"Valid samples: {len(valid_ds)}")
Train samples: 20 Valid samples: 6
Wrap in DataLoaders. We construct standard PyTorch DataLoaders and wrap them
in DataLoaders for compatibility with the Learner.
train_dl = DataLoader(train_ds, batch_size=16, shuffle=True)
valid_dl = DataLoader(valid_ds, batch_size=16, shuffle=False)
dls = DataLoaders(train_dl, valid_dl)
Each component of the pipeline:
HDF5Signals(['u', 'x', 'v'])-- extracts named datasets from each HDF5 file as a 3-channel time series with shape(seq_len, 3).HDF5Attrs(['x0', 'v0'])-- reads named attributes from HDF5 metadata as a scalar target vector of shape(2,).WindowedDataset-- combines the blocks and slices files into windows. Withwin_sz=100, stp_sz=500, each file produces exactly one sample covering the first 100 timesteps.split_by_parent-- uses the directory structure (train/,valid/) to split files into train and validation sets.
Modifying the Model for Scalar Output¶
A standard SimpleRNN produces a sequence output with shape
(batch, seq_len, n_outputs). To predict scalars, we append SeqAggregation
which selects the last timestep of the RNN output, reducing it to
(batch, n_outputs).
We build the model manually with SimpleRNN because RNNLearner produces a
pure sequence-to-sequence model with no way to append the aggregation layer.
Normalization comes from ScaledModel.from_dls, which reads dls.norm_stats
-- for a custom pipeline like this one, the stats are estimated automatically
from the first training batches. ScaledModel wraps the RNN itself (its
scalers broadcast over (batch, seq_len, features) tensors), and
SeqAggregation follows it in the nn.Sequential: selecting the last
timestep commutes with the per-feature output denormalization.
input_size = 3 # u, x, v
output_size = 2 # x0, v0
hidden_size = 40
rnn = SimpleRNN(input_size, output_size, hidden_size=hidden_size, rnn_type='gru')
model = nn.Sequential(
ScaledModel.from_dls(rnn, dls, StandardScaler, StandardScaler),
SeqAggregation(),
)
lrn = Learner(
model,
dls,
loss_func=nn.L1Loss(),
metrics=[fun_rmse],
lr=1e-3,
)
The model pipeline:
ScaledModelnormalizes the 3-channel input, runs the wrappedSimpleRNN, and denormalizes the(batch, seq_len, 2)output.SeqAggregation()selects the last timestep, yielding(batch, 2)-- one prediction forx0and one forv0.
Train and Evaluate¶
With only 20 training trajectories, one batch covers most of an epoch, so a
single epoch is just a couple of gradient steps. Training for 300 epochs
still takes only seconds and brings the validation fun_rmse to roughly
0.1 -- the validation initial conditions are combinations never seen during
training, so the model has to read them off the trajectory rather than
memorize them.
lrn.fit_flat_cos(n_epoch=300, lr=1e-3)
Epoch 1/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 1/300: 100%|██████████| 2/2 [00:00<00:00, 14.55it/s, train=0.6738 | valid=0.5440 | fun_rmse=0.6691]
Epoch 1/300: 100%|██████████| 2/2 [00:00<00:00, 14.51it/s, train=0.6738 | valid=0.5440 | fun_rmse=0.6691]
Epoch 2/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 2/300: 100%|██████████| 2/2 [00:00<00:00, 206.35it/s, train=0.7124 | valid=0.5324 | fun_rmse=0.6547]
Epoch 2/300: 100%|██████████| 2/2 [00:00<00:00, 200.26it/s, train=0.7124 | valid=0.5324 | fun_rmse=0.6547]
Epoch 3/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 3/300: 100%|██████████| 2/2 [00:00<00:00, 143.40it/s, train=0.4756 | valid=0.5213 | fun_rmse=0.6417]
Epoch 3/300: 100%|██████████| 2/2 [00:00<00:00, 137.63it/s, train=0.4756 | valid=0.5213 | fun_rmse=0.6417]
Epoch 4/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 4/300: 100%|██████████| 2/2 [00:00<00:00, 118.64it/s, train=0.5902 | valid=0.5102 | fun_rmse=0.6296]
Epoch 4/300: 100%|██████████| 2/2 [00:00<00:00, 116.50it/s, train=0.5902 | valid=0.5102 | fun_rmse=0.6296]
Epoch 5/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 5/300: 100%|██████████| 2/2 [00:00<00:00, 160.28it/s, train=0.6557 | valid=0.4989 | fun_rmse=0.6177]
Epoch 5/300: 100%|██████████| 2/2 [00:00<00:00, 155.67it/s, train=0.6557 | valid=0.4989 | fun_rmse=0.6177]
Epoch 6/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 6/300: 100%|██████████| 2/2 [00:00<00:00, 205.57it/s, train=0.5576 | valid=0.4874 | fun_rmse=0.6059]
Epoch 6/300: 100%|██████████| 2/2 [00:00<00:00, 198.94it/s, train=0.5576 | valid=0.4874 | fun_rmse=0.6059]
Epoch 7/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 7/300: 100%|██████████| 2/2 [00:00<00:00, 170.61it/s, train=0.5845 | valid=0.4759 | fun_rmse=0.5943]
Epoch 7/300: 100%|██████████| 2/2 [00:00<00:00, 166.30it/s, train=0.5845 | valid=0.4759 | fun_rmse=0.5943]
Epoch 8/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 8/300: 100%|██████████| 2/2 [00:00<00:00, 169.37it/s, train=0.5782 | valid=0.4660 | fun_rmse=0.5823]
Epoch 8/300: 100%|██████████| 2/2 [00:00<00:00, 166.22it/s, train=0.5782 | valid=0.4660 | fun_rmse=0.5823]
Epoch 9/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 9/300: 100%|██████████| 2/2 [00:00<00:00, 190.71it/s, train=0.5754 | valid=0.4574 | fun_rmse=0.5704]
Epoch 9/300: 100%|██████████| 2/2 [00:00<00:00, 184.96it/s, train=0.5754 | valid=0.4574 | fun_rmse=0.5704]
Epoch 10/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 10/300: 100%|██████████| 2/2 [00:00<00:00, 94.55it/s, train=0.6378 | valid=0.4492 | fun_rmse=0.5586]
Epoch 10/300: 100%|██████████| 2/2 [00:00<00:00, 89.71it/s, train=0.6378 | valid=0.4492 | fun_rmse=0.5586]
Epoch 11/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 11/300: 100%|██████████| 2/2 [00:00<00:00, 81.81it/s, train=0.4018 | valid=0.4417 | fun_rmse=0.5467]
Epoch 11/300: 100%|██████████| 2/2 [00:00<00:00, 80.66it/s, train=0.4018 | valid=0.4417 | fun_rmse=0.5467]
Epoch 12/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 12/300: 100%|██████████| 2/2 [00:00<00:00, 56.88it/s, train=0.4463 | valid=0.4341 | fun_rmse=0.5357]
Epoch 12/300: 100%|██████████| 2/2 [00:00<00:00, 54.94it/s, train=0.4463 | valid=0.4341 | fun_rmse=0.5357]
Epoch 13/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 13/300: 100%|██████████| 2/2 [00:00<00:00, 51.09it/s, train=0.6322 | valid=0.4262 | fun_rmse=0.5247]
Epoch 13/300: 100%|██████████| 2/2 [00:00<00:00, 49.45it/s, train=0.6322 | valid=0.4262 | fun_rmse=0.5247]
Epoch 14/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 14/300: 100%|██████████| 2/2 [00:00<00:00, 65.21it/s, train=0.5689 | valid=0.4175 | fun_rmse=0.5122]
Epoch 14/300: 100%|██████████| 2/2 [00:00<00:00, 63.91it/s, train=0.5689 | valid=0.4175 | fun_rmse=0.5122]
Epoch 15/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 15/300: 100%|██████████| 2/2 [00:00<00:00, 81.30it/s, train=0.5850 | valid=0.4081 | fun_rmse=0.4988]
Epoch 15/300: 100%|██████████| 2/2 [00:00<00:00, 80.23it/s, train=0.5850 | valid=0.4081 | fun_rmse=0.4988]
Epoch 16/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 16/300: 100%|██████████| 2/2 [00:00<00:00, 155.26it/s, train=0.4899 | valid=0.3981 | fun_rmse=0.4845]
Epoch 16/300: 100%|██████████| 2/2 [00:00<00:00, 149.61it/s, train=0.4899 | valid=0.3981 | fun_rmse=0.4845]
Epoch 17/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 17/300: 100%|██████████| 2/2 [00:00<00:00, 49.19it/s, train=0.5454 | valid=0.3876 | fun_rmse=0.4697]
Epoch 17/300: 100%|██████████| 2/2 [00:00<00:00, 47.65it/s, train=0.5454 | valid=0.3876 | fun_rmse=0.4697]
Epoch 18/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 18/300: 100%|██████████| 2/2 [00:00<00:00, 49.00it/s, train=0.5296 | valid=0.3762 | fun_rmse=0.4536]
Epoch 18/300: 100%|██████████| 2/2 [00:00<00:00, 48.62it/s, train=0.5296 | valid=0.3762 | fun_rmse=0.4536]
Epoch 19/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 19/300: 100%|██████████| 2/2 [00:00<00:00, 64.73it/s, train=0.5061 | valid=0.3639 | fun_rmse=0.4366]
Epoch 19/300: 100%|██████████| 2/2 [00:00<00:00, 64.08it/s, train=0.5061 | valid=0.3639 | fun_rmse=0.4366]
Epoch 20/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 20/300: 100%|██████████| 2/2 [00:00<00:00, 94.77it/s, train=0.4523 | valid=0.3512 | fun_rmse=0.4191]
Epoch 20/300: 100%|██████████| 2/2 [00:00<00:00, 91.90it/s, train=0.4523 | valid=0.3512 | fun_rmse=0.4191]
Epoch 21/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 21/300: 100%|██████████| 2/2 [00:00<00:00, 73.52it/s, train=0.4936 | valid=0.3376 | fun_rmse=0.4008]
Epoch 21/300: 100%|██████████| 2/2 [00:00<00:00, 70.52it/s, train=0.4936 | valid=0.3376 | fun_rmse=0.4008]
Epoch 22/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 22/300: 100%|██████████| 2/2 [00:00<00:00, 46.20it/s, train=0.4761 | valid=0.3225 | fun_rmse=0.3810]
Epoch 22/300: 100%|██████████| 2/2 [00:00<00:00, 45.87it/s, train=0.4761 | valid=0.3225 | fun_rmse=0.3810]
Epoch 23/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 23/300: 100%|██████████| 2/2 [00:00<00:00, 106.68it/s, train=0.4121 | valid=0.3060 | fun_rmse=0.3604]
Epoch 23/300: 100%|██████████| 2/2 [00:00<00:00, 105.09it/s, train=0.4121 | valid=0.3060 | fun_rmse=0.3604]
Epoch 24/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 24/300: 100%|██████████| 2/2 [00:00<00:00, 181.10it/s, train=0.4426 | valid=0.2877 | fun_rmse=0.3391]
Epoch 24/300: 100%|██████████| 2/2 [00:00<00:00, 177.82it/s, train=0.4426 | valid=0.2877 | fun_rmse=0.3391]
Epoch 25/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 25/300: 100%|██████████| 2/2 [00:00<00:00, 148.38it/s, train=0.4326 | valid=0.2666 | fun_rmse=0.3168]
Epoch 25/300: 100%|██████████| 2/2 [00:00<00:00, 142.37it/s, train=0.4326 | valid=0.2666 | fun_rmse=0.3168]
Epoch 26/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 26/300: 100%|██████████| 2/2 [00:00<00:00, 58.37it/s, train=0.3574 | valid=0.2423 | fun_rmse=0.2962]
Epoch 26/300: 100%|██████████| 2/2 [00:00<00:00, 56.24it/s, train=0.3574 | valid=0.2423 | fun_rmse=0.2962]
Epoch 27/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 27/300: 100%|██████████| 2/2 [00:00<00:00, 62.99it/s, train=0.3990 | valid=0.2155 | fun_rmse=0.2797]
Epoch 27/300: 100%|██████████| 2/2 [00:00<00:00, 62.37it/s, train=0.3990 | valid=0.2155 | fun_rmse=0.2797]
Epoch 28/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 28/300: 100%|██████████| 2/2 [00:00<00:00, 52.30it/s, train=0.3844 | valid=0.2225 | fun_rmse=0.2722]
Epoch 28/300: 100%|██████████| 2/2 [00:00<00:00, 51.06it/s, train=0.3844 | valid=0.2225 | fun_rmse=0.2722]
Epoch 29/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 29/300: 100%|██████████| 2/2 [00:00<00:00, 45.67it/s, train=0.2710 | valid=0.2262 | fun_rmse=0.2737]
Epoch 29/300: 100%|██████████| 2/2 [00:00<00:00, 44.41it/s, train=0.2710 | valid=0.2262 | fun_rmse=0.2737]
Epoch 30/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 30/300: 100%|██████████| 2/2 [00:00<00:00, 71.66it/s, train=0.3178 | valid=0.2236 | fun_rmse=0.2772]
Epoch 30/300: 100%|██████████| 2/2 [00:00<00:00, 70.80it/s, train=0.3178 | valid=0.2236 | fun_rmse=0.2772]
Epoch 31/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 31/300: 100%|██████████| 2/2 [00:00<00:00, 154.29it/s, train=0.3791 | valid=0.2350 | fun_rmse=0.2821]
Epoch 31/300: 100%|██████████| 2/2 [00:00<00:00, 148.09it/s, train=0.3791 | valid=0.2350 | fun_rmse=0.2821]
Epoch 32/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 32/300: 100%|██████████| 2/2 [00:00<00:00, 113.94it/s, train=0.3032 | valid=0.2423 | fun_rmse=0.2826]
Epoch 32/300: 100%|██████████| 2/2 [00:00<00:00, 109.86it/s, train=0.3032 | valid=0.2423 | fun_rmse=0.2826]
Epoch 33/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 33/300: 100%|██████████| 2/2 [00:00<00:00, 102.08it/s, train=0.2284 | valid=0.2504 | fun_rmse=0.2829]
Epoch 33/300: 100%|██████████| 2/2 [00:00<00:00, 97.17it/s, train=0.2284 | valid=0.2504 | fun_rmse=0.2829]
Epoch 34/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 34/300: 100%|██████████| 2/2 [00:00<00:00, 67.11it/s, train=0.3286 | valid=0.2560 | fun_rmse=0.2859]
Epoch 34/300: 100%|██████████| 2/2 [00:00<00:00, 64.96it/s, train=0.3286 | valid=0.2560 | fun_rmse=0.2859]
Epoch 35/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 35/300: 100%|██████████| 2/2 [00:00<00:00, 78.95it/s, train=0.2261 | valid=0.2512 | fun_rmse=0.2827]
Epoch 35/300: 100%|██████████| 2/2 [00:00<00:00, 76.13it/s, train=0.2261 | valid=0.2512 | fun_rmse=0.2827]
Epoch 36/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 36/300: 100%|██████████| 2/2 [00:00<00:00, 49.82it/s, train=0.3455 | valid=0.2351 | fun_rmse=0.2715]
Epoch 36/300: 100%|██████████| 2/2 [00:00<00:00, 48.23it/s, train=0.3455 | valid=0.2351 | fun_rmse=0.2715]
Epoch 37/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 37/300: 100%|██████████| 2/2 [00:00<00:00, 72.01it/s, train=0.2852 | valid=0.2204 | fun_rmse=0.2618]
Epoch 37/300: 100%|██████████| 2/2 [00:00<00:00, 68.89it/s, train=0.2852 | valid=0.2204 | fun_rmse=0.2618]
Epoch 38/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 38/300: 100%|██████████| 2/2 [00:00<00:00, 74.92it/s, train=0.2844 | valid=0.2159 | fun_rmse=0.2553]
Epoch 38/300: 100%|██████████| 2/2 [00:00<00:00, 72.23it/s, train=0.2844 | valid=0.2159 | fun_rmse=0.2553]
Epoch 39/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 39/300: 100%|██████████| 2/2 [00:00<00:00, 49.50it/s, train=0.2220 | valid=0.2151 | fun_rmse=0.2508]
Epoch 39/300: 100%|██████████| 2/2 [00:00<00:00, 47.39it/s, train=0.2220 | valid=0.2151 | fun_rmse=0.2508]
Epoch 40/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 40/300: 100%|██████████| 2/2 [00:00<00:00, 94.17it/s, train=0.2317 | valid=0.2128 | fun_rmse=0.2476]
Epoch 40/300: 100%|██████████| 2/2 [00:00<00:00, 92.35it/s, train=0.2317 | valid=0.2128 | fun_rmse=0.2476]
Epoch 41/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 41/300: 100%|██████████| 2/2 [00:00<00:00, 220.32it/s, train=0.2394 | valid=0.2116 | fun_rmse=0.2468]
Epoch 41/300: 100%|██████████| 2/2 [00:00<00:00, 211.19it/s, train=0.2394 | valid=0.2116 | fun_rmse=0.2468]
Epoch 42/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 42/300: 100%|██████████| 2/2 [00:00<00:00, 193.73it/s, train=0.1739 | valid=0.2112 | fun_rmse=0.2486]
Epoch 42/300: 100%|██████████| 2/2 [00:00<00:00, 187.56it/s, train=0.1739 | valid=0.2112 | fun_rmse=0.2486]
Epoch 43/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 43/300: 100%|██████████| 2/2 [00:00<00:00, 147.43it/s, train=0.2057 | valid=0.2169 | fun_rmse=0.2519]
Epoch 43/300: 100%|██████████| 2/2 [00:00<00:00, 143.68it/s, train=0.2057 | valid=0.2169 | fun_rmse=0.2519]
Epoch 44/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 44/300: 100%|██████████| 2/2 [00:00<00:00, 145.14it/s, train=0.2300 | valid=0.2234 | fun_rmse=0.2554]
Epoch 44/300: 100%|██████████| 2/2 [00:00<00:00, 139.72it/s, train=0.2300 | valid=0.2234 | fun_rmse=0.2554]
Epoch 45/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 45/300: 100%|██████████| 2/2 [00:00<00:00, 71.19it/s, train=0.2022 | valid=0.2248 | fun_rmse=0.2561]
Epoch 45/300: 100%|██████████| 2/2 [00:00<00:00, 68.47it/s, train=0.2022 | valid=0.2248 | fun_rmse=0.2561]
Epoch 46/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 46/300: 100%|██████████| 2/2 [00:00<00:00, 71.60it/s, train=0.1996 | valid=0.2123 | fun_rmse=0.2465]
Epoch 46/300: 100%|██████████| 2/2 [00:00<00:00, 68.71it/s, train=0.1996 | valid=0.2123 | fun_rmse=0.2465]
Epoch 47/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 47/300: 100%|██████████| 2/2 [00:00<00:00, 92.75it/s, train=0.2341 | valid=0.1959 | fun_rmse=0.2348]
Epoch 47/300: 100%|██████████| 2/2 [00:00<00:00, 89.38it/s, train=0.2341 | valid=0.1959 | fun_rmse=0.2348]
Epoch 48/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 48/300: 100%|██████████| 2/2 [00:00<00:00, 75.87it/s, train=0.1824 | valid=0.1844 | fun_rmse=0.2244]
Epoch 48/300: 100%|██████████| 2/2 [00:00<00:00, 72.57it/s, train=0.1824 | valid=0.1844 | fun_rmse=0.2244]
Epoch 49/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 49/300: 100%|██████████| 2/2 [00:00<00:00, 51.40it/s, train=0.2111 | valid=0.1782 | fun_rmse=0.2160]
Epoch 49/300: 100%|██████████| 2/2 [00:00<00:00, 49.84it/s, train=0.2111 | valid=0.1782 | fun_rmse=0.2160]
Epoch 50/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 50/300: 100%|██████████| 2/2 [00:00<00:00, 71.48it/s, train=0.2187 | valid=0.1749 | fun_rmse=0.2091]
Epoch 50/300: 100%|██████████| 2/2 [00:00<00:00, 69.59it/s, train=0.2187 | valid=0.1749 | fun_rmse=0.2091]
Epoch 51/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 51/300: 100%|██████████| 2/2 [00:00<00:00, 116.71it/s, train=0.1852 | valid=0.1788 | fun_rmse=0.2039]
Epoch 51/300: 100%|██████████| 2/2 [00:00<00:00, 114.53it/s, train=0.1852 | valid=0.1788 | fun_rmse=0.2039]
Epoch 52/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 52/300: 100%|██████████| 2/2 [00:00<00:00, 100.71it/s, train=0.2100 | valid=0.1765 | fun_rmse=0.1956]
Epoch 52/300: 100%|██████████| 2/2 [00:00<00:00, 95.35it/s, train=0.2100 | valid=0.1765 | fun_rmse=0.1956]
Epoch 53/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 53/300: 100%|██████████| 2/2 [00:00<00:00, 123.75it/s, train=0.1637 | valid=0.1689 | fun_rmse=0.1848]
Epoch 53/300: 100%|██████████| 2/2 [00:00<00:00, 119.27it/s, train=0.1637 | valid=0.1689 | fun_rmse=0.1848]
Epoch 54/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 54/300: 100%|██████████| 2/2 [00:00<00:00, 103.22it/s, train=0.1707 | valid=0.1515 | fun_rmse=0.1667]
Epoch 54/300: 100%|██████████| 2/2 [00:00<00:00, 99.36it/s, train=0.1707 | valid=0.1515 | fun_rmse=0.1667]
Epoch 55/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 55/300: 100%|██████████| 2/2 [00:00<00:00, 60.55it/s, train=0.1382 | valid=0.1273 | fun_rmse=0.1439]
Epoch 55/300: 100%|██████████| 2/2 [00:00<00:00, 58.76it/s, train=0.1382 | valid=0.1273 | fun_rmse=0.1439]
Epoch 56/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 56/300: 100%|██████████| 2/2 [00:00<00:00, 78.05it/s, train=0.1293 | valid=0.1063 | fun_rmse=0.1254]
Epoch 56/300: 100%|██████████| 2/2 [00:00<00:00, 75.96it/s, train=0.1293 | valid=0.1063 | fun_rmse=0.1254]
Epoch 57/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 57/300: 100%|██████████| 2/2 [00:00<00:00, 69.81it/s, train=0.1270 | valid=0.0899 | fun_rmse=0.1108]
Epoch 57/300: 100%|██████████| 2/2 [00:00<00:00, 68.39it/s, train=0.1270 | valid=0.0899 | fun_rmse=0.1108]
Epoch 58/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 58/300: 100%|██████████| 2/2 [00:00<00:00, 48.78it/s, train=0.1408 | valid=0.0802 | fun_rmse=0.0980]
Epoch 58/300: 100%|██████████| 2/2 [00:00<00:00, 47.24it/s, train=0.1408 | valid=0.0802 | fun_rmse=0.0980]
Epoch 59/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 59/300: 100%|██████████| 2/2 [00:00<00:00, 85.59it/s, train=0.1277 | valid=0.0769 | fun_rmse=0.0883]
Epoch 59/300: 100%|██████████| 2/2 [00:00<00:00, 82.39it/s, train=0.1277 | valid=0.0769 | fun_rmse=0.0883]
Epoch 60/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 60/300: 100%|██████████| 2/2 [00:00<00:00, 117.10it/s, train=0.1091 | valid=0.0667 | fun_rmse=0.0796]
Epoch 60/300: 100%|██████████| 2/2 [00:00<00:00, 115.17it/s, train=0.1091 | valid=0.0667 | fun_rmse=0.0796]
Epoch 61/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 61/300: 100%|██████████| 2/2 [00:00<00:00, 206.18it/s, train=0.1200 | valid=0.0570 | fun_rmse=0.0695]
Epoch 61/300: 100%|██████████| 2/2 [00:00<00:00, 198.50it/s, train=0.1200 | valid=0.0570 | fun_rmse=0.0695]
Epoch 62/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 62/300: 100%|██████████| 2/2 [00:00<00:00, 85.66it/s, train=0.0982 | valid=0.0555 | fun_rmse=0.0675]
Epoch 62/300: 100%|██████████| 2/2 [00:00<00:00, 81.30it/s, train=0.0982 | valid=0.0555 | fun_rmse=0.0675]
Epoch 63/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 63/300: 100%|██████████| 2/2 [00:00<00:00, 84.15it/s, train=0.0950 | valid=0.0611 | fun_rmse=0.0814]
Epoch 63/300: 100%|██████████| 2/2 [00:00<00:00, 82.17it/s, train=0.0950 | valid=0.0611 | fun_rmse=0.0814]
Epoch 64/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 64/300: 100%|██████████| 2/2 [00:00<00:00, 64.13it/s, train=0.1054 | valid=0.0652 | fun_rmse=0.0943]
Epoch 64/300: 100%|██████████| 2/2 [00:00<00:00, 61.60it/s, train=0.1054 | valid=0.0652 | fun_rmse=0.0943]
Epoch 65/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 65/300: 100%|██████████| 2/2 [00:00<00:00, 90.07it/s, train=0.1062 | valid=0.0730 | fun_rmse=0.1008]
Epoch 65/300: 100%|██████████| 2/2 [00:00<00:00, 85.19it/s, train=0.1062 | valid=0.0730 | fun_rmse=0.1008]
Epoch 66/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 66/300: 100%|██████████| 2/2 [00:00<00:00, 77.04it/s, train=0.0799 | valid=0.0931 | fun_rmse=0.1112]
Epoch 66/300: 100%|██████████| 2/2 [00:00<00:00, 73.81it/s, train=0.0799 | valid=0.0931 | fun_rmse=0.1112]
Epoch 67/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 67/300: 100%|██████████| 2/2 [00:00<00:00, 66.15it/s, train=0.0712 | valid=0.1022 | fun_rmse=0.1157]
Epoch 67/300: 100%|██████████| 2/2 [00:00<00:00, 63.57it/s, train=0.0712 | valid=0.1022 | fun_rmse=0.1157]
Epoch 68/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 68/300: 100%|██████████| 2/2 [00:00<00:00, 104.46it/s, train=0.0919 | valid=0.0995 | fun_rmse=0.1124]
Epoch 68/300: 100%|██████████| 2/2 [00:00<00:00, 102.71it/s, train=0.0919 | valid=0.0995 | fun_rmse=0.1124]
Epoch 69/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 69/300: 100%|██████████| 2/2 [00:00<00:00, 86.93it/s, train=0.0765 | valid=0.0978 | fun_rmse=0.1085]
Epoch 69/300: 100%|██████████| 2/2 [00:00<00:00, 84.40it/s, train=0.0765 | valid=0.0978 | fun_rmse=0.1085]
Epoch 70/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 70/300: 100%|██████████| 2/2 [00:00<00:00, 116.33it/s, train=0.0897 | valid=0.0889 | fun_rmse=0.1019]
Epoch 70/300: 100%|██████████| 2/2 [00:00<00:00, 110.82it/s, train=0.0897 | valid=0.0889 | fun_rmse=0.1019]
Epoch 71/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 71/300: 100%|██████████| 2/2 [00:00<00:00, 80.42it/s, train=0.0952 | valid=0.0703 | fun_rmse=0.0897]
Epoch 71/300: 100%|██████████| 2/2 [00:00<00:00, 76.68it/s, train=0.0952 | valid=0.0703 | fun_rmse=0.0897]
Epoch 72/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 72/300: 100%|██████████| 2/2 [00:00<00:00, 82.49it/s, train=0.0675 | valid=0.0606 | fun_rmse=0.0824]
Epoch 72/300: 100%|██████████| 2/2 [00:00<00:00, 80.11it/s, train=0.0675 | valid=0.0606 | fun_rmse=0.0824]
Epoch 73/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 73/300: 100%|██████████| 2/2 [00:00<00:00, 62.64it/s, train=0.0669 | valid=0.0627 | fun_rmse=0.0849]
Epoch 73/300: 100%|██████████| 2/2 [00:00<00:00, 62.10it/s, train=0.0669 | valid=0.0627 | fun_rmse=0.0849]
Epoch 74/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 74/300: 100%|██████████| 2/2 [00:00<00:00, 74.65it/s, train=0.0662 | valid=0.0760 | fun_rmse=0.0969]
Epoch 74/300: 100%|██████████| 2/2 [00:00<00:00, 73.89it/s, train=0.0662 | valid=0.0760 | fun_rmse=0.0969]
Epoch 75/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 75/300: 100%|██████████| 2/2 [00:00<00:00, 62.97it/s, train=0.0824 | valid=0.0935 | fun_rmse=0.1123]
Epoch 75/300: 100%|██████████| 2/2 [00:00<00:00, 61.08it/s, train=0.0824 | valid=0.0935 | fun_rmse=0.1123]
Epoch 76/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 76/300: 100%|██████████| 2/2 [00:00<00:00, 79.60it/s, train=0.0711 | valid=0.0993 | fun_rmse=0.1182]
Epoch 76/300: 100%|██████████| 2/2 [00:00<00:00, 76.93it/s, train=0.0711 | valid=0.0993 | fun_rmse=0.1182]
Epoch 77/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 77/300: 100%|██████████| 2/2 [00:00<00:00, 79.87it/s, train=0.0975 | valid=0.0879 | fun_rmse=0.1086]
Epoch 77/300: 100%|██████████| 2/2 [00:00<00:00, 78.62it/s, train=0.0975 | valid=0.0879 | fun_rmse=0.1086]
Epoch 78/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 78/300: 100%|██████████| 2/2 [00:00<00:00, 165.63it/s, train=0.0559 | valid=0.0762 | fun_rmse=0.0993]
Epoch 78/300: 100%|██████████| 2/2 [00:00<00:00, 161.86it/s, train=0.0559 | valid=0.0762 | fun_rmse=0.0993]
Epoch 79/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 79/300: 100%|██████████| 2/2 [00:00<00:00, 168.10it/s, train=0.0639 | valid=0.0728 | fun_rmse=0.0968]
Epoch 79/300: 100%|██████████| 2/2 [00:00<00:00, 164.16it/s, train=0.0639 | valid=0.0728 | fun_rmse=0.0968]
Epoch 80/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 80/300: 100%|██████████| 2/2 [00:00<00:00, 228.26it/s, train=0.0566 | valid=0.0762 | fun_rmse=0.0976]
Epoch 80/300: 100%|██████████| 2/2 [00:00<00:00, 220.71it/s, train=0.0566 | valid=0.0762 | fun_rmse=0.0976]
Epoch 81/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 81/300: 100%|██████████| 2/2 [00:00<00:00, 227.44it/s, train=0.0641 | valid=0.0732 | fun_rmse=0.0946]
Epoch 81/300: 100%|██████████| 2/2 [00:00<00:00, 220.35it/s, train=0.0641 | valid=0.0732 | fun_rmse=0.0946]
Epoch 82/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 82/300: 100%|██████████| 2/2 [00:00<00:00, 169.75it/s, train=0.0555 | valid=0.0684 | fun_rmse=0.0876]
Epoch 82/300: 100%|██████████| 2/2 [00:00<00:00, 166.05it/s, train=0.0555 | valid=0.0684 | fun_rmse=0.0876]
Epoch 83/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 83/300: 100%|██████████| 2/2 [00:00<00:00, 186.29it/s, train=0.0679 | valid=0.0748 | fun_rmse=0.0931]
Epoch 83/300: 100%|██████████| 2/2 [00:00<00:00, 178.71it/s, train=0.0679 | valid=0.0748 | fun_rmse=0.0931]
Epoch 84/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 84/300: 100%|██████████| 2/2 [00:00<00:00, 77.59it/s, train=0.0619 | valid=0.0872 | fun_rmse=0.1064]
Epoch 84/300: 100%|██████████| 2/2 [00:00<00:00, 73.36it/s, train=0.0619 | valid=0.0872 | fun_rmse=0.1064]
Epoch 85/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 85/300: 100%|██████████| 2/2 [00:00<00:00, 54.54it/s, train=0.0848 | valid=0.0915 | fun_rmse=0.1138]
Epoch 85/300: 100%|██████████| 2/2 [00:00<00:00, 54.07it/s, train=0.0848 | valid=0.0915 | fun_rmse=0.1138]
Epoch 86/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 86/300: 100%|██████████| 2/2 [00:00<00:00, 80.92it/s, train=0.0728 | valid=0.1017 | fun_rmse=0.1227]
Epoch 86/300: 100%|██████████| 2/2 [00:00<00:00, 77.27it/s, train=0.0728 | valid=0.1017 | fun_rmse=0.1227]
Epoch 87/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 87/300: 100%|██████████| 2/2 [00:00<00:00, 61.23it/s, train=0.0926 | valid=0.1051 | fun_rmse=0.1259]
Epoch 87/300: 100%|██████████| 2/2 [00:00<00:00, 59.21it/s, train=0.0926 | valid=0.1051 | fun_rmse=0.1259]
Epoch 88/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 88/300: 100%|██████████| 2/2 [00:00<00:00, 51.77it/s, train=0.0641 | valid=0.0915 | fun_rmse=0.1132]
Epoch 88/300: 100%|██████████| 2/2 [00:00<00:00, 50.68it/s, train=0.0641 | valid=0.0915 | fun_rmse=0.1132]
Epoch 89/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 89/300: 100%|██████████| 2/2 [00:00<00:00, 72.12it/s, train=0.0649 | valid=0.0709 | fun_rmse=0.0937]
Epoch 89/300: 100%|██████████| 2/2 [00:00<00:00, 71.25it/s, train=0.0649 | valid=0.0709 | fun_rmse=0.0937]
Epoch 90/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 90/300: 100%|██████████| 2/2 [00:00<00:00, 230.65it/s, train=0.0720 | valid=0.0598 | fun_rmse=0.0830]
Epoch 90/300: 100%|██████████| 2/2 [00:00<00:00, 221.71it/s, train=0.0720 | valid=0.0598 | fun_rmse=0.0830]
Epoch 91/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 91/300: 100%|██████████| 2/2 [00:00<00:00, 99.14it/s, train=0.0646 | valid=0.0664 | fun_rmse=0.0901]
Epoch 91/300: 100%|██████████| 2/2 [00:00<00:00, 95.23it/s, train=0.0646 | valid=0.0664 | fun_rmse=0.0901]
Epoch 92/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 92/300: 100%|██████████| 2/2 [00:00<00:00, 46.50it/s, train=0.0667 | valid=0.0800 | fun_rmse=0.1077]
Epoch 92/300: 100%|██████████| 2/2 [00:00<00:00, 46.15it/s, train=0.0667 | valid=0.0800 | fun_rmse=0.1077]
Epoch 93/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 93/300: 100%|██████████| 2/2 [00:00<00:00, 61.10it/s, train=0.0815 | valid=0.0975 | fun_rmse=0.1226]
Epoch 93/300: 100%|██████████| 2/2 [00:00<00:00, 58.63it/s, train=0.0815 | valid=0.0975 | fun_rmse=0.1226]
Epoch 94/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 94/300: 100%|██████████| 2/2 [00:00<00:00, 152.27it/s, train=0.0686 | valid=0.1073 | fun_rmse=0.1283]
Epoch 94/300: 100%|██████████| 2/2 [00:00<00:00, 147.02it/s, train=0.0686 | valid=0.1073 | fun_rmse=0.1283]
Epoch 95/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 95/300: 100%|██████████| 2/2 [00:00<00:00, 99.60it/s, train=0.0860 | valid=0.1026 | fun_rmse=0.1233]
Epoch 95/300: 100%|██████████| 2/2 [00:00<00:00, 97.54it/s, train=0.0860 | valid=0.1026 | fun_rmse=0.1233]
Epoch 96/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 96/300: 100%|██████████| 2/2 [00:00<00:00, 51.36it/s, train=0.0784 | valid=0.0926 | fun_rmse=0.1169]
Epoch 96/300: 100%|██████████| 2/2 [00:00<00:00, 50.31it/s, train=0.0784 | valid=0.0926 | fun_rmse=0.1169]
Epoch 97/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 97/300: 100%|██████████| 2/2 [00:00<00:00, 68.58it/s, train=0.0604 | valid=0.0896 | fun_rmse=0.1117]
Epoch 97/300: 100%|██████████| 2/2 [00:00<00:00, 67.41it/s, train=0.0604 | valid=0.0896 | fun_rmse=0.1117]
Epoch 98/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 98/300: 100%|██████████| 2/2 [00:00<00:00, 113.44it/s, train=0.0694 | valid=0.0880 | fun_rmse=0.1068]
Epoch 98/300: 100%|██████████| 2/2 [00:00<00:00, 110.77it/s, train=0.0694 | valid=0.0880 | fun_rmse=0.1068]
Epoch 99/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 99/300: 100%|██████████| 2/2 [00:00<00:00, 150.73it/s, train=0.0584 | valid=0.0875 | fun_rmse=0.1065]
Epoch 99/300: 100%|██████████| 2/2 [00:00<00:00, 146.33it/s, train=0.0584 | valid=0.0875 | fun_rmse=0.1065]
Epoch 100/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 100/300: 100%|██████████| 2/2 [00:00<00:00, 197.43it/s, train=0.0518 | valid=0.0910 | fun_rmse=0.1083]
Epoch 100/300: 100%|██████████| 2/2 [00:00<00:00, 191.18it/s, train=0.0518 | valid=0.0910 | fun_rmse=0.1083]
Epoch 101/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 101/300: 100%|██████████| 2/2 [00:00<00:00, 148.57it/s, train=0.0835 | valid=0.0943 | fun_rmse=0.1098]
Epoch 101/300: 100%|██████████| 2/2 [00:00<00:00, 143.93it/s, train=0.0835 | valid=0.0943 | fun_rmse=0.1098]
Epoch 102/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 102/300: 100%|██████████| 2/2 [00:00<00:00, 108.39it/s, train=0.0773 | valid=0.0987 | fun_rmse=0.1143]
Epoch 102/300: 100%|██████████| 2/2 [00:00<00:00, 103.31it/s, train=0.0773 | valid=0.0987 | fun_rmse=0.1143]
Epoch 103/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 103/300: 100%|██████████| 2/2 [00:00<00:00, 98.28it/s, train=0.0645 | valid=0.1050 | fun_rmse=0.1213]
Epoch 103/300: 100%|██████████| 2/2 [00:00<00:00, 94.72it/s, train=0.0645 | valid=0.1050 | fun_rmse=0.1213]
Epoch 104/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 104/300: 100%|██████████| 2/2 [00:00<00:00, 59.03it/s, train=0.0757 | valid=0.1017 | fun_rmse=0.1204]
Epoch 104/300: 100%|██████████| 2/2 [00:00<00:00, 56.89it/s, train=0.0757 | valid=0.1017 | fun_rmse=0.1204]
Epoch 105/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 105/300: 100%|██████████| 2/2 [00:00<00:00, 37.27it/s, train=0.0891 | valid=0.0886 | fun_rmse=0.1154]
Epoch 105/300: 100%|██████████| 2/2 [00:00<00:00, 36.19it/s, train=0.0891 | valid=0.0886 | fun_rmse=0.1154]
Epoch 106/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 106/300: 100%|██████████| 2/2 [00:00<00:00, 72.69it/s, train=0.0531 | valid=0.0860 | fun_rmse=0.1126]
Epoch 106/300: 100%|██████████| 2/2 [00:00<00:00, 69.50it/s, train=0.0531 | valid=0.0860 | fun_rmse=0.1126]
Epoch 107/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 107/300: 100%|██████████| 2/2 [00:00<00:00, 84.83it/s, train=0.0665 | valid=0.0854 | fun_rmse=0.1068]
Epoch 107/300: 100%|██████████| 2/2 [00:00<00:00, 83.26it/s, train=0.0665 | valid=0.0854 | fun_rmse=0.1068]
Epoch 108/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 108/300: 100%|██████████| 2/2 [00:00<00:00, 101.89it/s, train=0.0587 | valid=0.0791 | fun_rmse=0.1015]
Epoch 108/300: 100%|██████████| 2/2 [00:00<00:00, 99.74it/s, train=0.0587 | valid=0.0791 | fun_rmse=0.1015]
Epoch 109/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 109/300: 100%|██████████| 2/2 [00:00<00:00, 204.30it/s, train=0.0550 | valid=0.0758 | fun_rmse=0.1041]
Epoch 109/300: 100%|██████████| 2/2 [00:00<00:00, 197.38it/s, train=0.0550 | valid=0.0758 | fun_rmse=0.1041]
Epoch 110/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 110/300: 100%|██████████| 2/2 [00:00<00:00, 128.84it/s, train=0.0805 | valid=0.0819 | fun_rmse=0.1101]
Epoch 110/300: 100%|██████████| 2/2 [00:00<00:00, 126.65it/s, train=0.0805 | valid=0.0819 | fun_rmse=0.1101]
Epoch 111/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 111/300: 100%|██████████| 2/2 [00:00<00:00, 154.45it/s, train=0.0704 | valid=0.0858 | fun_rmse=0.1126]
Epoch 111/300: 100%|██████████| 2/2 [00:00<00:00, 149.10it/s, train=0.0704 | valid=0.0858 | fun_rmse=0.1126]
Epoch 112/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 112/300: 100%|██████████| 2/2 [00:00<00:00, 141.98it/s, train=0.0600 | valid=0.0863 | fun_rmse=0.1100]
Epoch 112/300: 100%|██████████| 2/2 [00:00<00:00, 138.80it/s, train=0.0600 | valid=0.0863 | fun_rmse=0.1100]
Epoch 113/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 113/300: 100%|██████████| 2/2 [00:00<00:00, 62.69it/s, train=0.0579 | valid=0.0931 | fun_rmse=0.1127]
Epoch 113/300: 100%|██████████| 2/2 [00:00<00:00, 62.17it/s, train=0.0579 | valid=0.0931 | fun_rmse=0.1127]
Epoch 114/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 114/300: 100%|██████████| 2/2 [00:00<00:00, 43.34it/s, train=0.0480 | valid=0.1064 | fun_rmse=0.1268]
Epoch 114/300: 100%|██████████| 2/2 [00:00<00:00, 42.22it/s, train=0.0480 | valid=0.1064 | fun_rmse=0.1268]
Epoch 115/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 115/300: 100%|██████████| 2/2 [00:00<00:00, 55.84it/s, train=0.0575 | valid=0.1023 | fun_rmse=0.1270]
Epoch 115/300: 100%|██████████| 2/2 [00:00<00:00, 53.45it/s, train=0.0575 | valid=0.1023 | fun_rmse=0.1270]
Epoch 116/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 116/300: 100%|██████████| 2/2 [00:00<00:00, 55.96it/s, train=0.0733 | valid=0.0835 | fun_rmse=0.1105]
Epoch 116/300: 100%|██████████| 2/2 [00:00<00:00, 55.40it/s, train=0.0733 | valid=0.0835 | fun_rmse=0.1105]
Epoch 117/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 117/300: 100%|██████████| 2/2 [00:00<00:00, 170.54it/s, train=0.0635 | valid=0.0740 | fun_rmse=0.1003]
Epoch 117/300: 100%|██████████| 2/2 [00:00<00:00, 166.18it/s, train=0.0635 | valid=0.0740 | fun_rmse=0.1003]
Epoch 118/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 118/300: 100%|██████████| 2/2 [00:00<00:00, 185.84it/s, train=0.0787 | valid=0.0778 | fun_rmse=0.1012]
Epoch 118/300: 100%|██████████| 2/2 [00:00<00:00, 181.04it/s, train=0.0787 | valid=0.0778 | fun_rmse=0.1012]
Epoch 119/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 119/300: 100%|██████████| 2/2 [00:00<00:00, 223.67it/s, train=0.0809 | valid=0.0837 | fun_rmse=0.1073]
Epoch 119/300: 100%|██████████| 2/2 [00:00<00:00, 216.66it/s, train=0.0809 | valid=0.0837 | fun_rmse=0.1073]
Epoch 120/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 120/300: 100%|██████████| 2/2 [00:00<00:00, 190.87it/s, train=0.0633 | valid=0.0908 | fun_rmse=0.1181]
Epoch 120/300: 100%|██████████| 2/2 [00:00<00:00, 185.47it/s, train=0.0633 | valid=0.0908 | fun_rmse=0.1181]
Epoch 121/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 121/300: 100%|██████████| 2/2 [00:00<00:00, 192.52it/s, train=0.0718 | valid=0.0988 | fun_rmse=0.1265]
Epoch 121/300: 100%|██████████| 2/2 [00:00<00:00, 185.13it/s, train=0.0718 | valid=0.0988 | fun_rmse=0.1265]
Epoch 122/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 122/300: 100%|██████████| 2/2 [00:00<00:00, 137.01it/s, train=0.0768 | valid=0.1074 | fun_rmse=0.1304]
Epoch 122/300: 100%|██████████| 2/2 [00:00<00:00, 131.25it/s, train=0.0768 | valid=0.1074 | fun_rmse=0.1304]
Epoch 123/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 123/300: 100%|██████████| 2/2 [00:00<00:00, 124.77it/s, train=0.0757 | valid=0.1126 | fun_rmse=0.1303]
Epoch 123/300: 100%|██████████| 2/2 [00:00<00:00, 119.28it/s, train=0.0757 | valid=0.1126 | fun_rmse=0.1303]
Epoch 124/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 124/300: 100%|██████████| 2/2 [00:00<00:00, 109.04it/s, train=0.0617 | valid=0.1102 | fun_rmse=0.1259]
Epoch 124/300: 100%|██████████| 2/2 [00:00<00:00, 104.53it/s, train=0.0617 | valid=0.1102 | fun_rmse=0.1259]
Epoch 125/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 125/300: 100%|██████████| 2/2 [00:00<00:00, 61.75it/s, train=0.0801 | valid=0.1011 | fun_rmse=0.1185]
Epoch 125/300: 100%|██████████| 2/2 [00:00<00:00, 59.24it/s, train=0.0801 | valid=0.1011 | fun_rmse=0.1185]
Epoch 126/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 126/300: 100%|██████████| 2/2 [00:00<00:00, 81.40it/s, train=0.0695 | valid=0.0854 | fun_rmse=0.1089]
Epoch 126/300: 100%|██████████| 2/2 [00:00<00:00, 78.44it/s, train=0.0695 | valid=0.0854 | fun_rmse=0.1089]
Epoch 127/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 127/300: 100%|██████████| 2/2 [00:00<00:00, 62.12it/s, train=0.0612 | valid=0.0760 | fun_rmse=0.1067]
Epoch 127/300: 100%|██████████| 2/2 [00:00<00:00, 59.11it/s, train=0.0612 | valid=0.0760 | fun_rmse=0.1067]
Epoch 128/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 128/300: 100%|██████████| 2/2 [00:00<00:00, 59.17it/s, train=0.0598 | valid=0.0771 | fun_rmse=0.1123]
Epoch 128/300: 100%|██████████| 2/2 [00:00<00:00, 57.41it/s, train=0.0598 | valid=0.0771 | fun_rmse=0.1123]
Epoch 129/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 129/300: 100%|██████████| 2/2 [00:00<00:00, 65.45it/s, train=0.0748 | valid=0.0803 | fun_rmse=0.1189]
Epoch 129/300: 100%|██████████| 2/2 [00:00<00:00, 64.71it/s, train=0.0748 | valid=0.0803 | fun_rmse=0.1189]
Epoch 130/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 130/300: 100%|██████████| 2/2 [00:00<00:00, 198.18it/s, train=0.0629 | valid=0.0858 | fun_rmse=0.1227]
Epoch 130/300: 100%|██████████| 2/2 [00:00<00:00, 194.17it/s, train=0.0629 | valid=0.0858 | fun_rmse=0.1227]
Epoch 131/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 131/300: 100%|██████████| 2/2 [00:00<00:00, 107.60it/s, train=0.0466 | valid=0.0991 | fun_rmse=0.1283]
Epoch 131/300: 100%|██████████| 2/2 [00:00<00:00, 106.03it/s, train=0.0466 | valid=0.0991 | fun_rmse=0.1283]
Epoch 132/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 132/300: 100%|██████████| 2/2 [00:00<00:00, 65.93it/s, train=0.0673 | valid=0.1096 | fun_rmse=0.1334]
Epoch 132/300: 100%|██████████| 2/2 [00:00<00:00, 65.44it/s, train=0.0673 | valid=0.1096 | fun_rmse=0.1334]
Epoch 133/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 133/300: 100%|██████████| 2/2 [00:00<00:00, 69.67it/s, train=0.0596 | valid=0.1084 | fun_rmse=0.1284]
Epoch 133/300: 100%|██████████| 2/2 [00:00<00:00, 66.96it/s, train=0.0596 | valid=0.1084 | fun_rmse=0.1284]
Epoch 134/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 134/300: 100%|██████████| 2/2 [00:00<00:00, 55.13it/s, train=0.0625 | valid=0.0936 | fun_rmse=0.1131]
Epoch 134/300: 100%|██████████| 2/2 [00:00<00:00, 52.97it/s, train=0.0625 | valid=0.0936 | fun_rmse=0.1131]
Epoch 135/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 135/300: 100%|██████████| 2/2 [00:00<00:00, 46.45it/s, train=0.0660 | valid=0.0794 | fun_rmse=0.1016]
Epoch 135/300: 100%|██████████| 2/2 [00:00<00:00, 45.10it/s, train=0.0660 | valid=0.0794 | fun_rmse=0.1016]
Epoch 136/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 136/300: 100%|██████████| 2/2 [00:00<00:00, 69.07it/s, train=0.0493 | valid=0.0742 | fun_rmse=0.0998]
Epoch 136/300: 100%|██████████| 2/2 [00:00<00:00, 68.37it/s, train=0.0493 | valid=0.0742 | fun_rmse=0.0998]
Epoch 137/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 137/300: 100%|██████████| 2/2 [00:00<00:00, 83.58it/s, train=0.0691 | valid=0.0792 | fun_rmse=0.1055]
Epoch 137/300: 100%|██████████| 2/2 [00:00<00:00, 82.49it/s, train=0.0691 | valid=0.0792 | fun_rmse=0.1055]
Epoch 138/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 138/300: 100%|██████████| 2/2 [00:00<00:00, 191.45it/s, train=0.0520 | valid=0.0825 | fun_rmse=0.1111]
Epoch 138/300: 100%|██████████| 2/2 [00:00<00:00, 184.37it/s, train=0.0520 | valid=0.0825 | fun_rmse=0.1111]
Epoch 139/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 139/300: 100%|██████████| 2/2 [00:00<00:00, 174.94it/s, train=0.0496 | valid=0.0808 | fun_rmse=0.1118]
Epoch 139/300: 100%|██████████| 2/2 [00:00<00:00, 170.20it/s, train=0.0496 | valid=0.0808 | fun_rmse=0.1118]
Epoch 140/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 140/300: 100%|██████████| 2/2 [00:00<00:00, 103.61it/s, train=0.0563 | valid=0.0874 | fun_rmse=0.1157]
Epoch 140/300: 100%|██████████| 2/2 [00:00<00:00, 100.83it/s, train=0.0563 | valid=0.0874 | fun_rmse=0.1157]
Epoch 141/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 141/300: 100%|██████████| 2/2 [00:00<00:00, 54.23it/s, train=0.0529 | valid=0.0992 | fun_rmse=0.1233]
Epoch 141/300: 100%|██████████| 2/2 [00:00<00:00, 52.84it/s, train=0.0529 | valid=0.0992 | fun_rmse=0.1233]
Epoch 142/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 142/300: 100%|██████████| 2/2 [00:00<00:00, 66.91it/s, train=0.0558 | valid=0.0981 | fun_rmse=0.1192]
Epoch 142/300: 100%|██████████| 2/2 [00:00<00:00, 64.55it/s, train=0.0558 | valid=0.0981 | fun_rmse=0.1192]
Epoch 143/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 143/300: 100%|██████████| 2/2 [00:00<00:00, 56.69it/s, train=0.0449 | valid=0.0905 | fun_rmse=0.1129]
Epoch 143/300: 100%|██████████| 2/2 [00:00<00:00, 54.57it/s, train=0.0449 | valid=0.0905 | fun_rmse=0.1129]
Epoch 144/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 144/300: 100%|██████████| 2/2 [00:00<00:00, 70.12it/s, train=0.0639 | valid=0.0936 | fun_rmse=0.1192]
Epoch 144/300: 100%|██████████| 2/2 [00:00<00:00, 69.53it/s, train=0.0639 | valid=0.0936 | fun_rmse=0.1192]
Epoch 145/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 145/300: 100%|██████████| 2/2 [00:00<00:00, 64.10it/s, train=0.0585 | valid=0.1034 | fun_rmse=0.1294]
Epoch 145/300: 100%|██████████| 2/2 [00:00<00:00, 63.46it/s, train=0.0585 | valid=0.1034 | fun_rmse=0.1294]
Epoch 146/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 146/300: 100%|██████████| 2/2 [00:00<00:00, 116.97it/s, train=0.0566 | valid=0.1081 | fun_rmse=0.1359]
Epoch 146/300: 100%|██████████| 2/2 [00:00<00:00, 114.39it/s, train=0.0566 | valid=0.1081 | fun_rmse=0.1359]
Epoch 147/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 147/300: 100%|██████████| 2/2 [00:00<00:00, 133.55it/s, train=0.0535 | valid=0.1100 | fun_rmse=0.1380]
Epoch 147/300: 100%|██████████| 2/2 [00:00<00:00, 130.34it/s, train=0.0535 | valid=0.1100 | fun_rmse=0.1380]
Epoch 148/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 148/300: 100%|██████████| 2/2 [00:00<00:00, 189.35it/s, train=0.0617 | valid=0.1074 | fun_rmse=0.1343]
Epoch 148/300: 100%|██████████| 2/2 [00:00<00:00, 182.50it/s, train=0.0617 | valid=0.1074 | fun_rmse=0.1343]
Epoch 149/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 149/300: 100%|██████████| 2/2 [00:00<00:00, 95.87it/s, train=0.0684 | valid=0.1011 | fun_rmse=0.1258]
Epoch 149/300: 100%|██████████| 2/2 [00:00<00:00, 93.52it/s, train=0.0684 | valid=0.1011 | fun_rmse=0.1258]
Epoch 150/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 150/300: 100%|██████████| 2/2 [00:00<00:00, 78.21it/s, train=0.0513 | valid=0.0930 | fun_rmse=0.1182]
Epoch 150/300: 100%|██████████| 2/2 [00:00<00:00, 73.73it/s, train=0.0513 | valid=0.0930 | fun_rmse=0.1182]
Epoch 151/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 151/300: 100%|██████████| 2/2 [00:00<00:00, 42.94it/s, train=0.0517 | valid=0.0936 | fun_rmse=0.1194]
Epoch 151/300: 100%|██████████| 2/2 [00:00<00:00, 41.61it/s, train=0.0517 | valid=0.0936 | fun_rmse=0.1194]
Epoch 152/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 152/300: 100%|██████████| 2/2 [00:00<00:00, 71.03it/s, train=0.0487 | valid=0.0966 | fun_rmse=0.1203]
Epoch 152/300: 100%|██████████| 2/2 [00:00<00:00, 68.79it/s, train=0.0487 | valid=0.0966 | fun_rmse=0.1203]
Epoch 153/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 153/300: 100%|██████████| 2/2 [00:00<00:00, 79.95it/s, train=0.0548 | valid=0.0956 | fun_rmse=0.1195]
Epoch 153/300: 100%|██████████| 2/2 [00:00<00:00, 77.38it/s, train=0.0548 | valid=0.0956 | fun_rmse=0.1195]
Epoch 154/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 154/300: 100%|██████████| 2/2 [00:00<00:00, 57.93it/s, train=0.0488 | valid=0.0962 | fun_rmse=0.1241]
Epoch 154/300: 100%|██████████| 2/2 [00:00<00:00, 57.47it/s, train=0.0488 | valid=0.0962 | fun_rmse=0.1241]
Epoch 155/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 155/300: 100%|██████████| 2/2 [00:00<00:00, 125.42it/s, train=0.0592 | valid=0.1025 | fun_rmse=0.1322]
Epoch 155/300: 100%|██████████| 2/2 [00:00<00:00, 122.94it/s, train=0.0592 | valid=0.1025 | fun_rmse=0.1322]
Epoch 156/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 156/300: 100%|██████████| 2/2 [00:00<00:00, 163.09it/s, train=0.0584 | valid=0.1066 | fun_rmse=0.1364]
Epoch 156/300: 100%|██████████| 2/2 [00:00<00:00, 159.79it/s, train=0.0584 | valid=0.1066 | fun_rmse=0.1364]
Epoch 157/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 157/300: 100%|██████████| 2/2 [00:00<00:00, 181.77it/s, train=0.0584 | valid=0.1087 | fun_rmse=0.1382]
Epoch 157/300: 100%|██████████| 2/2 [00:00<00:00, 177.38it/s, train=0.0584 | valid=0.1087 | fun_rmse=0.1382]
Epoch 158/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 158/300: 100%|██████████| 2/2 [00:00<00:00, 146.36it/s, train=0.0617 | valid=0.1099 | fun_rmse=0.1395]
Epoch 158/300: 100%|██████████| 2/2 [00:00<00:00, 141.85it/s, train=0.0617 | valid=0.1099 | fun_rmse=0.1395]
Epoch 159/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 159/300: 100%|██████████| 2/2 [00:00<00:00, 73.65it/s, train=0.0529 | valid=0.1095 | fun_rmse=0.1382]
Epoch 159/300: 100%|██████████| 2/2 [00:00<00:00, 69.86it/s, train=0.0529 | valid=0.1095 | fun_rmse=0.1382]
Epoch 160/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 160/300: 100%|██████████| 2/2 [00:00<00:00, 52.60it/s, train=0.0595 | valid=0.1077 | fun_rmse=0.1346]
Epoch 160/300: 100%|██████████| 2/2 [00:00<00:00, 50.95it/s, train=0.0595 | valid=0.1077 | fun_rmse=0.1346]
Epoch 161/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 161/300: 100%|██████████| 2/2 [00:00<00:00, 48.43it/s, train=0.0437 | valid=0.1052 | fun_rmse=0.1325]
Epoch 161/300: 100%|██████████| 2/2 [00:00<00:00, 46.54it/s, train=0.0437 | valid=0.1052 | fun_rmse=0.1325]
Epoch 162/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 162/300: 100%|██████████| 2/2 [00:00<00:00, 39.49it/s, train=0.0507 | valid=0.1010 | fun_rmse=0.1300]
Epoch 162/300: 100%|██████████| 2/2 [00:00<00:00, 38.42it/s, train=0.0507 | valid=0.1010 | fun_rmse=0.1300]
Epoch 163/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 163/300: 100%|██████████| 2/2 [00:00<00:00, 83.79it/s, train=0.0609 | valid=0.1011 | fun_rmse=0.1309]
Epoch 163/300: 100%|██████████| 2/2 [00:00<00:00, 79.51it/s, train=0.0609 | valid=0.1011 | fun_rmse=0.1309]
Epoch 164/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 164/300: 100%|██████████| 2/2 [00:00<00:00, 129.06it/s, train=0.0454 | valid=0.1085 | fun_rmse=0.1363]
Epoch 164/300: 100%|██████████| 2/2 [00:00<00:00, 126.76it/s, train=0.0454 | valid=0.1085 | fun_rmse=0.1363]
Epoch 165/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 165/300: 100%|██████████| 2/2 [00:00<00:00, 148.67it/s, train=0.0608 | valid=0.1181 | fun_rmse=0.1429]
Epoch 165/300: 100%|██████████| 2/2 [00:00<00:00, 143.63it/s, train=0.0608 | valid=0.1181 | fun_rmse=0.1429]
Epoch 166/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 166/300: 100%|██████████| 2/2 [00:00<00:00, 80.45it/s, train=0.0579 | valid=0.1234 | fun_rmse=0.1483]
Epoch 166/300: 100%|██████████| 2/2 [00:00<00:00, 77.12it/s, train=0.0579 | valid=0.1234 | fun_rmse=0.1483]
Epoch 167/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 167/300: 100%|██████████| 2/2 [00:00<00:00, 62.77it/s, train=0.0667 | valid=0.1211 | fun_rmse=0.1468]
Epoch 167/300: 100%|██████████| 2/2 [00:00<00:00, 59.77it/s, train=0.0667 | valid=0.1211 | fun_rmse=0.1468]
Epoch 168/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 168/300: 100%|██████████| 2/2 [00:00<00:00, 53.14it/s, train=0.0561 | valid=0.1168 | fun_rmse=0.1440]
Epoch 168/300: 100%|██████████| 2/2 [00:00<00:00, 51.49it/s, train=0.0561 | valid=0.1168 | fun_rmse=0.1440]
Epoch 169/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 169/300: 100%|██████████| 2/2 [00:00<00:00, 47.11it/s, train=0.0494 | valid=0.1132 | fun_rmse=0.1394]
Epoch 169/300: 100%|██████████| 2/2 [00:00<00:00, 45.84it/s, train=0.0494 | valid=0.1132 | fun_rmse=0.1394]
Epoch 170/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 170/300: 100%|██████████| 2/2 [00:00<00:00, 81.84it/s, train=0.0507 | valid=0.1107 | fun_rmse=0.1357]
Epoch 170/300: 100%|██████████| 2/2 [00:00<00:00, 78.66it/s, train=0.0507 | valid=0.1107 | fun_rmse=0.1357]
Epoch 171/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 171/300: 100%|██████████| 2/2 [00:00<00:00, 90.06it/s, train=0.0459 | valid=0.1110 | fun_rmse=0.1352]
Epoch 171/300: 100%|██████████| 2/2 [00:00<00:00, 87.58it/s, train=0.0459 | valid=0.1110 | fun_rmse=0.1352]
Epoch 172/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 172/300: 100%|██████████| 2/2 [00:00<00:00, 72.89it/s, train=0.0462 | valid=0.1140 | fun_rmse=0.1377]
Epoch 172/300: 100%|██████████| 2/2 [00:00<00:00, 71.29it/s, train=0.0462 | valid=0.1140 | fun_rmse=0.1377]
Epoch 173/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 173/300: 100%|██████████| 2/2 [00:00<00:00, 65.26it/s, train=0.0500 | valid=0.1136 | fun_rmse=0.1419]
Epoch 173/300: 100%|██████████| 2/2 [00:00<00:00, 62.57it/s, train=0.0500 | valid=0.1136 | fun_rmse=0.1419]
Epoch 174/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 174/300: 100%|██████████| 2/2 [00:00<00:00, 79.90it/s, train=0.0429 | valid=0.1220 | fun_rmse=0.1486]
Epoch 174/300: 100%|██████████| 2/2 [00:00<00:00, 77.83it/s, train=0.0429 | valid=0.1220 | fun_rmse=0.1486]
Epoch 175/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 175/300: 100%|██████████| 2/2 [00:00<00:00, 70.71it/s, train=0.0464 | valid=0.1168 | fun_rmse=0.1467]
Epoch 175/300: 100%|██████████| 2/2 [00:00<00:00, 68.01it/s, train=0.0464 | valid=0.1168 | fun_rmse=0.1467]
Epoch 176/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 176/300: 100%|██████████| 2/2 [00:00<00:00, 119.12it/s, train=0.0457 | valid=0.1066 | fun_rmse=0.1402]
Epoch 176/300: 100%|██████████| 2/2 [00:00<00:00, 115.40it/s, train=0.0457 | valid=0.1066 | fun_rmse=0.1402]
Epoch 177/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 177/300: 100%|██████████| 2/2 [00:00<00:00, 43.10it/s, train=0.0453 | valid=0.1043 | fun_rmse=0.1354]
Epoch 177/300: 100%|██████████| 2/2 [00:00<00:00, 42.80it/s, train=0.0453 | valid=0.1043 | fun_rmse=0.1354]
Epoch 178/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 178/300: 100%|██████████| 2/2 [00:00<00:00, 65.13it/s, train=0.0454 | valid=0.1089 | fun_rmse=0.1355]
Epoch 178/300: 100%|██████████| 2/2 [00:00<00:00, 64.09it/s, train=0.0454 | valid=0.1089 | fun_rmse=0.1355]
Epoch 179/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 179/300: 100%|██████████| 2/2 [00:00<00:00, 55.91it/s, train=0.0468 | valid=0.1159 | fun_rmse=0.1399]
Epoch 179/300: 100%|██████████| 2/2 [00:00<00:00, 53.23it/s, train=0.0468 | valid=0.1159 | fun_rmse=0.1399]
Epoch 180/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 180/300: 100%|██████████| 2/2 [00:00<00:00, 100.65it/s, train=0.0504 | valid=0.1214 | fun_rmse=0.1465]
Epoch 180/300: 100%|██████████| 2/2 [00:00<00:00, 99.01it/s, train=0.0504 | valid=0.1214 | fun_rmse=0.1465]
Epoch 181/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 181/300: 100%|██████████| 2/2 [00:00<00:00, 101.35it/s, train=0.0456 | valid=0.1213 | fun_rmse=0.1527]
Epoch 181/300: 100%|██████████| 2/2 [00:00<00:00, 98.95it/s, train=0.0456 | valid=0.1213 | fun_rmse=0.1527]
Epoch 182/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 182/300: 100%|██████████| 2/2 [00:00<00:00, 71.07it/s, train=0.0473 | valid=0.1202 | fun_rmse=0.1522]
Epoch 182/300: 100%|██████████| 2/2 [00:00<00:00, 68.69it/s, train=0.0473 | valid=0.1202 | fun_rmse=0.1522]
Epoch 183/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 183/300: 100%|██████████| 2/2 [00:00<00:00, 74.61it/s, train=0.0475 | valid=0.1125 | fun_rmse=0.1471]
Epoch 183/300: 100%|██████████| 2/2 [00:00<00:00, 72.37it/s, train=0.0475 | valid=0.1125 | fun_rmse=0.1471]
Epoch 184/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 184/300: 100%|██████████| 2/2 [00:00<00:00, 72.24it/s, train=0.0418 | valid=0.1096 | fun_rmse=0.1443]
Epoch 184/300: 100%|██████████| 2/2 [00:00<00:00, 69.56it/s, train=0.0418 | valid=0.1096 | fun_rmse=0.1443]
Epoch 185/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 185/300: 100%|██████████| 2/2 [00:00<00:00, 64.47it/s, train=0.0462 | valid=0.1094 | fun_rmse=0.1424]
Epoch 185/300: 100%|██████████| 2/2 [00:00<00:00, 62.45it/s, train=0.0462 | valid=0.1094 | fun_rmse=0.1424]
Epoch 186/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 186/300: 100%|██████████| 2/2 [00:00<00:00, 76.52it/s, train=0.0522 | valid=0.1092 | fun_rmse=0.1401]
Epoch 186/300: 100%|██████████| 2/2 [00:00<00:00, 74.33it/s, train=0.0522 | valid=0.1092 | fun_rmse=0.1401]
Epoch 187/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 187/300: 100%|██████████| 2/2 [00:00<00:00, 87.73it/s, train=0.0402 | valid=0.1085 | fun_rmse=0.1380]
Epoch 187/300: 100%|██████████| 2/2 [00:00<00:00, 84.38it/s, train=0.0402 | valid=0.1085 | fun_rmse=0.1380]
Epoch 188/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 188/300: 100%|██████████| 2/2 [00:00<00:00, 102.67it/s, train=0.0512 | valid=0.1103 | fun_rmse=0.1376]
Epoch 188/300: 100%|██████████| 2/2 [00:00<00:00, 101.15it/s, train=0.0512 | valid=0.1103 | fun_rmse=0.1376]
Epoch 189/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 189/300: 100%|██████████| 2/2 [00:00<00:00, 175.52it/s, train=0.0488 | valid=0.1182 | fun_rmse=0.1437]
Epoch 189/300: 100%|██████████| 2/2 [00:00<00:00, 171.78it/s, train=0.0488 | valid=0.1182 | fun_rmse=0.1437]
Epoch 190/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 190/300: 100%|██████████| 2/2 [00:00<00:00, 184.76it/s, train=0.0541 | valid=0.1236 | fun_rmse=0.1502]
Epoch 190/300: 100%|██████████| 2/2 [00:00<00:00, 179.72it/s, train=0.0541 | valid=0.1236 | fun_rmse=0.1502]
Epoch 191/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 191/300: 100%|██████████| 2/2 [00:00<00:00, 162.90it/s, train=0.0496 | valid=0.1255 | fun_rmse=0.1530]
Epoch 191/300: 100%|██████████| 2/2 [00:00<00:00, 158.75it/s, train=0.0496 | valid=0.1255 | fun_rmse=0.1530]
Epoch 192/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 192/300: 100%|██████████| 2/2 [00:00<00:00, 180.69it/s, train=0.0487 | valid=0.1263 | fun_rmse=0.1564]
Epoch 192/300: 100%|██████████| 2/2 [00:00<00:00, 175.58it/s, train=0.0487 | valid=0.1263 | fun_rmse=0.1564]
Epoch 193/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 193/300: 100%|██████████| 2/2 [00:00<00:00, 122.83it/s, train=0.0526 | valid=0.1301 | fun_rmse=0.1619]
Epoch 193/300: 100%|██████████| 2/2 [00:00<00:00, 118.12it/s, train=0.0526 | valid=0.1301 | fun_rmse=0.1619]
Epoch 194/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 194/300: 100%|██████████| 2/2 [00:00<00:00, 59.91it/s, train=0.0462 | valid=0.1300 | fun_rmse=0.1643]
Epoch 194/300: 100%|██████████| 2/2 [00:00<00:00, 58.60it/s, train=0.0462 | valid=0.1300 | fun_rmse=0.1643]
Epoch 195/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 195/300: 100%|██████████| 2/2 [00:00<00:00, 73.45it/s, train=0.0396 | valid=0.1288 | fun_rmse=0.1629]
Epoch 195/300: 100%|██████████| 2/2 [00:00<00:00, 72.60it/s, train=0.0396 | valid=0.1288 | fun_rmse=0.1629]
Epoch 196/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 196/300: 100%|██████████| 2/2 [00:00<00:00, 61.81it/s, train=0.0401 | valid=0.1205 | fun_rmse=0.1568]
Epoch 196/300: 100%|██████████| 2/2 [00:00<00:00, 60.45it/s, train=0.0401 | valid=0.1205 | fun_rmse=0.1568]
Epoch 197/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 197/300: 100%|██████████| 2/2 [00:00<00:00, 66.76it/s, train=0.0478 | valid=0.1157 | fun_rmse=0.1511]
Epoch 197/300: 100%|██████████| 2/2 [00:00<00:00, 65.06it/s, train=0.0478 | valid=0.1157 | fun_rmse=0.1511]
Epoch 198/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 198/300: 100%|██████████| 2/2 [00:00<00:00, 72.48it/s, train=0.0415 | valid=0.1145 | fun_rmse=0.1500]
Epoch 198/300: 100%|██████████| 2/2 [00:00<00:00, 70.83it/s, train=0.0415 | valid=0.1145 | fun_rmse=0.1500]
Epoch 199/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 199/300: 100%|██████████| 2/2 [00:00<00:00, 152.70it/s, train=0.0434 | valid=0.1203 | fun_rmse=0.1542]
Epoch 199/300: 100%|██████████| 2/2 [00:00<00:00, 147.62it/s, train=0.0434 | valid=0.1203 | fun_rmse=0.1542]
Epoch 200/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 200/300: 100%|██████████| 2/2 [00:00<00:00, 87.45it/s, train=0.0413 | valid=0.1286 | fun_rmse=0.1618]
Epoch 200/300: 100%|██████████| 2/2 [00:00<00:00, 86.05it/s, train=0.0413 | valid=0.1286 | fun_rmse=0.1618]
Epoch 201/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 201/300: 100%|██████████| 2/2 [00:00<00:00, 144.52it/s, train=0.0322 | valid=0.1350 | fun_rmse=0.1675]
Epoch 201/300: 100%|██████████| 2/2 [00:00<00:00, 140.21it/s, train=0.0322 | valid=0.1350 | fun_rmse=0.1675]
Epoch 202/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 202/300: 100%|██████████| 2/2 [00:00<00:00, 98.27it/s, train=0.0350 | valid=0.1345 | fun_rmse=0.1661]
Epoch 202/300: 100%|██████████| 2/2 [00:00<00:00, 95.85it/s, train=0.0350 | valid=0.1345 | fun_rmse=0.1661]
Epoch 203/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 203/300: 100%|██████████| 2/2 [00:00<00:00, 64.40it/s, train=0.0397 | valid=0.1315 | fun_rmse=0.1595]
Epoch 203/300: 100%|██████████| 2/2 [00:00<00:00, 62.13it/s, train=0.0397 | valid=0.1315 | fun_rmse=0.1595]
Epoch 204/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 204/300: 100%|██████████| 2/2 [00:00<00:00, 51.23it/s, train=0.0499 | valid=0.1240 | fun_rmse=0.1537]
Epoch 204/300: 100%|██████████| 2/2 [00:00<00:00, 49.38it/s, train=0.0499 | valid=0.1240 | fun_rmse=0.1537]
Epoch 205/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 205/300: 100%|██████████| 2/2 [00:00<00:00, 81.32it/s, train=0.0357 | valid=0.1163 | fun_rmse=0.1508]
Epoch 205/300: 100%|██████████| 2/2 [00:00<00:00, 77.27it/s, train=0.0357 | valid=0.1163 | fun_rmse=0.1508]
Epoch 206/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 206/300: 100%|██████████| 2/2 [00:00<00:00, 48.70it/s, train=0.0375 | valid=0.1155 | fun_rmse=0.1527]
Epoch 206/300: 100%|██████████| 2/2 [00:00<00:00, 48.39it/s, train=0.0375 | valid=0.1155 | fun_rmse=0.1527]
Epoch 207/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 207/300: 100%|██████████| 2/2 [00:00<00:00, 74.25it/s, train=0.0465 | valid=0.1272 | fun_rmse=0.1602]
Epoch 207/300: 100%|██████████| 2/2 [00:00<00:00, 72.40it/s, train=0.0465 | valid=0.1272 | fun_rmse=0.1602]
Epoch 208/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 208/300: 100%|██████████| 2/2 [00:00<00:00, 79.74it/s, train=0.0365 | valid=0.1374 | fun_rmse=0.1676]
Epoch 208/300: 100%|██████████| 2/2 [00:00<00:00, 78.56it/s, train=0.0365 | valid=0.1374 | fun_rmse=0.1676]
Epoch 209/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 209/300: 100%|██████████| 2/2 [00:00<00:00, 174.96it/s, train=0.0339 | valid=0.1404 | fun_rmse=0.1726]
Epoch 209/300: 100%|██████████| 2/2 [00:00<00:00, 170.99it/s, train=0.0339 | valid=0.1404 | fun_rmse=0.1726]
Epoch 210/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 210/300: 100%|██████████| 2/2 [00:00<00:00, 178.12it/s, train=0.0517 | valid=0.1423 | fun_rmse=0.1736]
Epoch 210/300: 100%|██████████| 2/2 [00:00<00:00, 170.90it/s, train=0.0517 | valid=0.1423 | fun_rmse=0.1736]
Epoch 211/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 211/300: 100%|██████████| 2/2 [00:00<00:00, 111.13it/s, train=0.0483 | valid=0.1467 | fun_rmse=0.1745]
Epoch 211/300: 100%|██████████| 2/2 [00:00<00:00, 108.89it/s, train=0.0483 | valid=0.1467 | fun_rmse=0.1745]
Epoch 212/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 212/300: 100%|██████████| 2/2 [00:00<00:00, 147.61it/s, train=0.0496 | valid=0.1526 | fun_rmse=0.1785]
Epoch 212/300: 100%|██████████| 2/2 [00:00<00:00, 141.14it/s, train=0.0496 | valid=0.1526 | fun_rmse=0.1785]
Epoch 213/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 213/300: 100%|██████████| 2/2 [00:00<00:00, 63.32it/s, train=0.0541 | valid=0.1552 | fun_rmse=0.1764]
Epoch 213/300: 100%|██████████| 2/2 [00:00<00:00, 60.90it/s, train=0.0541 | valid=0.1552 | fun_rmse=0.1764]
Epoch 214/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 214/300: 100%|██████████| 2/2 [00:00<00:00, 51.92it/s, train=0.0506 | valid=0.1480 | fun_rmse=0.1735]
Epoch 214/300: 100%|██████████| 2/2 [00:00<00:00, 50.33it/s, train=0.0506 | valid=0.1480 | fun_rmse=0.1735]
Epoch 215/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 215/300: 100%|██████████| 2/2 [00:00<00:00, 47.40it/s, train=0.0393 | valid=0.1373 | fun_rmse=0.1682]
Epoch 215/300: 100%|██████████| 2/2 [00:00<00:00, 46.47it/s, train=0.0393 | valid=0.1373 | fun_rmse=0.1682]
Epoch 216/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 216/300: 100%|██████████| 2/2 [00:00<00:00, 69.69it/s, train=0.0609 | valid=0.1302 | fun_rmse=0.1570]
Epoch 216/300: 100%|██████████| 2/2 [00:00<00:00, 67.88it/s, train=0.0609 | valid=0.1302 | fun_rmse=0.1570]
Epoch 217/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 217/300: 100%|██████████| 2/2 [00:00<00:00, 131.24it/s, train=0.0423 | valid=0.1241 | fun_rmse=0.1550]
Epoch 217/300: 100%|██████████| 2/2 [00:00<00:00, 128.53it/s, train=0.0423 | valid=0.1241 | fun_rmse=0.1550]
Epoch 218/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 218/300: 100%|██████████| 2/2 [00:00<00:00, 116.77it/s, train=0.0494 | valid=0.1164 | fun_rmse=0.1507]
Epoch 218/300: 100%|██████████| 2/2 [00:00<00:00, 112.88it/s, train=0.0494 | valid=0.1164 | fun_rmse=0.1507]
Epoch 219/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 219/300: 100%|██████████| 2/2 [00:00<00:00, 71.17it/s, train=0.0435 | valid=0.1107 | fun_rmse=0.1492]
Epoch 219/300: 100%|██████████| 2/2 [00:00<00:00, 68.52it/s, train=0.0435 | valid=0.1107 | fun_rmse=0.1492]
Epoch 220/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 220/300: 100%|██████████| 2/2 [00:00<00:00, 46.59it/s, train=0.0364 | valid=0.1192 | fun_rmse=0.1554]
Epoch 220/300: 100%|██████████| 2/2 [00:00<00:00, 45.28it/s, train=0.0364 | valid=0.1192 | fun_rmse=0.1554]
Epoch 221/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 221/300: 100%|██████████| 2/2 [00:00<00:00, 67.83it/s, train=0.0385 | valid=0.1204 | fun_rmse=0.1571]
Epoch 221/300: 100%|██████████| 2/2 [00:00<00:00, 67.13it/s, train=0.0385 | valid=0.1204 | fun_rmse=0.1571]
Epoch 222/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 222/300: 100%|██████████| 2/2 [00:00<00:00, 85.18it/s, train=0.0454 | valid=0.1273 | fun_rmse=0.1598]
Epoch 222/300: 100%|██████████| 2/2 [00:00<00:00, 81.73it/s, train=0.0454 | valid=0.1273 | fun_rmse=0.1598]
Epoch 223/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 223/300: 100%|██████████| 2/2 [00:00<00:00, 63.31it/s, train=0.0379 | valid=0.1281 | fun_rmse=0.1572]
Epoch 223/300: 100%|██████████| 2/2 [00:00<00:00, 61.34it/s, train=0.0379 | valid=0.1281 | fun_rmse=0.1572]
Epoch 224/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 224/300: 100%|██████████| 2/2 [00:00<00:00, 67.11it/s, train=0.0436 | valid=0.1297 | fun_rmse=0.1555]
Epoch 224/300: 100%|██████████| 2/2 [00:00<00:00, 66.61it/s, train=0.0436 | valid=0.1297 | fun_rmse=0.1555]
Epoch 225/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 225/300: 100%|██████████| 2/2 [00:00<00:00, 74.54it/s, train=0.0537 | valid=0.1309 | fun_rmse=0.1602]
Epoch 225/300: 100%|██████████| 2/2 [00:00<00:00, 73.66it/s, train=0.0537 | valid=0.1309 | fun_rmse=0.1602]
Epoch 226/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 226/300: 100%|██████████| 2/2 [00:00<00:00, 164.69it/s, train=0.0470 | valid=0.1396 | fun_rmse=0.1662]
Epoch 226/300: 100%|██████████| 2/2 [00:00<00:00, 160.90it/s, train=0.0470 | valid=0.1396 | fun_rmse=0.1662]
Epoch 227/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 227/300: 100%|██████████| 2/2 [00:00<00:00, 196.17it/s, train=0.0471 | valid=0.1360 | fun_rmse=0.1662]
Epoch 227/300: 100%|██████████| 2/2 [00:00<00:00, 190.60it/s, train=0.0471 | valid=0.1360 | fun_rmse=0.1662]
Epoch 228/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 228/300: 100%|██████████| 2/2 [00:00<00:00, 210.70it/s, train=0.0311 | valid=0.1242 | fun_rmse=0.1641]
Epoch 228/300: 100%|██████████| 2/2 [00:00<00:00, 205.28it/s, train=0.0311 | valid=0.1242 | fun_rmse=0.1641]
Epoch 229/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 229/300: 100%|██████████| 2/2 [00:00<00:00, 180.10it/s, train=0.0539 | valid=0.1236 | fun_rmse=0.1641]
Epoch 229/300: 100%|██████████| 2/2 [00:00<00:00, 176.68it/s, train=0.0539 | valid=0.1236 | fun_rmse=0.1641]
Epoch 230/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 230/300: 100%|██████████| 2/2 [00:00<00:00, 228.83it/s, train=0.0343 | valid=0.1283 | fun_rmse=0.1658]
Epoch 230/300: 100%|██████████| 2/2 [00:00<00:00, 223.52it/s, train=0.0343 | valid=0.1283 | fun_rmse=0.1658]
Epoch 231/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 231/300: 100%|██████████| 2/2 [00:00<00:00, 150.57it/s, train=0.0400 | valid=0.1341 | fun_rmse=0.1688]
Epoch 231/300: 100%|██████████| 2/2 [00:00<00:00, 147.51it/s, train=0.0400 | valid=0.1341 | fun_rmse=0.1688]
Epoch 232/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 232/300: 100%|██████████| 2/2 [00:00<00:00, 94.43it/s, train=0.0391 | valid=0.1368 | fun_rmse=0.1692]
Epoch 232/300: 100%|██████████| 2/2 [00:00<00:00, 90.53it/s, train=0.0391 | valid=0.1368 | fun_rmse=0.1692]
Epoch 233/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 233/300: 100%|██████████| 2/2 [00:00<00:00, 66.69it/s, train=0.0322 | valid=0.1381 | fun_rmse=0.1675]
Epoch 233/300: 100%|██████████| 2/2 [00:00<00:00, 62.59it/s, train=0.0322 | valid=0.1381 | fun_rmse=0.1675]
Epoch 234/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 234/300: 100%|██████████| 2/2 [00:00<00:00, 69.08it/s, train=0.0276 | valid=0.1311 | fun_rmse=0.1627]
Epoch 234/300: 100%|██████████| 2/2 [00:00<00:00, 68.25it/s, train=0.0276 | valid=0.1311 | fun_rmse=0.1627]
Epoch 235/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 235/300: 100%|██████████| 2/2 [00:00<00:00, 75.38it/s, train=0.0313 | valid=0.1246 | fun_rmse=0.1570]
Epoch 235/300: 100%|██████████| 2/2 [00:00<00:00, 72.06it/s, train=0.0313 | valid=0.1246 | fun_rmse=0.1570]
Epoch 236/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 236/300: 100%|██████████| 2/2 [00:00<00:00, 72.18it/s, train=0.0480 | valid=0.1229 | fun_rmse=0.1550]
Epoch 236/300: 100%|██████████| 2/2 [00:00<00:00, 69.65it/s, train=0.0480 | valid=0.1229 | fun_rmse=0.1550]
Epoch 237/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 237/300: 100%|██████████| 2/2 [00:00<00:00, 73.38it/s, train=0.0365 | valid=0.1234 | fun_rmse=0.1559]
Epoch 237/300: 100%|██████████| 2/2 [00:00<00:00, 71.04it/s, train=0.0365 | valid=0.1234 | fun_rmse=0.1559]
Epoch 238/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 238/300: 100%|██████████| 2/2 [00:00<00:00, 136.44it/s, train=0.0351 | valid=0.1254 | fun_rmse=0.1548]
Epoch 238/300: 100%|██████████| 2/2 [00:00<00:00, 132.99it/s, train=0.0351 | valid=0.1254 | fun_rmse=0.1548]
Epoch 239/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 239/300: 100%|██████████| 2/2 [00:00<00:00, 152.10it/s, train=0.0366 | valid=0.1299 | fun_rmse=0.1594]
Epoch 239/300: 100%|██████████| 2/2 [00:00<00:00, 145.68it/s, train=0.0366 | valid=0.1299 | fun_rmse=0.1594]
Epoch 240/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 240/300: 100%|██████████| 2/2 [00:00<00:00, 93.56it/s, train=0.0443 | valid=0.1328 | fun_rmse=0.1633]
Epoch 240/300: 100%|██████████| 2/2 [00:00<00:00, 91.71it/s, train=0.0443 | valid=0.1328 | fun_rmse=0.1633]
Epoch 241/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 241/300: 100%|██████████| 2/2 [00:00<00:00, 101.45it/s, train=0.0385 | valid=0.1335 | fun_rmse=0.1668]
Epoch 241/300: 100%|██████████| 2/2 [00:00<00:00, 98.07it/s, train=0.0385 | valid=0.1335 | fun_rmse=0.1668]
Epoch 242/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 242/300: 100%|██████████| 2/2 [00:00<00:00, 78.58it/s, train=0.0452 | valid=0.1331 | fun_rmse=0.1704]
Epoch 242/300: 100%|██████████| 2/2 [00:00<00:00, 74.37it/s, train=0.0452 | valid=0.1331 | fun_rmse=0.1704]
Epoch 243/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 243/300: 100%|██████████| 2/2 [00:00<00:00, 73.30it/s, train=0.0305 | valid=0.1369 | fun_rmse=0.1722]
Epoch 243/300: 100%|██████████| 2/2 [00:00<00:00, 70.45it/s, train=0.0305 | valid=0.1369 | fun_rmse=0.1722]
Epoch 244/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 244/300: 100%|██████████| 2/2 [00:00<00:00, 60.60it/s, train=0.0420 | valid=0.1412 | fun_rmse=0.1741]
Epoch 244/300: 100%|██████████| 2/2 [00:00<00:00, 58.31it/s, train=0.0420 | valid=0.1412 | fun_rmse=0.1741]
Epoch 245/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 245/300: 100%|██████████| 2/2 [00:00<00:00, 53.83it/s, train=0.0427 | valid=0.1422 | fun_rmse=0.1746]
Epoch 245/300: 100%|██████████| 2/2 [00:00<00:00, 51.92it/s, train=0.0427 | valid=0.1422 | fun_rmse=0.1746]
Epoch 246/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 246/300: 100%|██████████| 2/2 [00:00<00:00, 101.37it/s, train=0.0328 | valid=0.1456 | fun_rmse=0.1750]
Epoch 246/300: 100%|██████████| 2/2 [00:00<00:00, 99.98it/s, train=0.0328 | valid=0.1456 | fun_rmse=0.1750]
Epoch 247/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 247/300: 100%|██████████| 2/2 [00:00<00:00, 172.42it/s, train=0.0492 | valid=0.1434 | fun_rmse=0.1726]
Epoch 247/300: 100%|██████████| 2/2 [00:00<00:00, 168.61it/s, train=0.0492 | valid=0.1434 | fun_rmse=0.1726]
Epoch 248/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 248/300: 100%|██████████| 2/2 [00:00<00:00, 181.43it/s, train=0.0408 | valid=0.1411 | fun_rmse=0.1694]
Epoch 248/300: 100%|██████████| 2/2 [00:00<00:00, 177.43it/s, train=0.0408 | valid=0.1411 | fun_rmse=0.1694]
Epoch 249/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 249/300: 100%|██████████| 2/2 [00:00<00:00, 136.73it/s, train=0.0467 | valid=0.1391 | fun_rmse=0.1674]
Epoch 249/300: 100%|██████████| 2/2 [00:00<00:00, 132.88it/s, train=0.0467 | valid=0.1391 | fun_rmse=0.1674]
Epoch 250/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 250/300: 100%|██████████| 2/2 [00:00<00:00, 111.43it/s, train=0.0484 | valid=0.1382 | fun_rmse=0.1694]
Epoch 250/300: 100%|██████████| 2/2 [00:00<00:00, 108.41it/s, train=0.0484 | valid=0.1382 | fun_rmse=0.1694]
Epoch 251/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 251/300: 100%|██████████| 2/2 [00:00<00:00, 66.10it/s, train=0.0439 | valid=0.1314 | fun_rmse=0.1648]
Epoch 251/300: 100%|██████████| 2/2 [00:00<00:00, 63.93it/s, train=0.0439 | valid=0.1314 | fun_rmse=0.1648]
Epoch 252/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 252/300: 100%|██████████| 2/2 [00:00<00:00, 89.28it/s, train=0.0406 | valid=0.1205 | fun_rmse=0.1575]
Epoch 252/300: 100%|██████████| 2/2 [00:00<00:00, 86.20it/s, train=0.0406 | valid=0.1205 | fun_rmse=0.1575]
Epoch 253/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 253/300: 100%|██████████| 2/2 [00:00<00:00, 114.44it/s, train=0.0264 | valid=0.1224 | fun_rmse=0.1541]
Epoch 253/300: 100%|██████████| 2/2 [00:00<00:00, 112.42it/s, train=0.0264 | valid=0.1224 | fun_rmse=0.1541]
Epoch 254/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 254/300: 100%|██████████| 2/2 [00:00<00:00, 254.23it/s, train=0.0330 | valid=0.1231 | fun_rmse=0.1554]
Epoch 254/300: 100%|██████████| 2/2 [00:00<00:00, 244.74it/s, train=0.0330 | valid=0.1231 | fun_rmse=0.1554]
Epoch 255/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 255/300: 100%|██████████| 2/2 [00:00<00:00, 155.84it/s, train=0.0317 | valid=0.1244 | fun_rmse=0.1608]
Epoch 255/300: 100%|██████████| 2/2 [00:00<00:00, 151.26it/s, train=0.0317 | valid=0.1244 | fun_rmse=0.1608]
Epoch 256/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 256/300: 100%|██████████| 2/2 [00:00<00:00, 163.70it/s, train=0.0308 | valid=0.1304 | fun_rmse=0.1663]
Epoch 256/300: 100%|██████████| 2/2 [00:00<00:00, 159.23it/s, train=0.0308 | valid=0.1304 | fun_rmse=0.1663]
Epoch 257/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 257/300: 100%|██████████| 2/2 [00:00<00:00, 186.40it/s, train=0.0346 | valid=0.1301 | fun_rmse=0.1662]
Epoch 257/300: 100%|██████████| 2/2 [00:00<00:00, 180.01it/s, train=0.0346 | valid=0.1301 | fun_rmse=0.1662]
Epoch 258/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 258/300: 100%|██████████| 2/2 [00:00<00:00, 138.05it/s, train=0.0287 | valid=0.1333 | fun_rmse=0.1654]
Epoch 258/300: 100%|██████████| 2/2 [00:00<00:00, 132.06it/s, train=0.0287 | valid=0.1333 | fun_rmse=0.1654]
Epoch 259/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 259/300: 100%|██████████| 2/2 [00:00<00:00, 92.36it/s, train=0.0357 | valid=0.1334 | fun_rmse=0.1655]
Epoch 259/300: 100%|██████████| 2/2 [00:00<00:00, 88.21it/s, train=0.0357 | valid=0.1334 | fun_rmse=0.1655]
Epoch 260/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 260/300: 100%|██████████| 2/2 [00:00<00:00, 107.60it/s, train=0.0290 | valid=0.1345 | fun_rmse=0.1678]
Epoch 260/300: 100%|██████████| 2/2 [00:00<00:00, 103.92it/s, train=0.0290 | valid=0.1345 | fun_rmse=0.1678]
Epoch 261/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 261/300: 100%|██████████| 2/2 [00:00<00:00, 159.23it/s, train=0.0335 | valid=0.1351 | fun_rmse=0.1695]
Epoch 261/300: 100%|██████████| 2/2 [00:00<00:00, 155.99it/s, train=0.0335 | valid=0.1351 | fun_rmse=0.1695]
Epoch 262/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 262/300: 100%|██████████| 2/2 [00:00<00:00, 190.48it/s, train=0.0441 | valid=0.1360 | fun_rmse=0.1687]
Epoch 262/300: 100%|██████████| 2/2 [00:00<00:00, 184.94it/s, train=0.0441 | valid=0.1360 | fun_rmse=0.1687]
Epoch 263/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 263/300: 100%|██████████| 2/2 [00:00<00:00, 149.12it/s, train=0.0333 | valid=0.1367 | fun_rmse=0.1674]
Epoch 263/300: 100%|██████████| 2/2 [00:00<00:00, 144.97it/s, train=0.0333 | valid=0.1367 | fun_rmse=0.1674]
Epoch 264/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 264/300: 100%|██████████| 2/2 [00:00<00:00, 139.54it/s, train=0.0379 | valid=0.1356 | fun_rmse=0.1660]
Epoch 264/300: 100%|██████████| 2/2 [00:00<00:00, 136.55it/s, train=0.0379 | valid=0.1356 | fun_rmse=0.1660]
Epoch 265/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 265/300: 100%|██████████| 2/2 [00:00<00:00, 132.66it/s, train=0.0248 | valid=0.1329 | fun_rmse=0.1638]
Epoch 265/300: 100%|██████████| 2/2 [00:00<00:00, 129.56it/s, train=0.0248 | valid=0.1329 | fun_rmse=0.1638]
Epoch 266/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 266/300: 100%|██████████| 2/2 [00:00<00:00, 68.23it/s, train=0.0222 | valid=0.1309 | fun_rmse=0.1619]
Epoch 266/300: 100%|██████████| 2/2 [00:00<00:00, 66.94it/s, train=0.0222 | valid=0.1309 | fun_rmse=0.1619]
Epoch 267/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 267/300: 100%|██████████| 2/2 [00:00<00:00, 72.01it/s, train=0.0346 | valid=0.1301 | fun_rmse=0.1606]
Epoch 267/300: 100%|██████████| 2/2 [00:00<00:00, 68.92it/s, train=0.0346 | valid=0.1301 | fun_rmse=0.1606]
Epoch 268/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 268/300: 100%|██████████| 2/2 [00:00<00:00, 65.91it/s, train=0.0247 | valid=0.1301 | fun_rmse=0.1604]
Epoch 268/300: 100%|██████████| 2/2 [00:00<00:00, 63.60it/s, train=0.0247 | valid=0.1301 | fun_rmse=0.1604]
Epoch 269/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 269/300: 100%|██████████| 2/2 [00:00<00:00, 57.28it/s, train=0.0349 | valid=0.1302 | fun_rmse=0.1611]
Epoch 269/300: 100%|██████████| 2/2 [00:00<00:00, 55.88it/s, train=0.0349 | valid=0.1302 | fun_rmse=0.1611]
Epoch 270/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 270/300: 100%|██████████| 2/2 [00:00<00:00, 52.66it/s, train=0.0194 | valid=0.1283 | fun_rmse=0.1610]
Epoch 270/300: 100%|██████████| 2/2 [00:00<00:00, 52.08it/s, train=0.0194 | valid=0.1283 | fun_rmse=0.1610]
Epoch 271/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 271/300: 100%|██████████| 2/2 [00:00<00:00, 161.35it/s, train=0.0324 | valid=0.1276 | fun_rmse=0.1610]
Epoch 271/300: 100%|██████████| 2/2 [00:00<00:00, 157.33it/s, train=0.0324 | valid=0.1276 | fun_rmse=0.1610]
Epoch 272/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 272/300: 100%|██████████| 2/2 [00:00<00:00, 207.32it/s, train=0.0305 | valid=0.1297 | fun_rmse=0.1623]
Epoch 272/300: 100%|██████████| 2/2 [00:00<00:00, 200.30it/s, train=0.0305 | valid=0.1297 | fun_rmse=0.1623]
Epoch 273/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 273/300: 100%|██████████| 2/2 [00:00<00:00, 218.14it/s, train=0.0223 | valid=0.1306 | fun_rmse=0.1626]
Epoch 273/300: 100%|██████████| 2/2 [00:00<00:00, 210.13it/s, train=0.0223 | valid=0.1306 | fun_rmse=0.1626]
Epoch 274/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 274/300: 100%|██████████| 2/2 [00:00<00:00, 192.80it/s, train=0.0250 | valid=0.1303 | fun_rmse=0.1625]
Epoch 274/300: 100%|██████████| 2/2 [00:00<00:00, 184.93it/s, train=0.0250 | valid=0.1303 | fun_rmse=0.1625]
Epoch 275/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 275/300: 100%|██████████| 2/2 [00:00<00:00, 182.42it/s, train=0.0269 | valid=0.1302 | fun_rmse=0.1626]
Epoch 275/300: 100%|██████████| 2/2 [00:00<00:00, 176.47it/s, train=0.0269 | valid=0.1302 | fun_rmse=0.1626]
Epoch 276/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 276/300: 100%|██████████| 2/2 [00:00<00:00, 127.09it/s, train=0.0305 | valid=0.1302 | fun_rmse=0.1624]
Epoch 276/300: 100%|██████████| 2/2 [00:00<00:00, 123.18it/s, train=0.0305 | valid=0.1302 | fun_rmse=0.1624]
Epoch 277/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 277/300: 100%|██████████| 2/2 [00:00<00:00, 87.00it/s, train=0.0240 | valid=0.1314 | fun_rmse=0.1631]
Epoch 277/300: 100%|██████████| 2/2 [00:00<00:00, 79.84it/s, train=0.0240 | valid=0.1314 | fun_rmse=0.1631]
Epoch 278/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 278/300: 100%|██████████| 2/2 [00:00<00:00, 44.47it/s, train=0.0210 | valid=0.1332 | fun_rmse=0.1643]
Epoch 278/300: 100%|██████████| 2/2 [00:00<00:00, 42.76it/s, train=0.0210 | valid=0.1332 | fun_rmse=0.1643]
Epoch 279/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 279/300: 100%|██████████| 2/2 [00:00<00:00, 52.78it/s, train=0.0372 | valid=0.1345 | fun_rmse=0.1651]
Epoch 279/300: 100%|██████████| 2/2 [00:00<00:00, 51.16it/s, train=0.0372 | valid=0.1345 | fun_rmse=0.1651]
Epoch 280/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 280/300: 100%|██████████| 2/2 [00:00<00:00, 60.33it/s, train=0.0197 | valid=0.1342 | fun_rmse=0.1648]
Epoch 280/300: 100%|██████████| 2/2 [00:00<00:00, 59.79it/s, train=0.0197 | valid=0.1342 | fun_rmse=0.1648]
Epoch 281/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 281/300: 100%|██████████| 2/2 [00:00<00:00, 76.52it/s, train=0.0370 | valid=0.1327 | fun_rmse=0.1643]
Epoch 281/300: 100%|██████████| 2/2 [00:00<00:00, 73.94it/s, train=0.0370 | valid=0.1327 | fun_rmse=0.1643]
Epoch 282/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 282/300: 100%|██████████| 2/2 [00:00<00:00, 140.22it/s, train=0.0348 | valid=0.1317 | fun_rmse=0.1639]
Epoch 282/300: 100%|██████████| 2/2 [00:00<00:00, 138.10it/s, train=0.0348 | valid=0.1317 | fun_rmse=0.1639]
Epoch 283/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 283/300: 100%|██████████| 2/2 [00:00<00:00, 181.57it/s, train=0.0375 | valid=0.1320 | fun_rmse=0.1643]
Epoch 283/300: 100%|██████████| 2/2 [00:00<00:00, 178.52it/s, train=0.0375 | valid=0.1320 | fun_rmse=0.1643]
Epoch 284/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 284/300: 100%|██████████| 2/2 [00:00<00:00, 142.72it/s, train=0.0268 | valid=0.1333 | fun_rmse=0.1649]
Epoch 284/300: 100%|██████████| 2/2 [00:00<00:00, 139.28it/s, train=0.0268 | valid=0.1333 | fun_rmse=0.1649]
Epoch 285/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 285/300: 100%|██████████| 2/2 [00:00<00:00, 119.85it/s, train=0.0291 | valid=0.1343 | fun_rmse=0.1653]
Epoch 285/300: 100%|██████████| 2/2 [00:00<00:00, 113.33it/s, train=0.0291 | valid=0.1343 | fun_rmse=0.1653]
Epoch 286/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 286/300: 100%|██████████| 2/2 [00:00<00:00, 43.78it/s, train=0.0187 | valid=0.1345 | fun_rmse=0.1652]
Epoch 286/300: 100%|██████████| 2/2 [00:00<00:00, 43.35it/s, train=0.0187 | valid=0.1345 | fun_rmse=0.1652]
Epoch 287/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 287/300: 100%|██████████| 2/2 [00:00<00:00, 47.64it/s, train=0.0241 | valid=0.1342 | fun_rmse=0.1648]
Epoch 287/300: 100%|██████████| 2/2 [00:00<00:00, 45.40it/s, train=0.0241 | valid=0.1342 | fun_rmse=0.1648]
Epoch 288/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 288/300: 100%|██████████| 2/2 [00:00<00:00, 73.62it/s, train=0.0305 | valid=0.1334 | fun_rmse=0.1641]
Epoch 288/300: 100%|██████████| 2/2 [00:00<00:00, 71.03it/s, train=0.0305 | valid=0.1334 | fun_rmse=0.1641]
Epoch 289/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 289/300: 100%|██████████| 2/2 [00:00<00:00, 63.34it/s, train=0.0213 | valid=0.1325 | fun_rmse=0.1634]
Epoch 289/300: 100%|██████████| 2/2 [00:00<00:00, 59.88it/s, train=0.0213 | valid=0.1325 | fun_rmse=0.1634]
Epoch 290/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 290/300: 100%|██████████| 2/2 [00:00<00:00, 55.74it/s, train=0.0311 | valid=0.1320 | fun_rmse=0.1631]
Epoch 290/300: 100%|██████████| 2/2 [00:00<00:00, 55.29it/s, train=0.0311 | valid=0.1320 | fun_rmse=0.1631]
Epoch 291/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 291/300: 100%|██████████| 2/2 [00:00<00:00, 190.40it/s, train=0.0293 | valid=0.1318 | fun_rmse=0.1630]
Epoch 291/300: 100%|██████████| 2/2 [00:00<00:00, 185.06it/s, train=0.0293 | valid=0.1318 | fun_rmse=0.1630]
Epoch 292/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 292/300: 100%|██████████| 2/2 [00:00<00:00, 109.68it/s, train=0.0254 | valid=0.1318 | fun_rmse=0.1631]
Epoch 292/300: 100%|██████████| 2/2 [00:00<00:00, 105.18it/s, train=0.0254 | valid=0.1318 | fun_rmse=0.1631]
Epoch 293/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 293/300: 100%|██████████| 2/2 [00:00<00:00, 60.53it/s, train=0.0219 | valid=0.1319 | fun_rmse=0.1632]
Epoch 293/300: 100%|██████████| 2/2 [00:00<00:00, 59.84it/s, train=0.0219 | valid=0.1319 | fun_rmse=0.1632]
Epoch 294/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 294/300: 100%|██████████| 2/2 [00:00<00:00, 55.64it/s, train=0.0351 | valid=0.1321 | fun_rmse=0.1635]
Epoch 294/300: 100%|██████████| 2/2 [00:00<00:00, 52.96it/s, train=0.0351 | valid=0.1321 | fun_rmse=0.1635]
Epoch 295/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 295/300: 100%|██████████| 2/2 [00:00<00:00, 57.24it/s, train=0.0210 | valid=0.1322 | fun_rmse=0.1636]
Epoch 295/300: 100%|██████████| 2/2 [00:00<00:00, 55.44it/s, train=0.0210 | valid=0.1322 | fun_rmse=0.1636]
Epoch 296/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 296/300: 100%|██████████| 2/2 [00:00<00:00, 91.07it/s, train=0.0234 | valid=0.1323 | fun_rmse=0.1638]
Epoch 296/300: 100%|██████████| 2/2 [00:00<00:00, 88.35it/s, train=0.0234 | valid=0.1323 | fun_rmse=0.1638]
Epoch 297/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 297/300: 100%|██████████| 2/2 [00:00<00:00, 97.23it/s, train=0.0283 | valid=0.1324 | fun_rmse=0.1638]
Epoch 297/300: 100%|██████████| 2/2 [00:00<00:00, 95.96it/s, train=0.0283 | valid=0.1324 | fun_rmse=0.1638]
Epoch 298/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 298/300: 100%|██████████| 2/2 [00:00<00:00, 103.19it/s, train=0.0334 | valid=0.1324 | fun_rmse=0.1638]
Epoch 298/300: 100%|██████████| 2/2 [00:00<00:00, 101.67it/s, train=0.0334 | valid=0.1324 | fun_rmse=0.1638]
Epoch 299/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 299/300: 100%|██████████| 2/2 [00:00<00:00, 143.15it/s, train=0.0311 | valid=0.1325 | fun_rmse=0.1639]
Epoch 299/300: 100%|██████████| 2/2 [00:00<00:00, 138.30it/s, train=0.0311 | valid=0.1325 | fun_rmse=0.1639]
Epoch 300/300: 0%| | 0/2 [00:00<?, ?it/s]
Epoch 300/300: 100%|██████████| 2/2 [00:00<00:00, 99.06it/s, train=0.0234 | valid=0.1325 | fun_rmse=0.1639]
Epoch 300/300: 100%|██████████| 2/2 [00:00<00:00, 96.77it/s, train=0.0234 | valid=0.1325 | fun_rmse=0.1639]
Inspect Predictions¶
After training, we extract predictions and targets from the validation set to compare them side by side.
preds, targs = lrn.get_preds()
print(f"Predictions shape: {preds.shape}") # (n_samples, 2)
print(f"Targets shape: {targs.shape}") # (n_samples, 2)
for i in range(min(5, len(preds))):
print(
f" Pred: x0={preds[i, 0]:.3f}, v0={preds[i, 1]:.3f} | "
f"True: x0={targs[i, 0]:.3f}, v0={targs[i, 1]:.3f}"
)
Predictions shape: torch.Size([6, 2]) Targets shape: torch.Size([6, 2]) Pred: x0=0.040, v0=-1.074 | True: x0=0.000, v0=-1.000 Pred: x0=-0.201, v0=-0.928 | True: x0=0.000, v0=-1.000 Pred: x0=0.820, v0=-0.246 | True: x0=0.500, v0=0.000 Pred: x0=0.745, v0=-0.162 | True: x0=0.500, v0=0.000 Pred: x0=-0.485, v0=1.019 | True: x0=-0.500, v0=1.000
Key Takeaways¶
- Sequence-to-scalar tasks predict a single value (or vector) from a time series -- useful for parameter estimation, classification, and condition monitoring.
HDF5Attrsreads scalar targets from HDF5 file attributes, complementingHDF5Signalsfor the input.SeqAggregationreduces RNN sequence output to a scalar by selecting the last timestep. It is a standardnn.Modulethat can be appended to any sequence model viann.Sequential.- Custom pipelines combine
WindowedDataset,HDF5Signals,HDF5Attrs, andsplit_by_parentfor flexible task definitions beyond the standardcreate_dlsworkflow. - Normalization still applies:
ScaledModel.from_dlsattaches input and output scalers to a hand-built model, usingdls.norm_statsestimated from training batches. - The same RNN architectures work for both sequence-to-sequence and sequence-to-scalar problems -- only the output reduction changes.