我正在训练具有以下结构的keras自动编码器模型:
model = Sequential()
model.add(Dense(128, activation='relu', input_shape=(MAX_CONTEXTS, 3)))
model.add(Dense(64, activation='relu'))
model.add(Dense(32, activation='relu'))
model.add(Dense(64, activation='relu'))
model.add(Dense(128, activation='relu'))
model.add(Dense(3, activation='relu'))
model.compile(optimizer='adam', loss='mse', metrics=['accuracy'])
我的数据的形状为(number_of_samples,430,3),并且包含[-1.9236537371711413,1.9242677998256246]中的值。该数据已被标准化。然后,我训练该模型:
history = model.fit(X, X, epochs=15, batch_size=2, verbose=1, shuffle=True, validation_split=0.2)
并获得95.03%的准确度(可疑高,但是我现在的问题是其他问题)。现在,当我预测数据样本时,正值相对较好,接近输入中的值,但是负值都四舍五入。这是否是我选择的损失函数的错?如果可以,我应该选择哪个其他损失函数?还是我必须以不同的方式扩展数据?