【问题标题】:Error when checking input: expected dense_1_input to have shape (70,) but got array with shape (1,)检查输入时出错:预期 dense_1_input 的形状为 (70,) 但得到的数组的形状为 (1,)
【发布时间】:2019-10-22 05:37:24
【问题描述】:

我尝试使用已经训练过的神经元网络,但总是偶然发现这个错误。我的输入层大小为 70 个数字元素,因此“last.cvs”中的输入数据 xData 具有相同的大小:

[0.36 0.44 0.7  0.82 0.72 0.06 0.08 0.32 0.84 0.62 0.08 0.42 0.12 0.08
 0.6  0.48 0.52 0.08 0.28 0.2  0.18 0.4  0.68 0.98 0.32 0.06 0.2  0.04
 0.76 0.62 0.48 0.8  0.38 0.2  0.14 0.5  0.06 0.64 0.2  0.86 0.06 0.02
 0.98 0.7  0.12 0.78 0.24 0.18 0.08 0.04 0.18 0.72 0.94 0.46 0.18 0.04
 0.48 0.7  0.56 0.96 0.5  0.16 0.08 0.12 0.9  0.94 0.76 0.58 0.04 0.06]

我的程序本身是这样的:

import keras
from keras.models import load_model
from numpy import loadtxt, savetxt, reshape
import datetime as dt
import numpy as np
import os

xData= loadtxt('../input/last.csv')
print(xData)

model = load_model("model.dat")
prediction=model.predict(np.array(xData))
print(prediction);

所以...知道为什么它认为输入大小是 1 而不是 70?

【问题讨论】:

    标签: python numpy keras deep-learning


    【解决方案1】:

    在 keras 中,输入模型的张量的第一个维度必须是批量大小:(batch_size, dim),因此您的模型在这里理解您正在输入 70 个大小为 1 的元素。

    尝试获取您的输入向量并扩展其暗淡,就像这样:

    xData = np.expand_dims(xData, 0)
    

    然后将其输入您的网络

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-11
      • 2020-11-22
      • 1970-01-01
      • 2018-10-24
      • 2018-09-30
      • 2020-05-30
      • 1970-01-01
      • 2019-11-21
      相关资源
      最近更新 更多