【发布时间】:2018-09-19 12:16:19
【问题描述】:
我正在尝试使用 LocallyConnected1D 层(而不是 Dense)构建一个自动编码器,但在理解这两种层类型的不同之处时遇到了很多麻烦——尤其是在输出维度方面。
model = Sequential()
model.add(Reshape(input_shape=(input_size,), target_shape=(input_size,1))
model.add(LocallyConnected1D(encoded_size, kernel_size)
model.add(LocallyConnected1D(input_size, kernal_size_2, name="decoded_layer"))
这个模型编译得很好,但是当我去训练它时......
model.fit(x_train, x_train,
epochs=epochs,
batch_size=batch_size,
shuffle=True,
validation_data=(x_test, x_test))
其中 x_train 和 x_test 分别是形状为 (60000, 784) 和 (10000, 784) 的 numpy 数组。我在这一行收到以下错误:
ValueError: Error when checking target: expected decoded_layer to have 3 dimensions, but got array with shape (60000, 784)
进入decoded_layer 的张量的形状不应该是 (60000, encoded_size, 1) 吗?
【问题讨论】:
标签: python keras autoencoder