У меня есть модель keras с одним входом и двумя выходами.Два выхода разделены, потому что один выход имеет линейную активацию (для оценки значения линейной регрессии), а другой выход имеет активацию softmax (пытается экспериментировать с изучением значения достоверности из-за шумных входных данных).
in_layer = Input((1,))
Hlayer1 = Dense(4,activation='linear')(in_layer)
Hlayer2 = Dense(4,activation='relu')(Hlayer1)
out_1 = Dense(1, activation='linear')(Hlayer2)
out_2 = Dense(1, activation='softmax')(Hlayer2)
model = Model(inputs=[in_layer], outputs = [out_1,out_2])
Я хотел бы создать смешанную функцию потерь в виде:
loss = (1 - out_2) x MSE(out_1) + out_2 x MSE(out_1)
В попытке попытаться уловить неопределенность в ответе с прогнозом out_2, ифактический ответ в прогнозе out_1.
Я пытался написать пользовательскую функцию потерь и могу заставить игрушечные примеры работать на модели с одним выходом, но в модели с несколькими выходами функция потерь, кажется, вызывается отдельнодля каждого выхода, поэтому я изо всех сил пытаюсь получить доступ к переменным, необходимым для функции смешанных потерь.
Любой совет по достижению этого?
Спасибо!