Module: ci_rvm.ci_rvm
Module: ci_rvm.ci_rvm#
Classes:
|
Counts how often a function has been called |
|
Class representing constained quadratic subproblems |
|
Flips an array in a specified component |
Functions:
|
Returns the profile likelihood confidence interval(s) for one or multiple parameters. |
|
Finds an end point of a profile likelihood confidence interval. |
|
Returns the profile likelihood confidence interval(s) for one or multiple parameters. |
|
Finds an end point of a profile likelihood confidence interval. |
|
Returns the profile likelihood confidence interval(s) for a function of parameters. |
|
Returns the profile likelihood confidence interval(s) for a function of parameters. |
|
Returns a boolean array arr with arr[i]==True if and only if the i-th row of M is linearly independent of all other rows j with arr[j]==True. |
|
Returns whether the given Matrix is negative definite. |
- class FlexibleSubproblem(x, fun, jac, hess, hessp=None, k_easy=0.1, k_hard=0.2)[source]#
Bases:
object
Class representing constained quadratic subproblems
Methods:
solve
(radius[, positiveDefinite, tol, jac0tol])
- class Flipper(index: index in which the result should be flipped)[source]#
Bases:
object
Flips an array in a specified component
- find_CI(x0, fun, jac=None, hess=None, indices=None, directions=None, alpha=0.95, parallel=False, return_full_results=False, return_success=False, **kwargs)[source]#
Returns the profile likelihood confidence interval(s) for one or multiple parameters.
- Parameters
x0 (float[]) – Maximum likelihood estimate (MLE) of the paramters.
fun (callable) – Log-likelihood function.
jac (callable) – Gradient of
fun
. If None, it will be computed based on finite differences using numdifftools.hess (callable) – Hessian of
fun
. If None, it will be computed based on finite differences using numdifftools.indices (int[]) – Indices of the parameters of interest. If not given, all paramters will be considered.
directions (float[][]) – Search directions. If not given, both end points of the confidence intervals will be determined. If given as a scalar, only lower end points will be returned if
directions<=0
and upper end points otherwise. If given as an array, the confidence interval end points specified in rowi
will be returned for parameteri
. Entries<=0
indicate that lower end points are desired, whereas positive entries will result in upper end points.alpha (float) – Desired confidence level. Must be in
(0,1)
parallel (bool) – If
True
, results will be computed in parallel usingmultiprocessing.Pool
. Note that this requires that all arguments are pickable.return_full_results (bool) – If
True
, anOptimizeResult
object will be returned for each confidence interval bound. Otherwise, only the confidence interval bounds for the parameters in question will be returned.return_success (bool) – If
True
, an array of the same shape as the result will be returned in addition, indicating for each confidence interval bound whether it was determined successfully.**kwargs (keyword arguments) – Other keyword arguments passed to
find_CI_bound()
. Look at the documentation there.
- find_CI_bound(x0, fun, index, direction, jac=None, hess=None, alpha=0.95, fun0=None, jac0=None, hess0=None, customTarget=None, nmax=200, nchecks=65, apprxtol=0.5, resulttol=0.001, singtol=0.0001, minstep=1e-05, radiusFactor=1.5, infstep=10000000000.0, maxRadius=10000.0, disp=False, track_x=False, track_f=False)[source]#
Finds an end point of a profile likelihood confidence interval.
- Parameters
x0 (float[]) – Maximum likelihood estimate (MLE) of the paramters.
fun (callable) – Log-likelihood function.
index (int) – Index of the parameter of interest.
direction (int or bool) – If
<=0
, the lower end point of the confidence interval is sought, else the upper end point is sought.jac (callable) – Gradient of
fun
. If None, it will be computed based on finite differences using numdifftools.hess (callable) – Hessian of
fun
. If None, it will be computed based on finite differences using numdifftools.alpha (float) – Desired confidence level. Must be in
(0,1)
fun0 (float) – log-likelihood at the MLE.
jac0 (float[]) – Gradient of the log-liekelihood at the MLE.
hess0 (float[][]) – Hessian of the log-likelihood at the MLE.
customTarget (float) – Custom target log-likelihood l*. If this is given,
alpha
will be ignored.nmax (int) – Maximal number of iterations.
nchecks (int) – Maximal number of trust-region changes per iteration.
apprxtol (float) – Relative tolerance between
fun
and its approximation.resulttol (float) – Tolerance of the result (
fun
andnorm(jac)
).singtol (float) – Tolerance for singularity checks.
minstep (int) – Controls the minimal radius of the trust region.
radiusFactor (float) – Controls how quickly the trust region decreases. Must be in
[1, 2]
.infstep (float) – Stepsize after which a parameter is deemed unestimbale.
maxRadius (float) – Rradius of the trust region in the last iteration.
disp (bool) – Whether to print a status message in each iteration.
track_x (bool) – Whether to return the parameter trace.
track_f (bool) – Whether to return the log-likelihood trace.
- find_ci(x0, fun, jac=None, hess=None, indices=None, directions=None, alpha=0.95, parallel=False, return_full_results=False, return_success=False, **kwargs)#
Returns the profile likelihood confidence interval(s) for one or multiple parameters.
- Parameters
x0 (float[]) – Maximum likelihood estimate (MLE) of the paramters.
fun (callable) – Log-likelihood function.
jac (callable) – Gradient of
fun
. If None, it will be computed based on finite differences using numdifftools.hess (callable) – Hessian of
fun
. If None, it will be computed based on finite differences using numdifftools.indices (int[]) – Indices of the parameters of interest. If not given, all paramters will be considered.
directions (float[][]) – Search directions. If not given, both end points of the confidence intervals will be determined. If given as a scalar, only lower end points will be returned if
directions<=0
and upper end points otherwise. If given as an array, the confidence interval end points specified in rowi
will be returned for parameteri
. Entries<=0
indicate that lower end points are desired, whereas positive entries will result in upper end points.alpha (float) – Desired confidence level. Must be in
(0,1)
parallel (bool) – If
True
, results will be computed in parallel usingmultiprocessing.Pool
. Note that this requires that all arguments are pickable.return_full_results (bool) – If
True
, anOptimizeResult
object will be returned for each confidence interval bound. Otherwise, only the confidence interval bounds for the parameters in question will be returned.return_success (bool) – If
True
, an array of the same shape as the result will be returned in addition, indicating for each confidence interval bound whether it was determined successfully.**kwargs (keyword arguments) – Other keyword arguments passed to
find_CI_bound()
. Look at the documentation there.
- find_ci_bound(x0, fun, index, direction, jac=None, hess=None, alpha=0.95, fun0=None, jac0=None, hess0=None, customTarget=None, nmax=200, nchecks=65, apprxtol=0.5, resulttol=0.001, singtol=0.0001, minstep=1e-05, radiusFactor=1.5, infstep=10000000000.0, maxRadius=10000.0, disp=False, track_x=False, track_f=False)#
Finds an end point of a profile likelihood confidence interval.
- Parameters
x0 (float[]) – Maximum likelihood estimate (MLE) of the paramters.
fun (callable) – Log-likelihood function.
index (int) – Index of the parameter of interest.
direction (int or bool) – If
<=0
, the lower end point of the confidence interval is sought, else the upper end point is sought.jac (callable) – Gradient of
fun
. If None, it will be computed based on finite differences using numdifftools.hess (callable) – Hessian of
fun
. If None, it will be computed based on finite differences using numdifftools.alpha (float) – Desired confidence level. Must be in
(0,1)
fun0 (float) – log-likelihood at the MLE.
jac0 (float[]) – Gradient of the log-liekelihood at the MLE.
hess0 (float[][]) – Hessian of the log-likelihood at the MLE.
customTarget (float) – Custom target log-likelihood l*. If this is given,
alpha
will be ignored.nmax (int) – Maximal number of iterations.
nchecks (int) – Maximal number of trust-region changes per iteration.
apprxtol (float) – Relative tolerance between
fun
and its approximation.resulttol (float) – Tolerance of the result (
fun
andnorm(jac)
).singtol (float) – Tolerance for singularity checks.
minstep (int) – Controls the minimal radius of the trust region.
radiusFactor (float) – Controls how quickly the trust region decreases. Must be in
[1, 2]
.infstep (float) – Stepsize after which a parameter is deemed unestimbale.
maxRadius (float) – Rradius of the trust region in the last iteration.
disp (bool) – Whether to print a status message in each iteration.
track_x (bool) – Whether to return the parameter trace.
track_f (bool) – Whether to return the log-likelihood trace.
- find_function_CI(x0, function, logL, functionJac=None, functionHess=None, logLJac=None, logLHess=None, relativeError=0.0001, **kwargs)[source]#
Returns the profile likelihood confidence interval(s) for a function of parameters.
- Parameters
x0 (float[]) – Maximum likelihood estimate (MLE) of the paramters.
function (callable) – Function of the parameters for which the confidence interval shall be computed
logL (callable) – Log-likelihood function.
functionJac (callable) – Gradient of
function
. If None, it will be computed based on finite differences using numdifftools.functionHess (callable) – Hessian of
function
. If None, it will be computed based on finite differences using numdifftools.logLJac (callable) – Gradient of
logL
. If None, it will be computed based on finite differences using numdifftools.logLHess (callable) – Hessian of
logL
. If None, it will be computed based on finite differences using numdifftools.relativeError (float) – Permitted relative error in the confidence interval bound.
**kwargs (keyword arguments) – Other keyword arguments passed to
find_CI()
andfind_CI_bound()
. Look at the documentation there.
- find_function_ci(x0, function, logL, functionJac=None, functionHess=None, logLJac=None, logLHess=None, relativeError=0.0001, **kwargs)#
Returns the profile likelihood confidence interval(s) for a function of parameters.
- Parameters
x0 (float[]) – Maximum likelihood estimate (MLE) of the paramters.
function (callable) – Function of the parameters for which the confidence interval shall be computed
logL (callable) – Log-likelihood function.
functionJac (callable) – Gradient of
function
. If None, it will be computed based on finite differences using numdifftools.functionHess (callable) – Hessian of
function
. If None, it will be computed based on finite differences using numdifftools.logLJac (callable) – Gradient of
logL
. If None, it will be computed based on finite differences using numdifftools.logLHess (callable) – Hessian of
logL
. If None, it will be computed based on finite differences using numdifftools.relativeError (float) – Permitted relative error in the confidence interval bound.
**kwargs (keyword arguments) – Other keyword arguments passed to
find_CI()
andfind_CI_bound()
. Look at the documentation there.
- get_independent_row_indices(M: considered matrix, jac: ordering vector = None, tol: numerical tolerance = None) boolean array of linearly independent rows [source]#
Returns a boolean array arr with arr[i]==True if and only if the i-th row of M is linearly independent of all other rows j with arr[j]==True. The vector jac provides an ordering of the returned indices. If M[i] and M[j] are linearly dependent, then arr[i] will be True if jac[i] >= jac[j]. Otherwise, arr[i] will be False and arr[j] will be True.