Я работаю со старым Tensorflow (2.7) и Java Tensorflow, но ответ все равно может помочь другим отслеживать подобные проблемы. Моя модель создает ошибку при сохранении в формате save () 2.7: < /p>
CustomMaskWarning: Custom mask layers require a config and must override get_config. When loading, the custom mask layer must be passed to the custom_objects argument.
< /code>
Первоначально я представлял, что это произошло из -за функции метрики и потерь, поскольку модель не может сохранить и загружать их, предположительно из -за какой -то проблемы сериализации. < /p>
def masked_mae(y_true, y_pred):
# Mask NaN values, replace by 0
y_true = tf.where(tf.math.is_nan(y_true), y_pred, y_true)
# Calculate absolute differences
absolute_differences = tf.abs(y_true - y_pred)
# Compute the mean, ignoring potential NaN values (if any remain after replacement)
mae = tf.reduce_mean(absolute_differences)
return mae
< /code>
Я не знаю, как доставить custom_objects в Java, и я закончил обучение, поэтому я попытался собрать модель с потерей = none и metrics = none и сохранить ее таким образом. Модель может быть загружена этим изменением, но ошибка не исчезла. Есть ли способ отследить, какой слой вызывает это и почему? Это просто неприятность? Нет очевидного использования масок.
Подробнее здесь: https://stackoverflow.com/questions/794 ... its-source