0

My training data consists of 3 variables X1, X2, X3 such that

Y = (X1 * X2 / 1e6) * X3

Example of data

X1 X2 X3 Y
310 768 952 0.2267
157 889 860 0.1200
157 787 610 0.0754
97 385 118 0.044

using data size of 80000 rows trained over 500 epochs with early stopping.

I structured the network like so

model = Sequential()
model.add(Dense(32, input_dim=3, activation='relu'))
model.add(Dense(16, input_dim=3, activation='relu'))
model.add(Dense(8, input_dim=3, activation='relu'))
model.add(Dense(1, activation='linear'))

model.compile(loss='mean_squared_error',optimizer='adam')

However, after training the output network were unable to predict even seen training examples.

Training loss stalled at about 0.0145

model.predict([
    [310, 768, 952], 
    [157,787,610],
    [1,1,1],
    [5,5,5]
])

output:

array([[0.07321107],

[0.07321107],

[0.07321107],

[0.07321107]], dtype=float32)

Which is wrong. Wondering what should I do to correct this?

40pro
  • 111
  • 4

0 Answers0