【发布时间】:2016-10-04 04:39:51
【问题描述】:
我是非常 Keras 新手,在我早期的实验中,我在创建卷积层时遇到了一个错误。当我运行这段代码时(找到here;“共享视觉模型”部分)
from keras.models import *
from keras.layers import *
from keras.layers.convolutional import *
from keras.layers.pooling import *
digit_input = Input(shape=(1, 27, 27))
x = Convolution2D(64, 3, 3)(digit_input)
x = MaxPooling2D((2, 2))(x)
mdl = Model(digit_input, x)
我收到以下错误(回溯指向 Convolution2D 线):
ValueError: Filter must not be larger than the input: Filter: (3, 3) Input: (1, 27)
我假设我滥用了界面——尤其是因为似乎没有其他人有这个特殊的问题——但我直接从 Keras 文档中提取了代码。当我使用 model.add() 语法时,问题仍然存在。有趣的是,当我将过滤器大小缩小到 1x1 或将输入通道数增加到 3 时,错误就消失了。我尝试为卷积手动设置dim_ordering='tf',我的 keras.json 文件显示:
{
"image_dim_ordering": "tf",
"epsilon": 1e-07,
"floatx": "float32",
"backend": "tensorflow"
}
Keras 看起来是一个很棒的工具,但到目前为止我完全无法使用它。
附:我正在使用 Keras 1.1.0 和 Tensorflow 0.10。
【问题讨论】:
标签: python neural-network tensorflow convolution keras