我正在尝试预测keras机器翻译的预训练模型
但是我得到了错误,我无法解决或找到合适的答案
似乎每个人都会遇到此 错误
代码**:**
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,)
答案 0 :(得分:1)
有了所有更新,我认为如果您以此方式更改代码,则可能有助于解决问题:
您需要稍微更改加载功能:
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)
希望这能使您找到想要的东西