Некоторая информация о примерной модели:
- Библиотека: keras 2.2.4
- Серверная часть: тензор потока 1.14.0
- Модель входные данные: [X1, X2, X3]
- Основные истины: y1_gt, y2_gt
- Выходы модели (например): [y1_pred, y2_pred] (тензоры с различными формами)
- Функции потерь: Loss_y1, Loss_y2
Описание проблемы:
Существует зависимость между функциями потерь. Например, чтобы вычислить Loss_y1 (y1_gt, y1_pred) , некоторый анализ statisti c должен быть выполнен над другим выходом ( y2_pred ), и результат повлияет на то, как рассчитать Loss_Y1, используя y1_gt и y1_pred . После вычисления Loss_y1 необходимо провести некоторый анализ значения Loss_y1, чтобы узнать, как рассчитать Loss_y2 (y2_gt, y2_pred) . Проще говоря, позвольте мне привести пример, предположим, что анализ второго выхода ( y2_pred ) определяет значение параметра, скажем, Alpha ; затем вычисляется первая функция потерь ( Loss_y1 ), которая имеет зависимость от Alpha . В следующем анализе Loss_y1 определяет значение другого параметра, скажем, Beta . Затем Loss_y2 , который имеет зависимость от Beta , вычисляется путем оценки y2_gt и y2_pred . В конце обе функции взвешиваются для генерации общего убытка. Опять же, я хочу подчеркнуть, что в некоторых терминах существует зависимость между двумя функциями потерь, и я не могу передать их как две отдельные функции потерь внутри dict для файла model.com. Идеальным решением было бы иметь одну функцию в качестве основной функции потерь, которая получает список выходных данных в качестве входных данных, делает все необходимое, а затем возвращает общую потерю, но как это можно реализовать. Заранее спасибо за любую рекомендацию,