ValueError: Ошибка при проверке ввода: ожидалось, что embedding_1_input будет иметь shape (4,), но получит массив со связанной с shape (1,) numpy - PullRequest
0 голосов
/ 03 марта 2020

Я пытаюсь предсказать подготовленную модель кератов. Машинный перевод

, но я получаю ошибку, и я не могу решить или найти подходящий ответ

, и кажется, что каждый получает это ошибка

код **: **

model = load_model('model.h5')

single_x_test = ['how are you']

model.predict(np.array(single_x_test, ndmin=0))

ValueError: Ошибка при проверке ввода: ожидается, что embedding_1_input будет иметь форму (4,) но получил массив с формой (1,)

1 Ответ

1 голос
/ 03 марта 2020

Со всеми обновлениями, я думаю, если вы измените свой код таким образом, это может помочь решить вашу проблему:

Вам нужно немного изменить функцию загрузки:

def load_test_data(X_data, X_word_to_ix, max_len):


    X = [text_to_word_sequence(x)[::-1] for x in X_data.split('\n') if 0 < len(x) <= max_len]
    for i, sentence in enumerate(X):
        for j, word in enumerate(sentence):

            if word in X_word_to_ix:
                X[i][j] = X_word_to_ix[word]
            elif word in X_word_to_ix is None:
                X[i][j] = None
            else:
                X[i][j] = X_word_to_ix['UNK']
    return X

И

model = load_model('model.h5')

single_x_test = 'how are you'

X=load_test_data(single_x_test, X_word_to_ix, max_len)
X= pad_sequences(X, maxlen=X_max_len, dtype='int32')
model.predict(X)

Надеюсь, это даст вам то, что вы хотите

...