def perform_over(**kwargs): o2pf_obj = kwargs['o2pf_obj'] X = kwargs['X'] y = kwargs['y'] X_valid = kwargs['X_valid'] y_valid = kwargs['y_valid'] X_test = kwargs['X_test'] y_test = kwargs['y_test'] ds = kwargs['ds'] f = kwargs['f'] k_max = kwargs['k_max'] common = COMMON() approach = o2pf_obj.__class__.__name__ best_k = common.optimization(X, y, X_valid, y_valid, o2pf_obj, k_max, ds, f, approach, 'Results') start_time = time() o2pf_obj.k_max = best_k all_x, all_y = o2pf_obj.fit_resample(X, y) end_time = time() - start_time common.saveDataset(all_x, all_y, pathDataset, approach) common.saveResults(all_x, all_y, X_test, y_test, ds, f, approach, o2pf_obj.min_class_label, end_time, 'Results', best_k)
def fit_resample(self, X, y, valid=None): us_object = self.variant() o2pf_ = O2PF() X_res, y_res = us_object.fit_resample(X, y, valid) self.min_class_label = us_object.min_class_label if valid is not None: X_valid = valid[:, :-1] y_valid = valid[:, -1].astype(np.int) common = COMMON() best_k = common.optimization(X, y, X_valid, y_valid, o2pf_, self.k_max) else: best_k = self.k_max[0] o2pf_.k_max = best_k all_x, all_y = o2pf_.fit_resample(X_res, y_res) return all_x, all_y
def perform_under(**kwargs): # Apply the undersampling according to the opf-us variant represented by the opf_us_obj opf_us_obj = kwargs['us_obj'] X = kwargs['X'] y = kwargs['y'] X_test = kwargs['X_test'] y_test = kwargs['y_test'] f = kwargs['fold'] ds = kwargs['ds'] valid = kwargs['valid'] start_time = time() X_res, y_res = opf_us_obj.fit_resample(X, y, valid) end_time = time() - start_time approach = opf_us_obj.__class__.__name__ common = COMMON() common.saveTimeOnly(ds, f, approach, end_time, 'Results')
def perform_under(**kwargs): # Apply the hybrid approach according to the opf-us variant represented by the hybrid_obj hybrid_obj = kwargs['hybrid_obj'] X = kwargs['X'] y = kwargs['y'] X_test = kwargs['X_test'] y_test = kwargs['y_test'] f = kwargs['fold'] ds = kwargs['ds'] valid = kwargs['valid'] start_time = time() all_x, all_y = hybrid_obj.fit_resample(X, y) end_time = time() - start_time approach = hybrid_obj.__class__.__name__ common = COMMON() # Save the results of the oversampling common.saveTimeOnly(ds, f, approach, end_time, 'Results')
def perform_over(**kwargs): o2pf_obj = kwargs['o2pf_obj'] X = kwargs['X'] y = kwargs['y'] X_valid = kwargs['X_valid'] y_valid = kwargs['y_valid'] X_test = kwargs['X_test'] y_test = kwargs['y_test'] ds = kwargs['ds'] f = kwargs['f'] k_max = kwargs['k_max'] common = COMMON() approach = o2pf_obj.__class__.__name__ best_k = 5 start_time = time() o2pf_obj.k_max = best_k all_x, all_y = o2pf_obj.fit_resample(X, y) end_time = time() - start_time common.saveTimeOnly(ds, f, approach, end_time, 'Results')
import numpy as np from oversampling.o2pf import O2PF from common.common import COMMON import sys if len(sys.argv) <= 2: print('Usage: %s <train dataset> <k_max>' % sys.argv[0]) raise SystemExit train = np.loadtxt(sys.argv[1],delimiter=',', dtype=np.float32) X = train[:,:-1] y = train[:,-1].astype(int) o2pf = O2PF(k_max=int(sys.argv[2])) X_res, y_res = o2pf.fit_resample(X, y) path = 'data' common = COMMON() common.saveDataset(X_res, y_res, path, o2pf.__class__.__name__)
import numpy as np from hybrid.us1_o2pf import US1O2PF from common.common import COMMON import sys if len(sys.argv) <= 2: print('Usage: %s <train dataset> <k_max> <validation dataset (optional)>' % sys.argv[0]) raise SystemExit train = np.loadtxt(sys.argv[1], delimiter=',', dtype=np.float32) valid = None if len(sys.argv) >= 4: valid = np.loadtxt(sys.argv[3], delimiter=',', dtype=np.float32) concat = np.concatenate((train, valid)) X = concat[:, :-1] y = concat[:, -1].astype(np.int) else: X = train[:, :-1] y = train[:, -1].astype(int) hybrid_obj = US1O2PF(k_max=[int(sys.argv[2])]) X_res, y_res = hybrid_obj.fit_resample(X, y, valid) path = 'data' common = COMMON() common.saveDataset(X_res, y_res, path, hybrid_obj.__class__.__name__)