将烤宽面条模型转换为 Keras
Convert Lasagne Model to Keras
我想将 Lasagne 模型规范转换为 Keras。 Keras 中与 Lasagne 中的等效层是什么:
nn = Conv3DDNNLayer(nn, 8, 3) # Lasagne layers
Keras 的 Convolution3D 层规范是:
keras.layers.convolutional.Convolution3D(nb_filter, kernel_dim1, kernel_dim2, kernel_dim3, init='glorot_uniform', activation=None, weights=None, border_mode='valid', subsample=(1, 1, 1), dim_ordering='default', W_regularizer=None, b_regularizer=None, activity_regularizer=None, W_constraint=None, b_constraint=None, bias=True)
...千层面:
class lasagne.layers.dnn.Conv3DDNNLayer(incoming, num_filters, filter_size, stride=(1, 1, 1), pad=0, untie_biases=False, W=lasagne.init.GlorotUniform(), b=lasagne.init.Constant(0.), nonlinearity=lasagne.nonlinearities.rectify, flip_filters=False, **kwargs)
因此,在上面的示例中,Lasagne 层有 'nn' 个传入、8 个过滤器和过滤器大小 3。
但是,Keras 要求每个 kernel_dim 都要指定。他们都只有 3 个吗?
谢谢。
如你所见here:
filter_size : int or iterable of int
An integer or a 3-element tuple specifying the size of the filters.
nn = Conv3DDNNLayer(nn, 8, 3)
相当于:
model.add(Convolution3D(8, 3, 3, 3, ...)
或
conv_3d_output = Convolution3D(8, 3, 3, 3, ...)(conv_3d_input)
取决于您使用的 Keras.API
。
我想将 Lasagne 模型规范转换为 Keras。 Keras 中与 Lasagne 中的等效层是什么:
nn = Conv3DDNNLayer(nn, 8, 3) # Lasagne layers
Keras 的 Convolution3D 层规范是:
keras.layers.convolutional.Convolution3D(nb_filter, kernel_dim1, kernel_dim2, kernel_dim3, init='glorot_uniform', activation=None, weights=None, border_mode='valid', subsample=(1, 1, 1), dim_ordering='default', W_regularizer=None, b_regularizer=None, activity_regularizer=None, W_constraint=None, b_constraint=None, bias=True)
...千层面:
class lasagne.layers.dnn.Conv3DDNNLayer(incoming, num_filters, filter_size, stride=(1, 1, 1), pad=0, untie_biases=False, W=lasagne.init.GlorotUniform(), b=lasagne.init.Constant(0.), nonlinearity=lasagne.nonlinearities.rectify, flip_filters=False, **kwargs)
因此,在上面的示例中,Lasagne 层有 'nn' 个传入、8 个过滤器和过滤器大小 3。
但是,Keras 要求每个 kernel_dim 都要指定。他们都只有 3 个吗?
谢谢。
如你所见here:
filter_size : int or iterable of int
An integer or a 3-element tuple specifying the size of the filters.
nn = Conv3DDNNLayer(nn, 8, 3)
相当于:
model.add(Convolution3D(8, 3, 3, 3, ...)
或
conv_3d_output = Convolution3D(8, 3, 3, 3, ...)(conv_3d_input)
取决于您使用的 Keras.API
。