ValueError: Все входные массивы (x) должны иметь одинаковое количество выборок. - PullRequest
0 голосов
/ 28 января 2020

Модель My (Keras) имеет два входа разных форм. пример на веб-сайте Keras говорит, что он должен работать.

Я определил входные данные следующим образом:

model1 = Model(inputs=[uii,  vji], outputs=[decoded,decoded2, prod])
model1.summary()


Model: "model_10"
__________________________________________________________________________________________________
Layer (type)                    Output Shape         Param #     Connected to                     
==================================================================================================
input_49 (InputLayer)           [(None, 1682)]       0                                            
__________________________________________________________________________________________________
input_51 (InputLayer)           [(None, 943)]        0                                            
__________________________________________________________________________________________________

Но при подгонке модели:

model1.fit([matrix, matrix.T], [matrix, matrix.T,matrix.reshape(-1)])

Выдает следующую ошибку:

/ tenorflow-2.1.0 / python3 .6 / tenorflow_core / python / keras / engine / training_utils.py в check_array_lengths (входные данные, цели, веса) ) 733 повысить ValueError ('Все входные массивы (x) должны иметь' 734 'с одинаковым числом выборок. Получил формы массива:' + -> 735 str ([x.shape для x во входах])) 736 если len ( set_y)> 1: 737 повысить ValueError («Все целевые массивы (y) должны иметь»

ValueError: Все входные массивы (x) должны иметь одинаковое количество выборок. Получил формы массивов: [(943, 1682 ), (1682, 943)]

Любое решение, чтобы исправить эту ошибку? Спасибо

1 Ответ

0 голосов
/ 28 января 2020

Я нашел решение этой проблемы. Это длина входов должна быть одинаковой. Итак, я изменяю входные данные на ту же длину, что и на вывод.

Например: я установил длину обоих входов на 1682, предварительно обработав данные.

The shape of input1 can be (1682, 943)
The shape of input2 should be (1682, 1682)
...