distributed, likelihood-free inference — pyABC documentation (original) (raw)
Release:
0.12.15
Source code:
https://github.com/icb-dcm/pyabc
pyABC is a framework for distributed, likelihood-free inference. That means, if you have a model and some data and want to know the posterior distribution over the model parameters, i.e. you want to know with which probability which parameters explain the observed data, then pyABC might be for you.
All you need is some way to numerically draw samples from the model, given the model parameters. pyABC “inverts” the model for you and tells you which parameters were well matching and which ones not. You do not need to analytically calculate the likelihood function.
pyABC runs efficiently on multi-core machines and distributed cluster setups. It is easy to use and flexibly extensible.
User's guide
- What is pyABC about?
- Install
- Examples
- Getting started
* Parameter inference
* Model selection - Algorithms and features
* Early stopping of model simulations
* Resuming stored ABC runs
* Custom priors
* Adaptive distances
* Informative distances and summary statistics
* Aggregating and weighting diverse data
* Wasserstein distances
* Data plots
* Measurement noise and exact inference
* Optimal acceptance thresholds
* Discrete parameters
* Look-ahead sampling - External interfaces
* Using R via rpy2
* Using Julia via pyjulia
* Script based external simulators
* PEtab import and yaml2sbml
* Using COPASI via BasiCO - Application examples
* Ordinary differential equations: Conversion reaction
* Markov jump process: Reaction network
* Multi-scale model: Tumor spheroid growth
* Stochastic differential equation: Ion channel noise in Hodgkin-Huxley neurons
* PEtab application example
- Getting started
- Parallel sampling
- Strategies
* Single-core execution
* Multi-core only samplers
* Distributed samplers
* General extensible samplers - How to set up a Redis based distributed cluster
* Step 0: Prepare the redis server
* Step 1: Start a redis server
* Step 2 or 3: Start pyABC
* Step 2 or 3: Start the workers
* Optional: Monitoring
* Optional: Stopping workers
* Optional: Something with the workers went wrong in the middle of a run - High-performance infrastructure
* Long-running master process
* Job scheduling
* JupyterHub - Pickling
- SGE cluster scheduling
* Quick start
* Information about running jobs
* Usage notes
- Strategies
- Data store
- Visualization and analysis
- API reference
- pyabc.acceptor
* Acceptors
* Acceptor
* AcceptorResult
* FunctionAcceptor
* ScaledPDFNorm
* StochasticAcceptor
* UniformAcceptor
* pdf_norm_from_kernel()
* pdf_norm_max_found() - pyabc.copasi
* Copasi
* BasicoModel - pyabc.distance
* Distances
* AcceptAllDistance
* AdaptiveAggregatedDistance
* AdaptivePNormDistance
* AggregatedDistance
* BinomialKernel
* Distance
* DistanceWithMeasureList
* FunctionDistance
* FunctionKernel
* IndependentLaplaceKernel
* IndependentNormalKernel
* InfoWeightedPNormDistance
* MinMaxDistance
* NegativeBinomialKernel
* NoDistance
* NormalKernel
* PCADistance
* PNormDistance
* PercentileDistance
* PoissonKernel
* RangeEstimatorDistance
* SlicedWassersteinDistance
* StochasticKernel
* WassersteinDistance
* ZScoreDistance - pyabc.epsilon
* Epsilons
* AcceptanceRateScheme
* ConstantEpsilon
* DalyScheme
* Epsilon
* EssScheme
* ExpDecayFixedIterScheme
* ExpDecayFixedRatioScheme
* FrielPettittScheme
* ListEpsilon
* ListTemperature
* MedianEpsilon
* NoEpsilon
* PolynomialDecayFixedIterScheme
* QuantileEpsilon
* SilkOptimalEpsilon
* Temperature
* TemperatureBase
* TemperatureScheme - pyabc.external
* External simulators
* ExternalDistance
* ExternalHandler
* ExternalModel
* ExternalSumStat
* create_sum_stat() - pyabc.external.r
* R interface via rpy2
* R - pyabc.external.julia
* Julia interface via PyJulia
* Julia - pyabc.inference
* Inference
* ABCSMC - pyabc.inference_util
* Inference utilities
* AnalysisVars
* create_analysis_id()
* create_prior_pdf()
* create_simulate_from_prior_function()
* create_simulate_function()
* create_transition_pdf()
* create_weight_function()
* eps_from_hist()
* evaluate_preliminary_particle()
* evaluate_proposal()
* generate_valid_proposal()
* only_simulate_data_for_proposal()
* termination_criteria_fulfilled() - pyabc.model
* Models
* FunctionModel
* IntegratedModel
* Model
* ModelResult - pyabc.parameters
* Model parameters
* Parameter
* ParameterStructure - pyabc.population
* Particles and Populations
* Particle
* Population
* Sample
* SampleFactory - pyabc.populationstrategy
* Population strategies
* AdaptivePopulationSize
* ConstantPopulationSize
* ListPopulationSize
* PopulationStrategy - pyabc.predictor
* Predictor
* GPKernelHandle
* GPPredictor
* HiddenLayerHandle
* LassoPredictor
* LinearPredictor
* MLPPredictor
* ModelSelectionPredictor
* Predictor
* SimplePredictor
* root_mean_square_error()
* root_mean_square_relative_error() - pyabc.random_choice
* Random choice
* fast_random_choice() - pyabc.random_variables
* Random variables
* Distribution
* DistributionBase
* LowerBoundDecorator
* RV
* RVBase
* RVDecorator - pyabc.sampler
* Parallel sampling
* ConcurrentFutureSampler
* DaskDistributedSampler
* MappingSampler
* MulticoreEvalParallelSampler
* MulticoreParticleParallelSampler
* RedisEvalParallelSampler
* RedisEvalParallelSamplerServerStarter
* RedisStaticSampler
* RedisStaticSamplerServerStarter
* Sampler
* SingleCoreSampler
* nr_cores_available() - pyabc.settings
* Global settings
* set_figure_params() - pyabc.sge
* SGE
* DefaultContext
* NamedPrinter
* ProfilingContext
* SGE
* nr_cores_available()
* sge_available() - pyabc.storage
* Data store
* History
* create_sqlite_db_id()
* load_dict_from_json()
* save_dict_to_json() - pyabc.sumstat
* Summary statistics
* GMMSubsetter
* IdSubsetter
* IdentitySumstat
* PredictorSumstat
* Subsetter
* Sumstat - pyabc.transition
* Transitions kernels
* AggregatedTransition
* DiscreteJumpTransition
* DiscreteRandomWalkTransition
* DiscreteTransition
* GridSearchCV
* LocalTransition
* ModelPerturbationKernel
* MultivariateNormalTransition
* NotEnoughParticles
* PerturbationKernel
* Transition
* scott_rule_of_thumb()
* silverman_rule_of_thumb() - pyabc.util
* EventIxs
* ParTrafo
* ParTrafoBase
* bound_pop_size_from_env()
* dict2arr()
* dict2arrlabels()
* io_dict2arr()
* log_samples()
* read_sample() - pyabc.visserver
* Visualization server - pyabc.visualization
* Visualization
* plot_acceptance_rates_trajectory()
* plot_acceptance_rates_trajectory_plotly()
* plot_contour_2d()
* plot_contour_2d_lowlevel()
* plot_contour_matrix()
* plot_contour_matrix_lowlevel()
* plot_credible_intervals()
* plot_credible_intervals_for_time()
* plot_credible_intervals_plotly()
* plot_data_callback()
* plot_data_default()
* plot_distance_weights()
* plot_effective_sample_sizes()
* plot_effective_sample_sizes_plotly()
* plot_eps_walltime()
* plot_eps_walltime_lowlevel()
* plot_eps_walltime_lowlevel_plotly()
* plot_eps_walltime_plotly()
* plot_epsilons()
* plot_epsilons_plotly()
* plot_histogram_1d()
* plot_histogram_1d_lowlevel()
* plot_histogram_2d()
* plot_histogram_2d_lowlevel()
* plot_histogram_matrix()
* plot_histogram_matrix_lowlevel()
* plot_kde_1d()
* plot_kde_1d_highlevel()
* plot_kde_1d_plotly()
* plot_kde_2d()
* plot_kde_2d_highlevel()
* plot_kde_2d_highlevel_plotly()
* plot_kde_2d_plotly()
* plot_kde_matrix()
* plot_kde_matrix_highlevel()
* plot_kde_matrix_highlevel_plotly()
* plot_kde_matrix_plotly()
* plot_lookahead_acceptance_rates()
* plot_lookahead_evaluations()
* plot_lookahead_final_acceptance_fractions()
* plot_model_probabilities()
* plot_model_probabilities_plotly()
* plot_sample_numbers()
* plot_sample_numbers_plotly()
* plot_sample_numbers_trajectory()
* plot_sample_numbers_trajectory_plotly()
* plot_sensitivity_sankey()
* plot_total_sample_numbers()
* plot_total_sample_numbers_plotly()
* plot_total_walltime()
* plot_total_walltime_plotly()
* plot_walltime()
* plot_walltime_lowlevel()
* plot_walltime_lowlevel_plotly()
* plot_walltime_plotly() - pyabc.weighted_statistics
* Weighted statistics
* effective_sample_size()
* resample()
* resample_deterministic()
* weighted_mean()
* weighted_median()
* weighted_mse()
* weighted_quantile()
* weighted_rmse()
* weighted_std()
* weighted_var()
- pyabc.acceptor
Developer's guide
About
- Release Notes
- 0.12 Series
* 0.12.15 (2024-10-29)
* 0.12.14 (2023-11-10)
* 0.12.13 (2023-11-08)
* 0.12.12 (2023-08-18)
* 0.12.11 (2023-07-06)
* 0.12.10 (2023-05-09)
* 0.12.9 (2023-03-01)
* 0.12.8 (2022-11-16)
* 0.12.7 (2022-10-30)
* 0.12.6 (2022-08-30)
* 0.12.5 (2022-06-21)
* 0.12.4 (2022-05-05)
* 0.12.3 (2022-04-05)
* 0.12.2 (2022-03-25)
* 0.12.1 (2022-03-02)
* 0.12.0 (2022-02-23) - 0.11 series
* 0.11.12 (2022-02-19)
* 0.11.11 (2021-12-25)
* 0.11.10 (2021-12-24)
* 0.11.9 (2021-12-04)
* 0.11.8 (2021-12-03)
* 0.11.7 (2021-11-10)
* 0.11.6 (2021-11-05)
* 0.11.5 (2021-10-29)
* 0.11.4 (2021-10-27)
* 0.11.3 (2021-10-16)
* 0.11.2 (2021-10-07)
* 0.11.1 (2021-10-06)
* 0.11.0 (2021-07-31) - 0.10 series
* 0.10.16 (2021-05-11)
* 0.10.15 (2021-05-09)
* 0.10.14 (2021-02-21)
* 0.10.13 (2021-02-04)
* 0.10.12 (2021-01-20)
* 0.10.11 (2021-01-02)
* 0.10.10 (2021-01-01)
* 0.10.9 (2020-11-28)
* 0.10.8 (2020-11-27)
* 0.10.7 (2020-08-20)
* 0.10.6 (2020-08-04)
* 0.10.5 (2020-08-01)
* 0.10.4 (2020-06-15)
* 0.10.3 (2020-05-17)
* 0.10.2 (2020-05-09)
* 0.10.1 (2020-03-17)
* 0.10.0 (2020-02-20) - 0.9 series
* 0.9.26 (2020-01-24)
* 0.9.25 (2020-01-08)
* 0.9.24 (2019-11-19)
* 0.9.23 (2019-11-10)
* 0.9.22 (2019-11-05)
* 0.9.21 (2019-11-05)
* 0.9.20 (2019-10-30)
* 0.9.19 (2019-10-23)
* 0.9.18 (2019-10-20)
* 0.9.17 (2019-10-10)
* 0.9.16 (2019-10-08)
* 0.9.15 (2019-09-15)
* 0.9.14 (2019-08-08)
* 0.9.13 (2019-06-25)
* 0.9.12 (2019-05-02)
* 0.9.11 (2019-04-01)
* 0.9.10 (2019-03-27)
* 0.9.9 (2019-03-25)
* 0.9.8 (2019-02-21)
* 0.9.7 (2019-02-20)
* 0.9.6 (2019-02-01)
* 0.9.5 (2019-01-17)
* 0.9.4 (2018-12-18)
* 0.9.3 (2018-12-01)
* 0.9.2 (2018-09-10)
* 0.9.1 (2018-06-05)
* 0.9.0 - 0.8 series
* 0.8.21
* 0.8.20
* 0.8.19
* 0.8.18
* 0.8.17
* 0.8.16
* 0.8.15
* 0.8.14
* 0.8.13
* 0.8.12
* 0.8.11
* 0.8.10
* 0.8.9
* 0.8.8
* 0.8.7
* 0.8.6
* 0.8.5
* 0.8.5
* 0.8.4
* 0.8.3
* 0.8.2
* 0.8.1
* 0.8.0 - 0.7 series
* 0.7.2
* 0.7.1
* 0.7.0 - 0.6 series
* 0.6.4
* 0.6.3
* 0.6.2
* 0.6.1
* 0.6.0 - 0.5 series
* 0.5.2
* 0.5.1
* 0.5.0 - 0.4 series
* 0.4.4
* 0.4.3
* 0.4.2
* 0.4.1
* 0.4.0 - 0.3 series
* 0.3.3
* 0.3.2
* 0.3.1
* 0.3.0 - 0.2 series
* 0.2.0 - 0.1 series
* 0.1.3
- 0.12 Series
- About
- Cite