Skip to content

jwuerzinger/excursion

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status DOI Binder Documentation Status Code style: black License

excursion — Efficient Excursion Set Estimation

ReadTheDocs

This package implements a Bayesian Optimization procedure based on Gaussian Processes to efficiently determine excursion sets (or equivalently iso-surfaces) of one or many expensive black-box functions.

Installation and Example

Install via pip install excursion==0.0.1a0.

To estimate excursion sets for N_FUNCS=2 functions simultaneously run:

for index in range(N_UPDATES):
	# construct an estimate for each of the functions
	gps = [excursion.get_gp(X,y_list[i]) for i in range(N_FUNCS)]

    # determine new point(s) at which to evaluate
    newx, acqvals = excursion.optimize.gridsearch(gps, X, scandetails)

    # evaluate each black-box function
    newys_list = [expensive_functions[i](np.asarray([newx])) for i in range(N_FUNCS)]

    # update data
    for i,newys in enumerate(newys_list):
        y_list[i] = np.concatenate([y_list[i],newys])
    X = np.concatenate([X,np.array([newx])])

Ex: Finding two-dimensional Contours in High-Energy Physics

In this example, modeled after typical exclusion contours of high-energy physics searches, we are insterested in estimating two excursion sets

  1. the excluded set of points -- theories of physics incompatible with the data
  2. the non-excluded set of points -- theories that are still viable.

Typically two simultaneous labels can be assigned, the expected and observed status of a given theory. The label can be computed through computationally expensive Monte Carlo simulation. Points to be simulated are therefore picked to most efficiently estimate both the expected and observed excursion sets.

Point Seqeuence

Talks:

  • 4th Reinterpretation Workshop Slides

Authors

  • Lukas Heinrich, CERN
  • Gilles Louppe, U Liege
  • Kyle Cranmer, NYU

About

Excursion Set Estimation

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%