【发布时间】:2017-12-23 11:37:52
【问题描述】:
我正在发现keras 库,但我不知道keras layers 中的维度是什么意思以及如何选择它们? (model.add(Convolution2D(...)) 或 model.add(Convolution1D(...)) )。
例如,我有一组 9000 个火车轨迹和 1000 个测试轨迹,每个轨迹有 1000 个样本,所以我创建了大小为 9000*1000 的数组 X_train,X_test 的大小为 1000*1000,Y_train 有大小为 9000,Y_test 的大小为 1000。
我的问题是如何选择第一层维度?
我尝试使用在 MNIST 中实现的相同示例:
model.add(Convolution2D(9000, (1, 1), activation='relu', input_shape(1,9000000,1),dim_ordering='th'))
但它不起作用,我什至不知道我应该在卷积函数的每个参数中放什么。
【问题讨论】:
-
它以什么方式“不起作用”?有什么错误吗?
-
执行model.add(Flatten())时出错,提示:Input 0 is incompatible with layer flatten_7: expected min_ndim=3, found ndim=2
-
@HajjiSofien 我会摆脱 Flatten() 层。这应该使您的模型保持在三个维度,因为 Flatten() 会将其展平为二维。 (它可能会在与您的输入/输出形状相关的错误之后产生不同的错误,但应该解决当前的错误。)
标签: python neural-network deep-learning keras