当前位置: 首页 > 知识库问答 >
问题:

检查时出现Keras错误:预期嵌入_1_输入具有形状(无,100),但获得具有形状(1,3)的数组

壤驷雅达
2023-03-14

我使用imdb示例创建了LSTM模型,并尝试用我自己的字符串预测情绪

max_features = 20000
# cut texts after this number of words
# (among top max_features most common words)
maxlen = 100
batch_size = 32


wordsA = "I like this review"

wordIndexes = imdb.get_word_index()

wordArray = wordsA.split()
intArray = []
for word in wordArray:
    if word in wordIndexes:
        intArray.append(wordIndexes[word])

testArray = np.array([intArray])

print('Shape: '+str(testArray.shape)) 

model = load_model('my_model2.h5')

print(str(testArray))

prediction = model.predict(testArray)
print(prediction)        

但是当我试图做预测时,我被跟踪跟踪弄错了

Traceback(最近的调用最后):

文件“”,第1行,在runfile中('C:/Users/Radosław/nauka/python/motionanalysis/motionconsole.py',wdir='C:/Users/Radosław/nauka/python/motionanalysis')

文件“C:\ProgramData\Anaconda3\lib\site packages\spyder\utils\site\sitecustomize.py”,第866行,在runfile execfile(文件名,命名空间)中

在执行文件exec(编译(f.read(),文件名,exec),命名空间)中的文件"C:\Program Data\Anaconda3\lib\site-包\spyder\utils\site\sitecustomize.py",第102行。

文件“C:/Users/Radosław/nauka/python/motionanalysis/motioniu console.py”,第47行,在prediction=model中。预测(测试阵列)

文件"C:\Program Data\Anaconda3\lib\site-包\keras\models.py",第899行,在预测返回self.model.predict(x,batch_size=batch_size,详细=详细)

文件“C:\ProgramData\Anaconda3\lib\site packages\keras\engine\training.py”,第1555行,预测检查\u批处理\u轴=False)

文件“C:\ProgramData\Anaconda3\lib\site packages\keras\engine\training.py”,第133行,在\u standarding\u input\u data str(array.shape)中

值错误:检查时的错误:预期embedding_1_input有形状(无,100),但得到了形状(1,3)的数组

有正确的方法来重塑我的输入数组吗?

共有1个答案

钱经赋
2023-03-14

你什么都做了,但忘记了序列填充。在调用predict之前添加此行。

testArray = sequence.pad_sequences(testArray, maxlen=maxlen)
 类似资料: