Theano против тензорного бэкэнда в Керасе - PullRequest
3 голосов
/ 08 мая 2019

У меня есть модель классификатора, которую я обучил, используя бэкэнд 'theano'.Модель работает нормально, и я получил ожидаемую классификацию производительности.Размер тензора Nx3x28x112 Однако я хотел бы использовать тот же классификатор в другом файле (main_file.py), который содержит реализацию GAN (с бэкэндом'tensorflow ').Таким образом, я хочу использовать тот же классификатор в main_file.py и изменить входной размер тензора так, чтобы он был Nx28x112x3 (это правильный вход для бэкэнда тензорного потока).В то время как процедура обучения начинается, представление не близко к тому, которое я получил с 'theano', и близко к случайному исполнению.Моя модель выглядит так:

def createModel():

   model = Sequential()
   # The first two layers with 32 filters of window size 3x3
   model.add(Conv2D(28, (3, 3), padding='same', activation='relu', input_shape=(28, 112, 3))) 
   # or input_shape = (3, 28, 112) in case of theano backend
   model.add(Conv2D(28, (3, 3), activation='relu'))
   model.add(MaxPooling2D(pool_size=(2, 2)))
   model.add(Dropout(0.25))
   model.add(Conv2D(64, (3, 3), padding='same', activation='relu'))
   model.add(Conv2D(64, (3, 3), activation='relu'))
   model.add(MaxPooling2D(pool_size=(2, 2)))
   model.add(Dropout(0.25))
   model.add(Conv2D(64, (3, 3), padding='same', activation='relu'))
   model.add(Conv2D(64, (3, 3), activation='relu'))
   model.add(MaxPooling2D(pool_size=(2, 2)))
   model.add(Dropout(0.25))
   model.add(Flatten())
   model.add(Dense(512, activation='relu'))
   model.add(Dropout(0.5))
   model.add(Dense(256, activation='relu'))
   model.add(Dropout(0.5))
   model.add(Dense(128, activation='relu'))
   model.add(Dropout(0.5))
   model.add(Dense(64, activation='relu'))
   model.add(Dropout(0.5))
   model.add(Dense(nClasses, activation='softmax'))

   return model

Что мне делать, чтобы модель работала нормально?Есть ли принципиальная разница, когда меняется бэкэнд, кроме порядка входных тензоров?

...