我使用 keras 构建了一个经典的 ANN,它提供了结果(0 或 1)的概率(使用 sigmoid 函数)。虽然当模型拟合约 90% 时模型的准确性很高,但测试集结果的结果概率非常差。我该如何解释这个?
构建人工神经网络
classifier = Sequential()
classifier.add(Dense(activation="relu",input_dim=7,kernel_initializer="uniform", units = 4))
classifier.add(Dense(activation="relu",kernel_initializer="uniform", units = 4))
classifier.add(Dense(activation="sigmoid", kernel_initializer="uniform", units = 1))
classifier.compile(optimizer="adam", loss="binary_crossentropy",metrics=['accuracy'])
classifier.fit(X_train,y_train, batch_size=10,epochs=100)
预测结果:
y_pred = classifier.predict(X_test)
我附上了测试集结果,其中可以看到与频率相关的结果概率。蓝色表示 1 的概率,橙色表示 0

这是过拟合的情况吗?如何调整 ann 以避免过度拟合?