def __init__(self, svm_c=0.1, fs=250, bands=None, riem_opt='Riemann', rho=0.1, filter_order=2, random_state=None, num_bits=8, bitshift_scale=True):
    ' Constructor\n\n        Parameters\n        ----------\n\n        svm_c: float\n               regularization parameter for the classifier\n\n        fs: int\n            sampling rate of the data\n\n        bands: list of int\n                bandwidths used in filterbanks (default: [2, 4, 8, 16, 32])\n\n        riem_opt: str {"riemann", "Riemann_Euclid", "Whitened_Euclid", "No_Adaptation"}\n                  type of riemannian used\n\n        rho: float\n             Normalization parameter for the covariance matrix of the riemannian\n\n        filter_order: int\n                      Order of the filter\n\n        random_state: int or None\n                      random seed used in the SVM\n\n        num_bits: int\n                  Number of bits used for quantization\n\n        bitshift_scale: bool\n                        if True, make sure that all scale factors between one part and the next is a bitshift\n        '
    self.num_bits = num_bits
    self.bitshift_scale = bitshift_scale
    self.classifier = LinearSVC(C=svm_c, loss='hinge', random_state=random_state, tol=1e-05)
    if (bands is None):
        bandwidths = np.array([2, 4, 8, 16, 32])
    else:
        bandwidths = np.array(bands)
    filter_bank = load_filterbank(bandwidths, fs, order=filter_order, max_freq=40, ftype='butter')
    time_windows = (np.array([[2.5, 6]]) * fs).astype(int)
    self.riemannian = QuantizedRiemannianMultiscale(filter_bank, time_windows, riem_opt=riem_opt, rho=rho, vectorized=True, num_bits=num_bits, bitshift_scale=bitshift_scale)
    self.scale_weight = 0
    self.scale_bias = 0
    self.no_bands = filter_bank.shape[0]
    self.no_time_windows = time_windows.shape[0]
    self.no_riem = None
    self.no_features = None
Constructor

Parameters
----------

svm_c: float
       regularization parameter for the classifier

fs: int
    sampling rate of the data

bands: list of int
        bandwidths used in filterbanks (default: [2, 4, 8, 16, 32])

riem_opt: str {"riemann", "Riemann_Euclid", "Whitened_Euclid", "No_Adaptation"}
          type of riemannian used

rho: float
     Normalization parameter for the covariance matrix of the riemannian

filter_order: int
              Order of the filter

random_state: int or None
              random seed used in the SVM

num_bits: int
          Number of bits used for quantization

bitshift_scale: bool
                if True, make sure that all scale factors between one part and the next is a bitshift
def __init__(self, svm_c=0.1, fs=250, bands=None, riem_opt='Riemann', rho=0.1, filter_order=2, random_state=None, num_bits=8, bitshift_scale=True):
    ' Constructor\n\n        Parameters\n        ----------\n\n        svm_c: float\n               regularization parameter for the classifier\n\n        fs: int\n            sampling rate of the data\n\n        bands: list of int\n                bandwidths used in filterbanks (default: [2, 4, 8, 16, 32])\n\n        riem_opt: str {"riemann", "Riemann_Euclid", "Whitened_Euclid", "No_Adaptation"}\n                  type of riemannian used\n\n        rho: float\n             Normalization parameter for the covariance matrix of the riemannian\n\n        filter_order: int\n                      Order of the filter\n\n        random_state: int or None\n                      random seed used in the SVM\n\n        num_bits: int\n                  Number of bits used for quantization\n\n        bitshift_scale: bool\n                        if True, make sure that all scale factors between one part and the next is a bitshift\n        '
    self.num_bits = num_bits
    self.bitshift_scale = bitshift_scale
    self.classifier = LinearSVC(C=svm_c, loss='hinge', random_state=random_state, tol=1e-05)
    if (bands is None):
        bandwidths = np.array([2, 4, 8, 16, 32])
    else:
        bandwidths = np.array(bands)
    filter_bank = load_filterbank(bandwidths, fs, order=filter_order, max_freq=40, ftype='butter')
    time_windows = (np.array([[2.5, 6]]) * fs).astype(int)
    self.riemannian = QuantizedRiemannianMultiscale(filter_bank, time_windows, riem_opt=riem_opt, rho=rho, vectorized=True, num_bits=num_bits, bitshift_scale=bitshift_scale)
    self.scale_weight = 0
    self.scale_bias = 0
    self.no_bands = filter_bank.shape[0]
    self.no_time_windows = time_windows.shape[0]
    self.no_riem = None
    self.no_features = None