Skip to content

API: Fix naming of statistical procedures #34

@Desiment

Description

@Desiment

During the previous work, we made some interim naming decisions, which are quite bad. It is time to fix them. Below list of those that are related to semiparametric estimation:

  • Rename folder algorithms to procedures or statistical_procedures
    Currently, we have the following logic: estimators are instated by passing the name of the statistical procedure (like estimation of density via generalized Post-Widder formula) and parameters of the procedure. Then, register initializes an instance of the class corresponding to the chosen procedure and finishes the creation of the estimator object. We decided to name those procedures as algorithms, which is a quite bad naming.
src/algorithms/
   - src/algorithms/support
   - src/algorithms/param_algorithms
   - src/algorithms/semiparam_algorithms

The suggested folder structure is as follows

src/procedures/
   - src/procedures/support
   - src/procedures/parametric
   - src/procedures/semiparametric
  • Add general interface StatisticalProcedure
    It is desirable to add a general interface to which all statistical procedures (algorithms) should follow. Note that due to work on API: add general interfaces for integration procedure #24 this should not touch RQMC.
  • Rename member functions algorithm of existing procedures.
    I suggested the name compute instead.
  • Fix naming of estimators (it's too long).
    Suggestion:
NMVSemiParametricEstimator -> NMVSemiparEstim
NMSemiParametricEstimator  -> NMSemiparEstim
NVSemiParametricEstimator  -> NVSemiparEstim
  • Update register names:
    Suggestion
"g_estimation_given_mu"             -> "density_estim_inv_mellin_quad_int"
"g_estimation_given_mu_rqmc_based"  -> "density_estim_inv_mellin_rqmc_int"
"g_estimation_convolution"          -> "density_estim_deconv"
"g_estimation_post_widder"          -> "density_estim_post_widder"
"sigma_estimation_eigenvalue_based" -> "sigma_estimation_eigenvalue"
"sigma_estimation_empirical"        -> "sigma_estimation_laplace"
  • Update procedures class names
    Suggestion to follow [MixtureType]Estimation[Target][MethodAbbr]
SemiParametricNVEstimation                       -> NVEstimationDensityInvMT
SemiParametricMuEstimation                       -> NMVEstimationMu
SemiParametricGEstimationGivenMu                 -> NMVEstimationDensityInvMTquad
SemiParametricGEstimationGivenMuRQMCBased        -> NMVEstimationDensityInvMTrqmc
NVSemiParametricGEstimationPostWidder            -> NMVEstimationDensityPW
NMSemiParametricGEstimation                      -> NMEstimationDensityInvMT
SemiParametricMeanSigmaEstimationEigenvalueBased -> NMEstimationSigmaEigenvals
SemiParametricMeanSigmaEstimationEmpirical       -> NMEstimationSigmaLaplace

Metadata

Metadata

Assignees

Labels

API DesignFor issues related to interfaces specifications or naming

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions