autofit.Emcee#
- class autofit.Emcee(name: ~typing.Optional[str] = None, path_prefix: ~typing.Optional[str] = None, unique_tag: ~typing.Optional[str] = None, initializer: ~typing.Optional[~autofit.non_linear.initializer.Initializer] = None, auto_correlation_settings=<autofit.non_linear.search.mcmc.auto_correlations.AutoCorrelationsSettings object>, iterations_per_update: ~typing.Optional[int] = None, number_of_cores: ~typing.Optional[int] = None, session: ~typing.Optional[~sqlalchemy.orm.session.Session] = None, **kwargs)[source]#
Bases:
AbstractMCMCAn Emcee non-linear search.
For a full description of Emcee, checkout its Github and readthedocs webpages:
https://emcee.readthedocs.io/en/stable/
If you use Emcee as part of a published work, please cite the package following the instructions under the Attribution section of the GitHub page.
- Parameters:
name – The name of the search, controlling the last folder results are output.
path_prefix – The path of folders prefixing the name folder where results are output.
unique_tag – The name of a unique tag for this model-fit, which will be given a unique entry in the sqlite database and also acts as the folder after the path prefix and before the search name.
initializer – Generates the initialize samples of non-linear parameter space (see autofit.non_linear.initializer).
auto_correlation_settings – Customizes and performs auto correlation calculations performed during and after the search.
number_of_cores – The number of cores sampling is performed using a Python multiprocessing Pool instance.
session – An SQLalchemy session instance so the results of the model-fit are written to an SQLite database.
Methods
auto_correlations_fromcheck_modelconfig_dict_with_test_mode_settings_fromcopy_with_pathsexact_fitfitFit a model, M with some function f that takes instances of the class represented by model M and gives a score for their fitness.
fit_sequentialFit multiple analyses contained within the analysis sequentially.
make_poolMake the pool instance used to parallelize a NonLinearSearch alongside a set of unique ids for every process in the pool.
make_sneakier_poolmake_sneaky_poolCreate a pool for multiprocessing that uses slight-of-hand to avoid copying the fitness function between processes multiple times.
optimisePerform optimisation for expectation propagation.
perform_updatePerform an update of the non-linear search's model-fitting results.
perform_visualizationPerform visualization of the non-linear search's model-fitting results.
plot_resultspost_fit_outputCleans up the output folderds after a completed non-linear search.
pre_fit_outputOutputs attributes of fit before the non-linear search begins.
remove_state_filesresult_via_completed_fitReturns the result of the non-linear search of a completed model-fit.
samples_fromLoads the samples of a non-linear search from its output files.
samples_info_fromsamples_via_csv_fromReturns a Samples object from the samples.csv and samples_info.json files.
Returns a Samples object from the emcee internal results.
start_resume_fitStart a non-linear search from scratch, or resumes one which was previously terminated mid-way through.
Attributes
The Emcee hdf5 backend, which provides access to all samples, likelihoods, etc.
backend_filenameconfig_dict_runA property that is only computed once per instance and then replaces itself with an ordinary attribute.
config_dict_searchA property that is only computed once per instance and then replaces itself with an ordinary attribute.
config_dict_settingsconfig_typeloggerLog 'msg % args' with severity 'DEBUG'.
namepathssamples_clstimerReturns the timer of the search, which is used to output informaiton such as how long the search took and how much parallelization sped up the search time.
using_mpiWhether the search is being performing using MPI for parallelisation or not.
- samples_via_internal_from(model, search_internal=None)[source]#
Returns a Samples object from the emcee internal results.
The samples contain all information on the parameter space sampling (e.g. the parameters, log likelihoods, etc.).
The internal search results are converted from the native format used by the search to lists of values (e.g. parameter_lists, log_likelihood_list).
- Parameters:
model – Maps input vectors of unit parameter values to physical values and model instances via priors.
- property backend: HDFBackend#
The Emcee hdf5 backend, which provides access to all samples, likelihoods, etc. of the non-linear search.
The sampler is described in the “Results” section at https://dynesty.readthedocs.io/en/latest/quickstart.html