Улучшаю свой автоэнкодер для обнаружения аномалий

#neural-network #autoencoder

Вопрос:

Я очень новичок в нейронных сетях и в настоящее время создаю автоэнкодер, чтобы попытаться предсказать аномальные изображения. Ниже приведена моя архитектура модели

 model = Sequential() model.add(Dense(32, activation='relu')) model.add(Dense(16, activation='relu')) model.add(Dense(8, activation='relu')) # size to compress to model.add(Dense(16, activation='relu')) model.add(Dense(32, activation='relu')) model.add(Dense(400, activation="relu")) model.compile(loss='mean_squared_error', optimizer='nadam') history = model.fit(x_normal_train,  x_normal_train,  epochs=10,  batch_size=50,  validation_split=0.1  )  

Входной массив представляет собой массив формы (7000, 400), где каждая строка должна представлять изображение (20,20,1). Однако, независимо от того, как я изменяю свою архитектуру, модель, похоже, не может найти хороший порог, который способен максимизировать AUC на моих тестовых данных. Ниже приведен скриншот ошибок реконструкции:

введите описание изображения здесь

Итак, 2 вопроса

  1. Что я могу сделать, чтобы сделать свою модель лучше?
  2. Мое пороговое значение на одно стандартное отклонение выше среднего, это правильно?

Спасибо всем, очень ценю это!