예제 #1
0
estimate_list = [1] * n

# the range of penalization strength
lambda_range = [1e-8, 1e6]

# number of penalizations
n_lambda = 2

# initalize l1 regularization
# add shift parameter (=epsilon) which defines the offset of
# the logarithmic scale
initialize_regularization = regularization.l1_regularization(
    model=model,
    petab_problem=petab_problem,
    objective=obj,
    scale_list=scale_list_logicle,
    estimate_list=estimate_list,
    lambda_range=lambda_range,
    n_lambda=n_lambda,
    logicle_obj=logicle_obj)

# DO L1 REGULARIZATION _________________________________________________________________________________________________

# specify inputs
n_starts = 10

# optimization method and options
opt_method = 'L-BFGS-B'
opt_options = {'maxiter': 1e5, 'ftol': 1e-10, 'gtol': 1e-10, 'maxls': 80}
# opt.options = {'maxcor': 10, 'ftol': 1e-10, 'gtol': 1e-05, 'eps': 1e-08, 'maxfun': 1e5,
#                'maxiter': 1e5, 'maxls': 20}
estimate_list = [1, 1, 1, 0]

# the range of penalization strength
lambda_range = [1, 100]

# number of penalizations
n_lambda = 100

# initalize l1 regularization
# add shift parameter (=epsilon) which defines the offset of
# the logarithmic scale
initialize_regularization = regularization.l1_regularization(
    model=model,
    petab_problem=petab_problem,
    objective=obj,
    scale_list=scale_list_logE,
    estimate_list=estimate_list,
    lambda_range=lambda_range,
    n_lambda=n_lambda,
    shift_par=eps)

# DO L1 REGULARIZATION _________________________________________________________________________________________________

# specify inputs
n_starts = 1000

# optimization method and options
opt_method = 'L-BFGS-B'
opt_options = {'maxiter': 1e5, 'ftol': 1e-10, 'gtol': 1e-10}

# define startpoints as the best starts of the optimization