'Get parameters of this kernel.
Parameters
deep : boolean, optional
If True, will return the parameters for this estimator and
contained subobjects that are estimators.
Returns
params : mapping of string to any
Parameter names mapped to their values.'

def get_params(self, deep=True):

    params = dict()
    cls = self.__class__
    init = getattr(cls.__init__, 'deprecated_original', cls.__init__)
    init_sign = signature(init)
    (args, varargs) = ([], [])
    for parameter in init_sign.parameters.values():
        if ((parameter.kind != parameter.VAR_KEYWORD) and (parameter.name != 'self')):
            args.append(parameter.name)
        if (parameter.kind == parameter.VAR_POSITIONAL):
            varargs.append(parameter.name)
    if (len(varargs) != 0):
        raise RuntimeError(("scikit-learn    kernels    should    always    specify    their    parameters    in    the    signature    of    their    __init__    (no    varargs).    %s    doesn't    follow    this    convention." % (cls,)))
    for arg in args:
        params[arg] = getattr(self, arg, None)
    return params
