コード例 #1
0
ファイル: oversampling.py プロジェクト: gassantos/OpfImb
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)
コード例 #2
0
ファイル: us_os.py プロジェクト: gassantos/OpfImb
    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
コード例 #3
0
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')
コード例 #4
0
ファイル: hybrid_time.py プロジェクト: gassantos/OpfImb
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')
コード例 #5
0
ファイル: oversampling_time.py プロジェクト: gassantos/OpfImb
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')
コード例 #6
0
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__)
コード例 #7
0
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__)