На входе находятся 3 независимых канала с 1000 функциями.Я пытаюсь пропустить каждый канал через независимый путь NN, а затем объединить их в плоский слой.Затем нанесите FCN на ровный слой для двоичной классификации.Я пытаюсь добавить несколько плотных слоев вместе, например:
def tst_1 ():
inputs = Input((3, 1000, 1))
dense10 = Dense(224, activation='relu')(inputs[0,:,1])
dense11 = Dense(112, activation='relu')(dense10)
dense12 = Dense(56, activation='relu')(dense11)
dense20 = Dense(224, activation='relu')(inputs[1,:,1])
dense21 = Dense(112, activation='relu')(dense20)
dense22 = Dense(56, activation='relu')(dense21)
dense30 = Dense(224, activation='relu')(inputs[2,:,1])
dense31 = Dense(112, activation='relu')(dense30)
dense32 = Dense(56, activation='relu')(dense31)
flat = keras.layers.Add()([dense12, dense22, dense32])
dense1 = Dense(224, activation='relu')(flat)
drop1 = Dropout(0.5)(dense1)
dense2 = Dense(112, activation='relu')(drop1)
drop2 = Dropout(0.5)(dense2)
dense3 = Dense(32, activation='relu')(drop2)
densef = Dense(1, activation='sigmoid')(dense3)
model = Model(inputs = inputs, outputs = densef)
model.compile(optimizer=Adam(), loss='binary_crossentropy', metrics=['accuracy'])
return model
model = tst_1()
model.summary()
, но я получил эту ошибку:
/usr / local / lib / python2.7 / dist-packages / keras / engine / network.pyc в build_map (тензор, конечные_узлы, node_in_progress, слой, node_index, tenor_index) 1310 ValueError: если обнаружен цикл.1311 "" "-> 1312 node = layer._inbound_nodes [node_index] 1313 1314 # Предотвращать циклы.
AttributeError: у объекта 'NoneType' нет атрибута '_inbound_nodes'