stanbkt.fits.FitFactory#
- class stanbkt.fits.FitFactory#
Bases:
objectFactory for creating fit classes and options based on fit method.
- FIT_METHOD_TO_OPTION_MAPPING: dict[FitMethod, type[MCMCFitOptions | VBFitOptions | MLEFitOptions | PFFitOptions]] = {FitMethod.MCMC: <class 'stanbkt.fits.fit_options.MCMCFitOptions'>, FitMethod.MLE: <class 'stanbkt.fits.fit_options.MLEFitOptions'>, FitMethod.PATHFINDER: <class 'stanbkt.fits.fit_options.PFFitOptions'>, FitMethod.VB: <class 'stanbkt.fits.fit_options.VBFitOptions'>}#
- static create_default_fit_options(fit_method)#
Get default fit options for a given fit method.
- Parameters:
fit_method (
FitMethod) – Fit method for which to get default options.- Returns:
Default fit options for the specified method.
- Return type:
Union[MCMCFitOptions,VBFitOptions,MLEFitOptions,PFFitOptions]- Raises:
ValueError – If fit method is unsupported.
- static create_fit_options_from_dict(fit_option_dict, fit_method)#
Create fit options from a dictionary for a given fit method.
- Parameters:
- Returns:
Fit options instance created from the dictionary.
- Return type:
Union[MCMCFitOptions,VBFitOptions,MLEFitOptions,PFFitOptions]- Raises:
ValueError – If fit method is unsupported.
- static get_fit_class_from_method(fit_method)#
Get the expected CmdStan fit class for this fit method.
- Returns:
Expected CmdStan fit class corresponding to this fit method.
- Return type:
- Raises:
ValueError – If fit method is unsupported.
- Parameters:
fit_method (FitMethod)
- static verify_fit_options_compatibility(fit_options, fit_method, cpp_compile_kwargs={})#
Verify that provided fit options are compatible with the specified fit method.
- Parameters:
fit_options (
Union[MCMCFitOptions,VBFitOptions,MLEFitOptions,PFFitOptions]) – Fit options to verify.fit_method (
FitMethod) – Fit method for which to verify compatibility.cpp_compile_kwargs (
dict) – C++ compile kwargs to check for compatibility with fit options (e.g. for MCMC multi-threading), by default {}
- Raises:
TypeError – If fit options are not compatible with the specified fit method.
ValueError – If fit method is unsupported.
- Return type: