Используя Keras в Python, я тренирую традиционную модель NN с прямой связью, чтобы получить высокоразмерный выходной вектор с плавающей запятой (N = 2904).Обычно во время обучения общая потеря (в данном случае ошибка RMS) автоматически отображается для каждой эпохи, а также записывается в объект истории.
Я также хотел бы отслеживать потери, связанные с отдельные элементы вектора - например, периодически сохранять вектор элемента 2904, содержащий ошибки RMS для каждого выходного элемента.Это не обязательно обновлять с той же частотой, что и общие потери, но все же достаточно часто, чтобы увидеть, какие элементы быстро сходятся, а какие нет.Может ли это быть сделано с соответствующим образом определенным обратным вызовом?
Для конкретности, вот пример кода (в данном случае автоэнкодер, хотя это не обязательно относится к вопросу).
x_train = data[0:M , :] #even samples
x_test = data[1:M-1 , :] #odd samples
print(x_train.shape, x_test.shape)
(19728, 2904) (19727, 2904)
history = autoencoder.fit(x_train, x_train,
epochs=1000,
batch_size=8192,
shuffle=True,
validation_data=(x_test, x_test))