Увеличение размера тренировки вводит ошибки Keras - PullRequest
0 голосов
/ 09 марта 2019

У меня есть слово встраивание нейронной сети, которое отлично работает на небольших наборах моего корпуса, но когда я увеличиваю обучающий набор до сотен тысяч записей (не меняя ничего другого), я получаю следующую ошибку:

ValueError: Error when checking input: expected documents to have shape (46,) but got array with shape (1,)

Краткое описание модели выглядит следующим образом:

__________________________________________________________________________________________________
Layer (type)                    Output Shape         Param #     Connected to
==================================================================================================
ingredients (InputLayer)        (None, 46)           0
__________________________________________________________________________________________________
documents (InputLayer)          (None, 46)           0
__________________________________________________________________________________________________
ingredients_embedding (Embeddin (None, 46, 50)       8709200     ingredients[0][0]
__________________________________________________________________________________________________
documents_embedding (Embedding) (None, 46, 50)       8709200     documents[0][0]
__________________________________________________________________________________________________
lambda_1 (Lambda)               (None, 50)           0           ingredients_embedding[0][0]
__________________________________________________________________________________________________
lambda_2 (Lambda)               (None, 50)           0           documents_embedding[0][0]
__________________________________________________________________________________________________
dot_product (Dot)               (None, 1)            0           lambda_1[0][0]
                                                                 lambda_2[0][0]
__________________________________________________________________________________________________
reshape_1 (Reshape)             (None, 1)            0           dot_product[0][0]
==================================================================================================
Total params: 17,418,400
Trainable params: 17,418,400
Non-trainable params: 0

А вот точка входа в модель, где генератор выдает данные для обучения:

negative_ratio, n_positive = 2, 100
t = Trainer()
training_data_pairs = t.index_and_encode()
training_size, embedding_size, input_size = len(training_data_pairs), 50, 46

batch = t.generate_batch(n_positive, negative_ratio=negative_ratio)
model = model(training_size, embedding_size, input_size)
h = model.fit_generator(
    batch,
    epochs=10,
    steps_per_epoch=int(training_size/n_positive),
    verbose=2
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...