def add_conv_weights(self, name, mean=<NUM_LIT:0>, std=None, sparsity=<NUM_LIT:0>):
nin = self.input_size<EOL>nout = self.output_size<EOL>mean = self.kwargs.get(<EOL>'<STR_LIT>'.format(name),<EOL>self.kwargs.get('<STR_LIT>', mean))<EOL>std = self.kwargs.get(<EOL>'<STR_LIT>'.format(name),<EOL>self.kwargs.get('<STR_LIT>', std or <NUM_LIT:1> / np.sqrt(nin + nout)))<EOL>sparsity = self.kwargs.get(<EOL>'<STR_LIT>'.format(name),<EOL>self.kwargs.get('<STR_LIT>', sparsity))<EOL>arr = np.zeros((nout, nin) + self.filter_size, util.FLOAT)<EOL>for r in range(self.filter_size[<NUM_LIT:0>]):<EOL><INDENT>for c in range(self.filter_size[<NUM_LIT:1>]):<EOL><INDENT>arr[:, :, r, c] = util.random_matrix(<EOL>nout, nin, mean, std, sparsity=sparsity, rng=self.rng)<EOL><DEDENT><DEDENT>self._params.append(theano.shared(arr, name=self._fmt(name)))<EOL>
Add a convolutional weight array to this layer's parameters.

        Parameters
        ----------
        name : str
            Name of the parameter to add.
        mean : float, optional
            Mean value for randomly-initialized weights. Defaults to 0.
        std : float, optional
            Standard deviation of initial matrix values. Defaults to
            :math:`1 / sqrt(n_i + n_o)`.
        sparsity : float, optional
            Fraction of weights to set to zero. Defaults to 0.