Я использую Keras для построения нейронной сети, и модель успешно компилируется, и я нормализовал данные.
однако, когда я использую model.predict (xtest), я получаю одно и то же значение для каждого прогнозируемого результата
def model_final():
model = models.Sequential()
model.add(layers.Dense(64, activation='relu',
input_shape=(xtrain.shape[1],),
kernel_regularizer = regularizers.l2(0.001)))
model.add(layers.Dense(64, activation='relu',
kernel_regularizer = regularizers.l2(0.001)))
model.add(layers.Dense(1))
model.compile(optimizer='rmsprop', loss='mse', metrics=['mae'])
return model
model = model_final()
model_final = model.fit(xtrain, ytrain, epochs = 100, batch_size = 10, verbose = 0)
model_final_eval = model.evaluate(xtest, ytest)
, для которого я получаю следующую среднеквадратическую ошибку и могу:
214/214 [==============================] - 3s 14ms/step
[1.9285373412534785e-06, 0.00061284683733987052]
Затем, когда я использую model.predict(xtest)
, я получаю следующий вывод:
array([[ 0.0014801],
[ 0.0014801],
[ 0.0014801],...
для всех значений в model.predict
.
Я предполагаю, что одно и то же прогнозируемое значение для всех значений в наборе данных не может быть правильным.
предложений?
Спасибо!