Defining a ProfileLikelihoodProblem
ProfileLikelihoodProblem
type is designed to contain the necessary information to define a profile likelihood problem. For a comprehensive overview of the profile likelihood approach, please consult Raue, A. et al.
LikelihoodProfiler.ProfileLikelihoodProblem
— TypeProfileLikelihoodProblem{T,probType,P,PF,PR}
Defines a profile likelihood problem.
Mathematical Specification of a Profile Likelihood Problem:
A profile likelihood problem is defined by
- an objective function (usually negative log-likelihood function) wrapped within an
optprob::OptimizationProblem
. Consult Optimization.jl docs for details. - a set of optimal values of the parameters
optpars
that minimize the objective function.
Constructors
ProfileLikelihoodProblem(optprob::OptimizationProblem, optpars::AbstractVector{<:Real},
profile_range::Union{AbstractVector, Tuple} = tuple.(optprob.lb, optprob.ub);
conf_level::Float64 = 0.95, df::Int = 1, threshold::Real = chi2_quantile(conf_level, df))
Arguments
optprob::OptimizationProblem
: TheOptimizationProblem
to be solved.optpars::AbstractVector{<:Real}
: Initial (optimal) values of the parameters.profile_range::Union{AbstractVector, Tuple}
: The range over which the profile likelihood is computed. A tuple(lower, upper)
specifying a common profiling interval for all parameters, or an array of such tuples (one per parameter). By default, it uses theOptimizationProblem
bounds for each parameter (i.e.,tuple.(optprob.lb, optprob.ub)
). (note!) If a parameter is not meant to be profiled, you may usenothing
or infinite bounds.
Keyword arguments
conf_level::Float64
: The confidence level for the profile likelihood. Defaults to0.95
.df::Int
: The degrees of freedom for the profile likelihood. Defaults to1
.threshold::Real
: The threshold for the profile likelihood. Can be set toInf
if confidence interval endpoint estimation is not required. Defaults tochi2_quantile(conf_level, df)
.