In [1]:
import pandas as pd
import numpy as np
import yaml
%matplotlib inline
In [2]:
with open("param.yaml", "r") as file:
param = yaml.load(file.read())
param
Out[2]:
{'forget_bias': 0.5,
'learning_rate': 0.1,
'length_of_sequences': 50,
'num_of_hidden_nodes': 2,
'num_of_input_nodes': 1,
'num_of_output_nodes': 1,
'num_of_prediction_epochs': 100,
'num_of_training_epochs': 2000,
'optimizer': 'GradientDescentOptimizer',
'seed': 0,
'size_of_mini_batch': 100,
'train_data_path': '../train_data/normal.npy'}
In [3]:
train = np.load(param["train_data_path"])
train
Out[3]:
array([[ 0.00000000e+00, 1.25333234e-01],
[ 1.25333234e-01, 2.48689887e-01],
[ 2.48689887e-01, 3.68124553e-01],
...,
[ -3.68124553e-01, -2.48689887e-01],
[ -2.48689887e-01, -1.25333234e-01],
[ -1.25333234e-01, 3.92877345e-15]])
In [4]:
initial = np.load("initial.npy")
initial
Out[4]:
array([ 0.00000000e+00, 1.25333234e-01, 2.48689887e-01,
3.68124553e-01, 4.81753674e-01, 5.87785252e-01,
6.84547106e-01, 7.70513243e-01, 8.44327926e-01,
9.04827052e-01, 9.51056516e-01, 9.82287251e-01,
9.98026728e-01, 9.98026728e-01, 9.82287251e-01,
9.51056516e-01, 9.04827052e-01, 8.44327926e-01,
7.70513243e-01, 6.84547106e-01, 5.87785252e-01,
4.81753674e-01, 3.68124553e-01, 2.48689887e-01,
1.25333234e-01, -3.21624530e-16, -1.25333234e-01,
-2.48689887e-01, -3.68124553e-01, -4.81753674e-01,
-5.87785252e-01, -6.84547106e-01, -7.70513243e-01,
-8.44327926e-01, -9.04827052e-01, -9.51056516e-01,
-9.82287251e-01, -9.98026728e-01, -9.98026728e-01,
-9.82287251e-01, -9.51056516e-01, -9.04827052e-01,
-8.44327926e-01, -7.70513243e-01, -6.84547106e-01,
-5.87785252e-01, -4.81753674e-01, -3.68124553e-01,
-2.48689887e-01, -1.25333234e-01])
In [5]:
output = np.load("output.npy")
output
Out[5]:
array([ 4.47027385e-04, 1.17108338e-01, 2.30251670e-01,
3.44309866e-01, 4.62224156e-01, 5.82834184e-01,
6.99639857e-01, 8.02406967e-01, 8.81853759e-01,
9.34016705e-01, 9.60573912e-01, 9.66085911e-01,
9.55377340e-01, 9.32333410e-01, 8.99681330e-01,
8.59148860e-01, 8.11690271e-01, 7.57677197e-01,
6.97040677e-01, 6.29378736e-01, 5.54050684e-01,
4.70283866e-01, 3.77321899e-01, 2.74645030e-01,
1.62284791e-01, 4.12183143e-02, -8.62487331e-02,
-2.16302454e-01, -3.43877077e-01, -4.63438392e-01,
-5.70064008e-01, -6.60341144e-01, -7.32696891e-01,
-7.87137151e-01, -8.24662685e-01, -8.46658170e-01,
-8.54425430e-01, -8.48890603e-01, -8.30449820e-01,
-7.98910975e-01, -7.53518403e-01, -6.93098485e-01,
-6.16424203e-01, -5.22938490e-01, -4.13844705e-01,
-2.93101132e-01, -1.67179495e-01, -4.27327231e-02,
7.66212270e-02, 1.91660523e-01, 3.06021839e-01,
4.23157543e-01, 5.43386102e-01, 6.62011206e-01,
7.69825578e-01, 8.56912732e-01, 9.17507887e-01,
9.51714277e-01, 9.63439524e-01, 9.57544684e-01,
9.38220620e-01, 9.08527970e-01, 8.70475888e-01,
8.25237393e-01, 7.73351371e-01, 7.14877486e-01,
6.49511933e-01, 5.76683640e-01, 4.95654643e-01,
4.05652523e-01, 3.06066543e-01, 1.96731865e-01,
7.83039927e-02, -4.73416522e-02, -1.76846027e-01,
-3.05471718e-01, -4.27732915e-01, -5.38424850e-01,
-6.33622706e-01, -7.11201906e-01, -7.70736039e-01,
-8.12979221e-01, -8.39240313e-01, -8.50865841e-01,
-8.48896682e-01, -8.33877206e-01, -8.05771291e-01,
-7.63964772e-01, -7.07373917e-01, -6.34748578e-01,
-5.45300007e-01, -4.39722896e-01, -3.21290255e-01,
-1.96016163e-01, -7.08003119e-02, 4.98086140e-02,
1.65603936e-01, 2.79793292e-01, 3.96137863e-01,
5.15884399e-01])
In [6]:
losses = np.load("losses.npy")
losses
Out[6]:
array([[ 1.00000000e+01, 5.19972384e-01],
[ 2.00000000e+01, 4.84594047e-01],
[ 3.00000000e+01, 4.31754231e-01],
[ 4.00000000e+01, 2.91183829e-01],
[ 5.00000000e+01, 1.59883291e-01],
[ 6.00000000e+01, 1.19944289e-01],
[ 7.00000000e+01, 1.10891543e-01],
[ 8.00000000e+01, 7.32138753e-02],
[ 9.00000000e+01, 6.60913959e-02],
[ 1.00000000e+02, 5.27235754e-02],
[ 1.10000000e+02, 4.76175882e-02],
[ 1.20000000e+02, 3.57141197e-02],
[ 1.30000000e+02, 3.40354331e-02],
[ 1.40000000e+02, 3.42466906e-02],
[ 1.50000000e+02, 2.89299320e-02],
[ 1.60000000e+02, 2.20293086e-02],
[ 1.70000000e+02, 2.17123367e-02],
[ 1.80000000e+02, 1.88611373e-02],
[ 1.90000000e+02, 1.58447903e-02],
[ 2.00000000e+02, 1.69601589e-02],
[ 2.10000000e+02, 1.23184538e-02],
[ 2.20000000e+02, 1.12765264e-02],
[ 2.30000000e+02, 1.02194306e-02],
[ 2.40000000e+02, 1.04287742e-02],
[ 2.50000000e+02, 9.18971561e-03],
[ 2.60000000e+02, 7.60088582e-03],
[ 2.70000000e+02, 8.30864534e-03],
[ 2.80000000e+02, 6.56462088e-03],
[ 2.90000000e+02, 7.62946717e-03],
[ 3.00000000e+02, 7.11589213e-03],
[ 3.10000000e+02, 7.03361025e-03],
[ 3.20000000e+02, 6.96505420e-03],
[ 3.30000000e+02, 5.50928339e-03],
[ 3.40000000e+02, 6.28835801e-03],
[ 3.50000000e+02, 5.37278783e-03],
[ 3.60000000e+02, 5.55724790e-03],
[ 3.70000000e+02, 5.60958032e-03],
[ 3.80000000e+02, 5.19300532e-03],
[ 3.90000000e+02, 5.00227977e-03],
[ 4.00000000e+02, 5.14815934e-03],
[ 4.10000000e+02, 5.45388833e-03],
[ 4.20000000e+02, 4.04982734e-03],
[ 4.30000000e+02, 4.31088172e-03],
[ 4.40000000e+02, 3.95551277e-03],
[ 4.50000000e+02, 4.18945495e-03],
[ 4.60000000e+02, 4.20944672e-03],
[ 4.70000000e+02, 4.22512833e-03],
[ 4.80000000e+02, 4.10925783e-03],
[ 4.90000000e+02, 3.82109522e-03],
[ 5.00000000e+02, 3.54857510e-03],
[ 5.10000000e+02, 3.45014501e-03],
[ 5.20000000e+02, 3.92137049e-03],
[ 5.30000000e+02, 3.54332058e-03],
[ 5.40000000e+02, 3.52483266e-03],
[ 5.50000000e+02, 3.71268508e-03],
[ 5.60000000e+02, 3.81398387e-03],
[ 5.70000000e+02, 3.37092346e-03],
[ 5.80000000e+02, 3.23068141e-03],
[ 5.90000000e+02, 3.05723632e-03],
[ 6.00000000e+02, 3.09739239e-03],
[ 6.10000000e+02, 3.05405864e-03],
[ 6.20000000e+02, 2.75547267e-03],
[ 6.30000000e+02, 2.74734269e-03],
[ 6.40000000e+02, 3.12585244e-03],
[ 6.50000000e+02, 2.63311062e-03],
[ 6.60000000e+02, 2.80843000e-03],
[ 6.70000000e+02, 2.63205892e-03],
[ 6.80000000e+02, 2.43320875e-03],
[ 6.90000000e+02, 2.34780554e-03],
[ 7.00000000e+02, 2.74989242e-03],
[ 7.10000000e+02, 2.65396060e-03],
[ 7.20000000e+02, 2.74958578e-03],
[ 7.30000000e+02, 2.42592976e-03],
[ 7.40000000e+02, 2.36124243e-03],
[ 7.50000000e+02, 2.24864809e-03],
[ 7.60000000e+02, 2.10958999e-03],
[ 7.70000000e+02, 2.21972098e-03],
[ 7.80000000e+02, 2.15565879e-03],
[ 7.90000000e+02, 1.94354681e-03],
[ 8.00000000e+02, 2.07208470e-03],
[ 8.10000000e+02, 1.79990556e-03],
[ 8.20000000e+02, 2.25264253e-03],
[ 8.30000000e+02, 1.98560115e-03],
[ 8.40000000e+02, 1.96959637e-03],
[ 8.50000000e+02, 2.04842980e-03],
[ 8.60000000e+02, 2.08693766e-03],
[ 8.70000000e+02, 1.76062819e-03],
[ 8.80000000e+02, 1.97233260e-03],
[ 8.90000000e+02, 1.81016466e-03],
[ 9.00000000e+02, 1.61202764e-03],
[ 9.10000000e+02, 1.84858113e-03],
[ 9.20000000e+02, 1.78748753e-03],
[ 9.30000000e+02, 1.61385362e-03],
[ 9.40000000e+02, 1.64857600e-03],
[ 9.50000000e+02, 1.92390149e-03],
[ 9.60000000e+02, 1.56112108e-03],
[ 9.70000000e+02, 1.38192112e-03],
[ 9.80000000e+02, 1.69730175e-03],
[ 9.90000000e+02, 1.73896889e-03],
[ 1.00000000e+03, 1.65245950e-03],
[ 1.01000000e+03, 1.59072550e-03],
[ 1.02000000e+03, 1.52913656e-03],
[ 1.03000000e+03, 1.45921006e-03],
[ 1.04000000e+03, 1.48828048e-03],
[ 1.05000000e+03, 1.32613082e-03],
[ 1.06000000e+03, 1.38734130e-03],
[ 1.07000000e+03, 1.59648329e-03],
[ 1.08000000e+03, 1.43139809e-03],
[ 1.09000000e+03, 1.16632087e-03],
[ 1.10000000e+03, 1.11266214e-03],
[ 1.11000000e+03, 1.36368419e-03],
[ 1.12000000e+03, 1.24186347e-03],
[ 1.13000000e+03, 1.34184596e-03],
[ 1.14000000e+03, 1.27591228e-03],
[ 1.15000000e+03, 1.33476185e-03],
[ 1.16000000e+03, 1.06631417e-03],
[ 1.17000000e+03, 1.25052663e-03],
[ 1.18000000e+03, 1.05845672e-03],
[ 1.19000000e+03, 1.07832963e-03],
[ 1.20000000e+03, 1.12250855e-03],
[ 1.21000000e+03, 1.15394918e-03],
[ 1.22000000e+03, 1.20069494e-03],
[ 1.23000000e+03, 1.17206899e-03],
[ 1.24000000e+03, 1.22067961e-03],
[ 1.25000000e+03, 1.00621721e-03],
[ 1.26000000e+03, 1.17754948e-03],
[ 1.27000000e+03, 1.19362981e-03],
[ 1.28000000e+03, 1.16673077e-03],
[ 1.29000000e+03, 9.96863702e-04],
[ 1.30000000e+03, 1.04247418e-03],
[ 1.31000000e+03, 9.48374858e-04],
[ 1.32000000e+03, 1.07050734e-03],
[ 1.33000000e+03, 1.03752105e-03],
[ 1.34000000e+03, 9.01732303e-04],
[ 1.35000000e+03, 8.20075918e-04],
[ 1.36000000e+03, 9.85170249e-04],
[ 1.37000000e+03, 9.01201158e-04],
[ 1.38000000e+03, 8.46857438e-04],
[ 1.39000000e+03, 7.35288486e-04],
[ 1.40000000e+03, 1.03285967e-03],
[ 1.41000000e+03, 7.58806302e-04],
[ 1.42000000e+03, 9.24832013e-04],
[ 1.43000000e+03, 9.23150044e-04],
[ 1.44000000e+03, 8.56927363e-04],
[ 1.45000000e+03, 8.28319462e-04],
[ 1.46000000e+03, 8.03563977e-04],
[ 1.47000000e+03, 7.60792056e-04],
[ 1.48000000e+03, 7.23982230e-04],
[ 1.49000000e+03, 7.47873506e-04],
[ 1.50000000e+03, 8.16523505e-04],
[ 1.51000000e+03, 7.36416667e-04],
[ 1.52000000e+03, 7.58749549e-04],
[ 1.53000000e+03, 8.08843062e-04],
[ 1.54000000e+03, 5.78560284e-04],
[ 1.55000000e+03, 8.03496223e-04],
[ 1.56000000e+03, 7.44468358e-04],
[ 1.57000000e+03, 7.07981410e-04],
[ 1.58000000e+03, 8.13164923e-04],
[ 1.59000000e+03, 7.53172033e-04],
[ 1.60000000e+03, 7.28907587e-04],
[ 1.61000000e+03, 6.68541936e-04],
[ 1.62000000e+03, 7.39133451e-04],
[ 1.63000000e+03, 6.18706807e-04],
[ 1.64000000e+03, 6.43873529e-04],
[ 1.65000000e+03, 6.35291799e-04],
[ 1.66000000e+03, 6.29352638e-04],
[ 1.67000000e+03, 7.09666638e-04],
[ 1.68000000e+03, 6.77118602e-04],
[ 1.69000000e+03, 5.98203740e-04],
[ 1.70000000e+03, 6.76085474e-04],
[ 1.71000000e+03, 6.47579145e-04],
[ 1.72000000e+03, 5.42760710e-04],
[ 1.73000000e+03, 5.62144269e-04],
[ 1.74000000e+03, 4.84195014e-04],
[ 1.75000000e+03, 5.36773121e-04],
[ 1.76000000e+03, 6.04955712e-04],
[ 1.77000000e+03, 5.70987409e-04],
[ 1.78000000e+03, 5.48467215e-04],
[ 1.79000000e+03, 5.25960233e-04],
[ 1.80000000e+03, 5.77939325e-04],
[ 1.81000000e+03, 5.13427309e-04],
[ 1.82000000e+03, 4.74517816e-04],
[ 1.83000000e+03, 5.00856084e-04],
[ 1.84000000e+03, 5.04093478e-04],
[ 1.85000000e+03, 5.83082961e-04],
[ 1.86000000e+03, 5.84273716e-04],
[ 1.87000000e+03, 4.83905198e-04],
[ 1.88000000e+03, 5.62584377e-04],
[ 1.89000000e+03, 5.43479226e-04],
[ 1.90000000e+03, 4.98149195e-04],
[ 1.91000000e+03, 4.98680281e-04],
[ 1.92000000e+03, 5.11123391e-04],
[ 1.93000000e+03, 5.12422412e-04],
[ 1.94000000e+03, 5.25712094e-04],
[ 1.95000000e+03, 4.36786941e-04],
[ 1.96000000e+03, 5.00558410e-04],
[ 1.97000000e+03, 4.37989191e-04],
[ 1.98000000e+03, 6.01494859e-04],
[ 1.99000000e+03, 4.37270093e-04],
[ 2.00000000e+03, 3.75968142e-04]])
In [7]:
train_df = pd.DataFrame(train[:len(initial) + len(output), 0], columns=["train"])
initial_df = pd.DataFrame(initial, columns=["initial"])
output_df = pd.DataFrame(output, columns=["output"], index=range(len(initial), len(initial) + len(output)))
merged = pd.concat([train_df, initial_df, output_df])
merged.plot(figsize=(15, 5), grid=True, style=["-", "-", "k--"])
Out[7]:
<matplotlib.axes._subplots.AxesSubplot at 0x1125ee908>
In [8]:
losses_df = pd.DataFrame(losses, columns=["epoch", "loss"])
losses_df.plot(figsize=(15, 5), grid=True, logy=True, x="epoch")
Out[8]:
<matplotlib.axes._subplots.AxesSubplot at 0x1125c2a58>
In [ ]:
Content source: nayutaya/tensorflow-rnn-sin
Similar notebooks: