bayesDiagnostics provides comprehensive tools for Bayesian model
diagnostics and comparison, addressing critical gaps in existing
Bayesian diagnostic tools.
- Prior Sensitivity Analysis: Assess posterior robustness to prior specification
- Automated Posterior Predictive Checks: Comprehensive diagnostic batteries
- Advanced Model Comparison: Beyond WAIC/LOO using stacking and cross-validation
- Specialized Convergence Diagnostics: For hierarchical and complex models
- Interactive Prior Elicitation: Tools for expert knowledge integration
Install from GitHub:
devtools::install_github("ikrakib/bayesDiagnostics")Once available on CRAN:
install.packages("bayesDiagnostics")library(bayesDiagnostics)
library(brms)
# Fit Bayesian model
fit <- brm(mpg ~ hp + wt, data = mtcars)
# Conduct prior sensitivity analysis
result <- prior_sensitivity(
model = fit,
parameters = c("b_hp", "b_wt"),
prior_grid = list(
weak = prior(normal(0, 10), class = b),
strong = prior(normal(0, 1), class = b)
)
)
print(result)
plot(result)prior_sensitivity()- Compare posteriors across priorsprior_predictive_check()- Validate prior specificationsprior_robustness()- Test prior hyperparameter sensitivityprior_elicitation_helper()- Match expert beliefs to distributions
automated_ppc()- Comprehensive PPC batteryppc_crossvalidation()- K-fold CV with PPCsgraphical_ppc()- Bayesplot-based visualizationsbayesian_p_values()- Test statistics for model checking
model_comparison_suite()- Multi-method comparisonbayes_factor_comparison()- Bridge sampling for Bayes factorspredictive_performance()- Out-of-sample assessment
hierarchical_convergence()- Hierarchical model diagnosticseffective_sample_size_diagnostics()- ESS assessment
expert_prior_elicitation()- Interactive prior elicitationprior_simulation()- Simulate from prior
For detailed documentation, see the package vignettes:
vignette("bayesDiagnostics")Contributions welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
citation("bayesDiagnostics")