Модель Keras выводит нули, даже если mask_zero = True - PullRequest
0 голосов
/ 17 июня 2020

У меня есть модель Keras, определенная как:

Sequential([
    Embedding(input_dim = 11,
              output_dim = 100,
              mask_zero = True,
              batch_input_shape = [None, None]),
    LSTM(1024, return_sequences = True),
    TimeDistributed(Dense(11, activation = 'softmax'))])

Она принимает последовательности чисел от 1 до 10 и предсказывает следующее число.

Размерность ввода и вывода равна 11, потому что последовательности имеют разную длину, поэтому я заполняю их нулями. Я также использую mask_zero=True, чтобы Keras игнорировал нулевые значения.

Но когда я запускаю вывод (model.predict), 0 часто предсказывается как наиболее вероятное значение для ввода. Таким образом, похоже, что он не игнорирует нулевые значения, как я его просил. Он узнал, что 0 иногда следует за другими числами, которые я не хочу, чтобы он узнал.

Правильно ли я использую mask_zero в приведенном выше коде? Если нет, как мне изменить его, чтобы модель выводила прогнозы только для чисел в диапазоне от 1 до 10?

...