【发布时间】:2021-09-06 13:23:47
【问题描述】:
我在尝试为一维化学反应数据数组训练一维 CNN 时遇到了麻烦。我的数据是 (21000, 1),其中每个样本都被标记为三个类别之一。我已按如下方式重塑了我的 X_train。
X_train = X_train.reshape(21000, 1, 1)
下面是我的第一个 CNN 层。
model.add(layers.Conv1D(filters=64, kernel_size=2, activation='relu',
input_shape=(21000, 1)))
model.add(layers.MaxPooling1D(pool_size=2))
模型似乎可以编译,但是当我尝试拟合它时,出现以下错误。
ValueError: Negative dimension size caused by subtracting 2 from 1 for '{{node sequential_16/conv1d_28/conv1d}} = Conv2D[T=DT_FLOAT, data_format="NHWC", dilations=[1, 1, 1, 1], explicit_paddings=[], padding="VALID", strides=[1, 1, 1, 1], use_cudnn_on_gpu=true](sequential_16/conv1d_28/conv1d/ExpandDims, sequential_16/conv1d_28/conv1d/ExpandDims_1)' with input shapes: [4,1,1,1], [1,2,1,64].
任何帮助将不胜感激。
【问题讨论】:
-
您不能使用长度为 1 的序列的内核大小为 2。
标签: python tensorflow keras conv-neural-network