2017-03-07 50 views
1

我想將烤寬麪條模型規範轉換爲Keras。什麼是Keras相當於層按此在意大利千層麪:將烤寬麪條模型轉換爲Keras

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) 

所以,在上面的例子中,千層麪具有'nn'輸入,8個過濾器和3個過濾器。

Howev呃,Keras需要指定每個kernel_dim。他們都只是3?

謝謝。

回答

1

您可能讀here

filter_size:int或迭代的INT

一個整數或3-元件元組指定所述過濾器的尺寸。

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您使用。

+0

我錯過了,非常感謝。 :) –