我的模型精度在第一个纪元后没有改变

数据挖掘 神经网络 张量流 过拟合
2022-03-07 22:42:15

我已经创建了一个模型来预测洛杉矶的房价,而应该是一个简单的回归问题让我很头疼,因为损失太大而且我的准确性不会改变。

我已经尝试过规范化、改变架构(减少层数、隐藏单元)、添加 dropout、改变损失函数、批量大小、时期,我的准确率仍然只有 0.022

input_shape = X_train_2[0].shape

model = tf.keras.models.Sequential([
    tf.keras.layers.Flatten(input_shape=input_shape),
    tf.keras.layers.Dense(units=300, activation=tf.nn.relu),
    tf.keras.layers.BatchNormalization(),
    tf.keras.layers.Dropout(0.1),
    tf.keras.layers.Dense(units=300, activation=tf.nn.relu),
    tf.keras.layers.BatchNormalization(),
    tf.keras.layers.Dropout(0.1),
    tf.keras.layers.Dense(units = 1, kernel_initializer = 'lecun_normal', activation='linear')
    ])

model.compile(optimizer='adam',loss='mean_squared_error', metrics=['accuracy'])
model.fit(X_train, y_train, epochs=5, batch_size=32)
model.summary()
model.evaluate(X_test_, y_test)

训练日志

Epoch 1/5 32444/32444 [==============================] - 1s
    38us/sample - loss: 90230324650039.5469 - acc: 0.0012 
Epoch 2/5
    32444/32444 [==============================] - 1s 28us/sample -
    loss: 90230315396180.2031 - acc: 0.0022 
Epoch 3/5 32444/32444
    [==============================] - 1s 27us/sample - loss:
    90230293267377.3438 - acc: 0.0022 
Epoch 4/5 32444/32444 [==============================] - 1s 27us/sample - loss:
    90230260607518.6250 - acc: 0.0022 
Epoch 5/5 32444/32444 [==============================] - 1s 28us/sample - loss:
    90230216684525.4375 - acc: 0.0022
1个回答

尽管您正在处理回归问题,但您的指标是准确性,这没有意义。您应该改用:

metrics = ['mean squared error']