0

Я пытаюсь определить многопоточную модель с tflearn, так что есть две копии одной и той же архитектуры (или вы можете думать об этом как о модели ансамбля), которую я кормлю различными культуры одного и того же изображения, но не уверены, как я пойду и реализую это с помощью tflearn.tflearn/tensorflow | Определение модели Multi-Stream/Multiscale/Ensemble

я в основном имеют эти данные:

X_train1, X_test1, y_train1, y_test1 : Dataset 1 (16images x 299 x 299px x 3ch) 
X_train2, X_test2, y_train2, y_test2 : Dataset 2 (16images x 299 x 299px x 3ch) 

И я создал до сих пор это на основе logical.pyexample (упрощенный код):

netIn1 = tflearn.input_data(shape=[None, 299, 299, 3]  
net1 = tflearn.conv_2d(netIn1, 16, 3, regularizer='L2', weight_decay=0.0001) 
... 
net1 = tflearn.fully_connected(net1, nbClasses, activation='sigmoid') 
net1 = tflearn.regression(net1, optimizer=adam, loss='binary_crossentropy') 

netIn2 = tflearn.input_data(shape=[None, 299, 299, 3]  
net2 = tflearn.conv_2d(netIn2, 16, 3, regularizer='L2', weight_decay=0.0001) 
... 
net2 = tflearn.fully_connected(net2, nbClasses, activation='sigmoid') 
net2 = tflearn.regression(net2, optimizer=adam, loss='binary_crossentropy') 

, а затем объединить две сети с помощью конкатенации:

net = tflearn.merge([net1, net2], mode = 'concat', axis = 1) 

И начинайте обучение следующим образом:

# Training 
model = tflearn.DNN(net, checkpoint_path='model', 
       max_checkpoints=10, tensorboard_verbose=3, 
       clip_gradients=0.) 

model.fit([X1,X2], [Y1,Y2], validation_set=([testX1, testX2], [testY1,testY2])) 

Итак, теперь моя проблема заключается в том, как разобрать входные данные в начале сети? Как разделить X1 на net1 и X2 на net2?

ответ

0

Вам не нужно разделять X1 и X2, они будут автоматически назначены вашим входным слоям netIn1 и netIn2 (в том же порядке, который вы их определяете).

Смежные вопросы