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': 1.0,
'learning_rate': 0.1,
'length_of_sequences': 30,
'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])
In [5]:
output = np.load("output.npy")
output
Out[5]:
array([-0.60306442, -0.70077664, -0.78205132, -0.84620517, -0.89326143,
-0.92382586, -0.93904954, -0.94045317, -0.92962795, -0.90795422,
-0.8764298 , -0.835603 , -0.78557295, -0.72602242, -0.65627342,
-0.57537943, -0.482292 , -0.37616497, -0.25686926, -0.12573707,
0.01364657, 0.15513034, 0.29082888, 0.41311783, 0.51668996,
0.59940439, 0.66176069, 0.70576459, 0.73391479, 0.74858099,
0.75172162, 0.74480528, 0.72882617, 0.70434958, 0.67155927,
0.63030022, 0.5801155 , 0.52029175, 0.44993258, 0.36808991,
0.27399588, 0.16742785, 0.04920165, -0.07832778, -0.21103658,
-0.3434065 , -0.46957177, -0.58457035, -0.68507075, -0.76928633,
-0.83647203, -0.88654512, -0.91999412, -0.93787032, -0.94164139,
-0.93290448, -0.91309279, -0.8832801 , -0.84409761, -0.79572409,
-0.73791397, -0.67004812, -0.59121704, -0.50036979, -0.39658767,
-0.27955657, -0.15027599, -0.01187316, 0.12994076, 0.2674607 ,
0.39282864, 0.5001964 , 0.58685023, 0.6528911 , 0.70014256,
0.7310788 , 0.74812812, 0.75333935, 0.74827528, 0.73401803,
0.7112115 , 0.68011087, 0.64062506, 0.59235406, 0.53463143,
0.46658844, 0.38726956, 0.29583859, 0.19191359, 0.07603712,
-0.04980612, -0.18186958, -0.3148669 , -0.44289398, -0.56070101,
-0.66458201, -0.75245315, -0.82338601, -0.87717086, -0.91417199])
In [6]:
losses = np.load("losses.npy")
losses
Out[6]:
array([[ 1.00000000e+01, 5.14299214e-01],
[ 2.00000000e+01, 4.06051934e-01],
[ 3.00000000e+01, 2.98576325e-01],
[ 4.00000000e+01, 2.31547311e-01],
[ 5.00000000e+01, 1.63580269e-01],
[ 6.00000000e+01, 1.20625131e-01],
[ 7.00000000e+01, 8.64456370e-02],
[ 8.00000000e+01, 6.48404285e-02],
[ 9.00000000e+01, 5.51027879e-02],
[ 1.00000000e+02, 3.80532108e-02],
[ 1.10000000e+02, 3.15546654e-02],
[ 1.20000000e+02, 2.28688810e-02],
[ 1.30000000e+02, 1.74451396e-02],
[ 1.40000000e+02, 1.58100855e-02],
[ 1.50000000e+02, 1.18094012e-02],
[ 1.60000000e+02, 8.99142399e-03],
[ 1.70000000e+02, 7.77208107e-03],
[ 1.80000000e+02, 7.64124142e-03],
[ 1.90000000e+02, 5.90149360e-03],
[ 2.00000000e+02, 5.60020562e-03],
[ 2.10000000e+02, 6.77929400e-03],
[ 2.20000000e+02, 5.05460612e-03],
[ 2.30000000e+02, 4.13913652e-03],
[ 2.40000000e+02, 4.51638177e-03],
[ 2.50000000e+02, 4.68806643e-03],
[ 2.60000000e+02, 4.16638888e-03],
[ 2.70000000e+02, 4.10682894e-03],
[ 2.80000000e+02, 3.96843534e-03],
[ 2.90000000e+02, 4.44243336e-03],
[ 3.00000000e+02, 3.75143532e-03],
[ 3.10000000e+02, 3.83800874e-03],
[ 3.20000000e+02, 4.64678090e-03],
[ 3.30000000e+02, 3.69035546e-03],
[ 3.40000000e+02, 3.19817546e-03],
[ 3.50000000e+02, 3.10582435e-03],
[ 3.60000000e+02, 3.48184933e-03],
[ 3.70000000e+02, 3.10967211e-03],
[ 3.80000000e+02, 3.22949374e-03],
[ 3.90000000e+02, 3.20322299e-03],
[ 4.00000000e+02, 2.79973168e-03],
[ 4.10000000e+02, 3.00264242e-03],
[ 4.20000000e+02, 3.11974948e-03],
[ 4.30000000e+02, 2.64310185e-03],
[ 4.40000000e+02, 2.81620654e-03],
[ 4.50000000e+02, 3.01243388e-03],
[ 4.60000000e+02, 2.87274132e-03],
[ 4.70000000e+02, 2.82932469e-03],
[ 4.80000000e+02, 2.67980853e-03],
[ 4.90000000e+02, 2.88124895e-03],
[ 5.00000000e+02, 2.07136036e-03],
[ 5.10000000e+02, 2.45733769e-03],
[ 5.20000000e+02, 2.27765110e-03],
[ 5.30000000e+02, 2.09642225e-03],
[ 5.40000000e+02, 2.43364787e-03],
[ 5.50000000e+02, 2.15963810e-03],
[ 5.60000000e+02, 1.90383196e-03],
[ 5.70000000e+02, 2.54397746e-03],
[ 5.80000000e+02, 2.44595297e-03],
[ 5.90000000e+02, 2.40491400e-03],
[ 6.00000000e+02, 2.13587098e-03],
[ 6.10000000e+02, 2.11449293e-03],
[ 6.20000000e+02, 2.49499036e-03],
[ 6.30000000e+02, 2.29623588e-03],
[ 6.40000000e+02, 2.07798206e-03],
[ 6.50000000e+02, 2.20803521e-03],
[ 6.60000000e+02, 1.96317141e-03],
[ 6.70000000e+02, 2.04429054e-03],
[ 6.80000000e+02, 2.12295516e-03],
[ 6.90000000e+02, 2.10759323e-03],
[ 7.00000000e+02, 2.22412962e-03],
[ 7.10000000e+02, 1.64359505e-03],
[ 7.20000000e+02, 1.77184003e-03],
[ 7.30000000e+02, 2.17923173e-03],
[ 7.40000000e+02, 1.66724506e-03],
[ 7.50000000e+02, 1.96217862e-03],
[ 7.60000000e+02, 2.06538267e-03],
[ 7.70000000e+02, 2.08564755e-03],
[ 7.80000000e+02, 1.85470982e-03],
[ 7.90000000e+02, 1.70560169e-03],
[ 8.00000000e+02, 1.67183892e-03],
[ 8.10000000e+02, 1.54415308e-03],
[ 8.20000000e+02, 1.74338848e-03],
[ 8.30000000e+02, 1.82914222e-03],
[ 8.40000000e+02, 1.51423726e-03],
[ 8.50000000e+02, 1.48499699e-03],
[ 8.60000000e+02, 1.66884821e-03],
[ 8.70000000e+02, 1.73181831e-03],
[ 8.80000000e+02, 1.98295061e-03],
[ 8.90000000e+02, 1.32101239e-03],
[ 9.00000000e+02, 1.91342575e-03],
[ 9.10000000e+02, 1.48970960e-03],
[ 9.20000000e+02, 1.51454227e-03],
[ 9.30000000e+02, 1.49595540e-03],
[ 9.40000000e+02, 1.53640925e-03],
[ 9.50000000e+02, 1.62155693e-03],
[ 9.60000000e+02, 1.43512338e-03],
[ 9.70000000e+02, 1.47841638e-03],
[ 9.80000000e+02, 1.72740791e-03],
[ 9.90000000e+02, 1.66376506e-03],
[ 1.00000000e+03, 1.66514784e-03],
[ 1.01000000e+03, 1.35349890e-03],
[ 1.02000000e+03, 1.70378876e-03],
[ 1.03000000e+03, 1.27725897e-03],
[ 1.04000000e+03, 1.37980795e-03],
[ 1.05000000e+03, 1.24301843e-03],
[ 1.06000000e+03, 1.60062173e-03],
[ 1.07000000e+03, 1.35618006e-03],
[ 1.08000000e+03, 1.22934836e-03],
[ 1.09000000e+03, 1.49137015e-03],
[ 1.10000000e+03, 1.45851437e-03],
[ 1.11000000e+03, 1.34679675e-03],
[ 1.12000000e+03, 1.49470568e-03],
[ 1.13000000e+03, 1.40944438e-03],
[ 1.14000000e+03, 1.25473586e-03],
[ 1.15000000e+03, 1.09636795e-03],
[ 1.16000000e+03, 1.13008905e-03],
[ 1.17000000e+03, 1.19094318e-03],
[ 1.18000000e+03, 1.24183018e-03],
[ 1.19000000e+03, 1.34487834e-03],
[ 1.20000000e+03, 1.33725081e-03],
[ 1.21000000e+03, 1.18475361e-03],
[ 1.22000000e+03, 1.23808428e-03],
[ 1.23000000e+03, 1.23981433e-03],
[ 1.24000000e+03, 1.08027854e-03],
[ 1.25000000e+03, 1.26340892e-03],
[ 1.26000000e+03, 1.26421195e-03],
[ 1.27000000e+03, 1.15914049e-03],
[ 1.28000000e+03, 1.20796671e-03],
[ 1.29000000e+03, 1.45062362e-03],
[ 1.30000000e+03, 1.23071519e-03],
[ 1.31000000e+03, 1.08421291e-03],
[ 1.32000000e+03, 1.22234039e-03],
[ 1.33000000e+03, 7.76520988e-04],
[ 1.34000000e+03, 9.57602053e-04],
[ 1.35000000e+03, 1.23155920e-03],
[ 1.36000000e+03, 1.06812327e-03],
[ 1.37000000e+03, 1.06417050e-03],
[ 1.38000000e+03, 8.57682200e-04],
[ 1.39000000e+03, 9.48817702e-04],
[ 1.40000000e+03, 9.21793340e-04],
[ 1.41000000e+03, 1.00959733e-03],
[ 1.42000000e+03, 1.22030149e-03],
[ 1.43000000e+03, 1.03361229e-03],
[ 1.44000000e+03, 1.03932025e-03],
[ 1.45000000e+03, 9.33245581e-04],
[ 1.46000000e+03, 1.07238698e-03],
[ 1.47000000e+03, 1.04467419e-03],
[ 1.48000000e+03, 9.10848554e-04],
[ 1.49000000e+03, 1.03442254e-03],
[ 1.50000000e+03, 1.01821963e-03],
[ 1.51000000e+03, 1.02157961e-03],
[ 1.52000000e+03, 1.06270995e-03],
[ 1.53000000e+03, 9.35602351e-04],
[ 1.54000000e+03, 9.83089209e-04],
[ 1.55000000e+03, 1.01950683e-03],
[ 1.56000000e+03, 9.13246127e-04],
[ 1.57000000e+03, 8.99084494e-04],
[ 1.58000000e+03, 1.01720507e-03],
[ 1.59000000e+03, 1.00712280e-03],
[ 1.60000000e+03, 9.26661480e-04],
[ 1.61000000e+03, 9.77701042e-04],
[ 1.62000000e+03, 7.82199146e-04],
[ 1.63000000e+03, 9.94807575e-04],
[ 1.64000000e+03, 8.09351273e-04],
[ 1.65000000e+03, 6.83782389e-04],
[ 1.66000000e+03, 8.43601360e-04],
[ 1.67000000e+03, 8.85169080e-04],
[ 1.68000000e+03, 8.01701681e-04],
[ 1.69000000e+03, 8.46941897e-04],
[ 1.70000000e+03, 9.14356264e-04],
[ 1.71000000e+03, 9.59969359e-04],
[ 1.72000000e+03, 9.27104382e-04],
[ 1.73000000e+03, 8.82089371e-04],
[ 1.74000000e+03, 8.67193914e-04],
[ 1.75000000e+03, 7.31891312e-04],
[ 1.76000000e+03, 8.92537821e-04],
[ 1.77000000e+03, 8.96424812e-04],
[ 1.78000000e+03, 8.32971360e-04],
[ 1.79000000e+03, 6.07229304e-04],
[ 1.80000000e+03, 7.79807800e-04],
[ 1.81000000e+03, 8.04992334e-04],
[ 1.82000000e+03, 7.75278779e-04],
[ 1.83000000e+03, 8.48606520e-04],
[ 1.84000000e+03, 7.40759075e-04],
[ 1.85000000e+03, 8.33616825e-04],
[ 1.86000000e+03, 8.40267166e-04],
[ 1.87000000e+03, 7.99061207e-04],
[ 1.88000000e+03, 6.95234339e-04],
[ 1.89000000e+03, 7.04594713e-04],
[ 1.90000000e+03, 8.34880047e-04],
[ 1.91000000e+03, 7.63384975e-04],
[ 1.92000000e+03, 7.22553639e-04],
[ 1.93000000e+03, 7.06191815e-04],
[ 1.94000000e+03, 7.08701322e-04],
[ 1.95000000e+03, 7.28812360e-04],
[ 1.96000000e+03, 7.89843732e-04],
[ 1.97000000e+03, 7.11146742e-04],
[ 1.98000000e+03, 7.94613909e-04],
[ 1.99000000e+03, 7.46949925e-04],
[ 2.00000000e+03, 7.93254992e-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 0x105f1b8d0>
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 0x105eec240>
In [ ]:
Content source: nayutaya/tensorflow-rnn-sin
Similar notebooks: