What's Changed
This release is based on Operon rev. 4a93f98
- minor bugfix related to lexicographical sorting in NSGA2
- best order sort (DOI) implementation, now Operon contains all well-known non-dominated sorting algorithms
- refactored dispatch table using generic backend interface (based on mdspan), support for other math backends (Blaze, Eve, etc.)
- improved likelihoods (Gaussian, Poisson) which can also be used as objective functions
- many other small improvements and fixes
- support for SGD and L-BFGS algorithms for parameter tuning
The scikit-learn
interface has been updated with some fixes and additional parameters:
local_iterations
parameter has been renamed tooptimizer_iterations
optimizer
parameter acceptslm
,sgd
orlbfgs
values to choose the optimization methodoptimizer_likelihood
parameter specifies the likelihood used by the optimizeroptimizer_batch_size
controls the batch size for gradient descentlocal_search_probability
controls the probability of applying local search to an individuallamarckian_probability
controls the probability of writing optimized coefficients back into the genotype- parameters
add_model_scale_term
andadd_model_intercept_term
control linear scaling of the final model uncertainty
parameter specifies the variance of the error (taken into account inside the likelihood)sgd_update_rule
,sgd_learning_rate
,sgd_beta
,sgd_beta2
,sgd_epsilon
can be used to configure the SGD algorithmmodel_selection_criterion
parameter can be used to specify which model from the final pareto front is returned (NSGA2)