Я пытаюсь реализовать статью о смеси экспертов CNN, и мне нужно добавить слои слияния как взвешенную сумму выходных данных каждой CNN, где вес - это выход сети стробирования. Так что мой режим - это пользовательская функция.
Вот код, который я пытаюсь запустить:
def merge_mode(branches):
g, o1, o2, o3, o4 = branches
return K.transpose(K.transpose(o1)*g[:,0] + K.transpose(o2)*g[:,1] + K.transpose(o3)*g[:,2] + K.transpose(o4)*g[:,3])
model = Sequential()
model.add(merge([gate, model1, model2, model3, model4], output_shape=(3,), mode=merge_mode))