В настоящее время пытаемся составить сетку параметров поиска для довольно простой модели глубокого обучения, используя tf.keras:
params = getTensorParams()
batchSize = 64*2*2
epochs = 15
learningRate = 0.01
noVals = np.load(pre + 'noVals.npy')
noBatches = math.ceil(noVals / batchSize)
call = tf.keras.callbacks.EarlyStopping(monitor='val_loss', min_delta=0, patience=4, verbose=2, mode='auto',
restore_best_weights=True)
timeStart = time.time()
model = tf.keras.models.Sequential()
model.add(tf.keras.layers.BatchNormalization(epsilon=0.001, center=True, scale=True))
model.add(tf.keras.layers.Dense(layerSize1, activation=activationFunc1, activity_regularizer=tf.keras.regularizers.l1(0.001)))
model.add(tf.keras.layers.Dropout(dropout1))
model.add(tf.keras.layers.Dense(layerSize2, activation=activationFunc2, activity_regularizer=tf.keras.regularizers.l2(0.001)))
model.add(tf.keras.layers.Dropout(dropout2))
model.add(tf.keras.layers.Dense(1, activation='sigmoid'))
opt = tf.keras.optimizers.Adam(lr=learningRate, decay=learningRate/epochs)
model.compile(optimizer=opt, loss='binary_crossentropy', metrics=['accuracy'])
results = model.fit_generator(
dataGeneratorLoad(noVals, batchSize, params['fileLength'], pre),
steps_per_epoch=noBatches, verbose=2,
epochs=epochs,
validation_data=(validation_x, validation_y),
callbacks=[
call,
]
)
Это соответствующий код во всей его полноте. Этот код при локальном запуске работает как положено. Однако при запуске в Google Colab с графическим процессором выдает следующий вывод:
Epoch 1/15
145500/1701 - 7s - loss: 1.0490 - acc: 0.6385
1701/1701 - 196s - loss: 0.2924 - acc: 0.8286 - val_loss: 0.7632 - val_acc: 0.6385
Epoch 2/15
Epoch 1/15
145500/1701 - 7s - loss: 1.0077 - acc: 0.6463
1701/1701 - 142s - loss: 0.2255 - acc: 0.8664 - val_loss: 0.8231 - val_acc: 0.6463
Epoch 3/15
Epoch 1/15
145500/1701 - 7s - loss: 1.1563 - acc: 0.6394
1701/1701 - 143s - loss: 0.1931 - acc: 0.8899 - val_loss: 0.8333 - val_acc: 0.6394
Epoch 4/15
Epoch 1/15
145500/1701 - 7s - loss: 0.9712 - acc: 0.6381
1701/1701 - 140s - loss: 0.2216 - acc: 0.8176 - val_loss: 0.8932 - val_acc: 0.6381
Epoch 5/15
Epoch 1/15
145500/1701 - 7s - loss: 1.0497 - acc: 0.6369
Это происходит каждую эпоху. Просто интересно, сталкивался ли кто-нибудь с этим или знает исправление. Первый вопрос, так что lmk, если контент нужно добавить. Самое удивительное в том, что он работает хорошо локально. Кажется, не могу найти это в другом месте.