我正在探索 keras
库,但我不知道 keras 层
中的维度是什么意思以及如何选择它们? (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'))
但它没有用,我什至不知道我应该在卷积函数的每个参数中放入什么。
最佳答案
维度(一维、二维等)的选择取决于输入的维度。例如,由于您使用的是 MNIST 数据集,因此您将使用 2D 层,因为您的输入是具有高度和宽度(二维)的图像。或者,如果您使用的是文本数据,则可以使用一维图层,因为句子是单词的线性列表(一维)。
我建议查看 Francois Chollet 的 MNIST 卷积神经网络示例:https://github.com/fchollet/keras/blob/master/examples/mnist_cnn.py . (注意:Conv2D 与 Convolution2D 相同。)
关于python - keras层中的常规一维或二维有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45169542/