def fit(self, X, y): from mac import MAC mac_ = MAC(th=self.th) self.noise_est = mac_.fit_transform(X, y) return
###Paths for testing only #filename = r'G:\Shared drives\datasets\BCI\Competition IV\dataset 2a\Trials\NEW_22ch_A01.mat' #filename = r'G:\My Drive\Students\vigomez\Code_A1_Application\data_4C\BCI_s02train.mat' #filename = '..\data_4C\BCI_s01train.mat' data = sio.loadmat(filename) Xdata = data['X'] Xdata = np.transpose(Xdata, (2, 1, 0)) labels = data['labels'].reshape(-1, ) fs = 250 print('Loading', filename, 'with sampling frequency of', fs, 'Hz.') # 2. Artifacts removal stage - Noise Estimation from mac import MAC mac_ = MAC(th=args.th) noise_est = mac_.fit_transform(Xdata, labels) Noise_sum = np.array([np.sum(noise) for noise in noise_est]) noise_index = np.where(Noise_sum != 0.0)[0] Xdata = Xdata[noise_index] Noise = noise_est[noise_index] labels = labels[noise_index] #3. Parameter Grid for AMK AF param_dist = { 'embedding': randint(5, 10), 'eta': loguniform(1e-2, 0.5), 'epsilon': uniform(1e-1, 2), 'mu': uniform(1e-2, 1), "Ka": randint(5, 15)