Code Duplication    Length = 13-14 lines in 2 locations

blocks/bricks/conv.py 2 locations

@@ 71-84 (lines=14) @@
68
    # for anything by this brick.
69
    get_output_shape = staticmethod(get_conv_output_shape)
70
71
    @lazy(allocation=['filter_size', 'num_filters', 'num_channels'])
72
    def __init__(self, filter_size, num_filters, num_channels, batch_size=None,
73
                 image_size=(None, None), step=(1, 1), border_mode='valid',
74
                 tied_biases=True, **kwargs):
75
        super(Convolutional, self).__init__(**kwargs)
76
77
        self.filter_size = filter_size
78
        self.num_filters = num_filters
79
        self.batch_size = batch_size
80
        self.num_channels = num_channels
81
        self.image_size = image_size
82
        self.step = step
83
        self.border_mode = border_mode
84
        self.tied_biases = tied_biases
85
86
    def _allocate(self):
87
        W = shared_floatx_nans((self.num_filters, self.num_channels) +
@@ 493-505 (lines=13) @@
490
    an explicitly specified border mode will be pushed down the hierarchy.
491
492
    """
493
    @lazy(allocation=['num_channels'])
494
    def __init__(self, layers, num_channels, batch_size=None,
495
                 image_size=(None, None), border_mode=None, tied_biases=None,
496
                 **kwargs):
497
        self.layers = [a if isinstance(a, Brick) else a.brick for a in layers]
498
        self.image_size = image_size
499
        self.num_channels = num_channels
500
        self.batch_size = batch_size
501
        self.border_mode = border_mode
502
        self.tied_biases = tied_biases
503
504
        super(ConvolutionalSequence, self).__init__(
505
            application_methods=layers, **kwargs)
506
507
    def get_dim(self, name):
508
        if name == 'input_':