Skip to content

SC-SGS/adaptive_sampling_scr

Repository files navigation

Iterative and Adaptive Sampling Methods in Semiconductor Testing

In this repository we provide the code used to evaluate the experiments using the optimization benchmark functions.

Dependencies

  • pandas 1.4.3
  • scikit-learn 1.1.1
  • numpy 1.23.1
  • tensorflow 2.9.1
  • autotune (learner, benchmark-functions)

Installation

Install dependencies with pip install -r requirements.txt

Usage

Adjust settings in main.py before running tests:

  • choose sampler type, has to be in ['random', 'qbc_hetero', 'qbc_homo', 'cross_val', 'lola_voronoi', 'variance']
    sampler = 'random'
  • choose benchmark function: ackley, rosenbrock
    benchmark_fct = 'ackley'
  • choose dimension of benchmark function
    dim = 8
  • choose initial seed
    seed = 12345678
  • choose initial dataset size
    iniial_datasize = 50
  • choose poolsize of potential new datapoints per iteration
    poolsize = 500
  • choose how frequently stopping criteria will be evaluated
    eval_cycle = 1
  • choose target mse for stopping criterion
    target_mse = 0.1
  • choose tartet r2-score for stopping criterion
    target_r2 = 0.9
  • choose maximum datasize
    max_datasize = 150
  • choose heterogeneous committee members, have to be in ['knn_sk', 'decision_tree_sk', 'gaussian_process_sk', 'svm_sk', 'mlp_sk']
    committee_hetero = ['knn_sk', 'decision_tree_sk, 'svm_sk']
  • choose model type of homogeneous committee members, has to be in ['knn_sk', 'decision_tree_sk', 'gaussian_process_sk', 'svm_sk', 'mlp_sk']
    committee_homo = 'knn_sk'
  • choose size of homogeneous committee
    committee_homo_size = 3
  • choose error model used by cross-validation based sampler, has to be in ['knn_sk', 'decision_tree_sk', 'gaussian_process_sk', 'svm_sk', 'mlp_sk']
    cross_val_error_model = 'knn_sk'
  • choose distance constraints that will be used for qbc and cross-validation, has to be in ['None', 'avg_min_dist', 'max_min_dist']
distance_constraints = {
    'qbc_homo' : None,
    'qbc_hetero' : None,
    'cross_val' : None,
}

About

Repository for our work "Iterative and Adaptive Sampling Methods in Semiconductor Testing"

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages