0

I am trying to make a time series deep learning model, but I do not know why the training accuracy remains at zero and the validation accuracy remains constant. Here are the code and training and accuracy figures. Would appreciate it if someone helps me. train_x.shape=(28,14,9) and train_y.shape=(28,)

optimizer = keras.optimizers.Adam(lr=.0000001)
model = Sequential()

model.add(LSTM(units=16, activation='relu', return_sequences=True, input_shape=(train_x.shape[1], train_x.shape[2])))

model.add(Dropout(0.2))

model.add(Dense(units=8))
model.add(Dropout(0.2))
model.add(Dense(units=1))
model.compile(optimizer=optimizer, loss='mae', metrics=['accuracy'])

history = model.fit(train_x, train_y, epochs=10, batch_size=16, validation_split=0.28, verbose=1)

Epoch 1/10
2/2 [==============================] - 2s 256ms/step - loss: 1.0722 - accuracy: 0.0000e+00 - val_loss: 0.2569 - val_accuracy: 0.1250
Epoch 2/10
2/2 [==============================] - 0s 23ms/step - loss: 1.0573 - accuracy: 0.0000e+00 - val_loss: 0.2568 - val_accuracy: 0.1250
Epoch 3/10
2/2 [==============================] - 0s 24ms/step - loss: 1.0742 - accuracy: 0.0000e+00 - val_loss: 0.2568 - val_accuracy: 0.1250
Epoch 4/10
2/2 [==============================] - 0s 26ms/step - loss: 1.0680 - accuracy: 0.0000e+00 - val_loss: 0.2568 - val_accuracy: 0.1250
Epoch 5/10
2/2 [==============================] - 0s 24ms/step - loss: 1.0826 - accuracy: 0.0000e+00 - val_loss: 0.2568 - val_accuracy: 0.1250
Epoch 6/10
2/2 [==============================] - 0s 23ms/step - loss: 1.0595 - accuracy: 0.0000e+00 - val_loss: 0.2568 - val_accuracy: 0.1250
Epoch 7/10
2/2 [==============================] - 0s 28ms/step - loss: 1.0163 - accuracy: 0.0000e+00 - val_loss: 0.2568 - val_accuracy: 0.1250
Epoch 8/10
2/2 [==============================] - 0s 27ms/step - loss: 1.0415 - accuracy: 0.0000e+00 - val_loss: 0.2568 - val_accuracy: 0.1250
Epoch 9/10
2/2 [==============================] - 0s 30ms/step - loss: 1.0222 - accuracy: 0.0000e+00 - val_loss: 0.2568 - val_accuracy: 0.1250
Epoch 10/10
2/2 [==============================] - 0s 26ms/step - loss: 1.0404 - accuracy: 0.0000e+00 - val_loss: 0.2568 - val_accuracy: 0.1250
Frightera
  • 4,773
  • 2
  • 13
  • 28

1 Answers1

1

Accuracy between target y and prediction p is

  #{ y_i == p_i }
 ----------------
       #y

Given that you are working with regression what is an accuracy between

y = 1, 1, 1, 1

and

p = 1.000000000000001, 1.000000000000001, 1.000000000000001, 1.000000000000001

?

To solve: change your metric to mae, or change your problem to actual classification before using accuracy.

lejlot
  • 64,777
  • 8
  • 131
  • 164