Я использую модель Keras Sequential, где входные данные и метки одинаковы при каждом запуске. Keras использует бэкенд Tensorflow.
Я установил активацию слоев на «нули» и отключил пакетное перемешивание во время обучения.
model = Sequential()
model.add(Dense(128,
activation='relu',
kernel_initializer='zeros',
bias_initializer='zeros'))
...
model.compile(optimizer='rmsprop', loss='binary_crossentropy')
model.fit(x_train, y_train,
batch_size = 128, verbose = 1, epochs = 200,
validation_data=(x_validation, y_validation),
shuffle=False)
Я также пробовал использовать метод random()
Numpy:
np.random.seed(7) # fix random seed for reproducibility
С учетом вышеизложенного я все еще получаю разные значения точности и потерь после обучения.
Я что-то упускаю или нет возможности полностью убрать разницу между тренировками?