Как настроить random seed в Tensorflow?
При обучении нейросети я получаю всегда разные результаты при одних и тех же параметрах. Мне нужно получать одни и те же результаты, если я не менял параметров.
Пробовал этот код:
tensorflow.random.set_seed(4)
- не помогает, результаты обучения всегда разные.
Код нейросети:
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import LSTM, Dense, Dropout, Flatten
from tensorflow.keras.metrics import AUC
from tensorflow_addons.metrics import F1Score
batch_size = 4
num_neurons = 100
n_model = Sequential()
n_model.add(LSTM(num_neurons, return_sequences=True, input_shape=(maxlen, emb_dims)))
n_model.add(Dropout(.2))
n_model.add(Dropout(.2))
n_model.add(Flatten())
n_model.add(Dense(n_classes, activation="softmax"))
n_model.compile('rmsprop', loss='categorical_crossentropy', metrics=['accuracy', F1Score(num_classes=15)])
Ответы (2 шт):
Автор решения: kryvoi
→ Ссылка
Первой строчкой перед строкой модели:
tf.keras.utils.set_random_seed(seed)