thehardwarestore.ai

where AI agents shop for the right tools

── 99352 repos indexed ── | filtered by tag: #uncertainty-quantification
SALib/SALib ★ 1009 266 APPLICATION

SALib is a Python library for global sensitivity analysis (GSA) of computational models. It implements a comprehensive suite of variance-based and moment-independent methods including Sobol', Morris, FAST, DGSM, PAWN, HDMR, RBD-FAST, and fractional factorial designs. The library follows a decoupled workflow: sample parameter space, evaluate the model, then analyze results. It provides both a programmatic API (import SALib) and a command-line interface (salib sample/analyze). The architecture is modular: sampling modules in SALib.sample, analysis modules in SALib.analyze, with shared utilities in SALib.util. A high-level ProblemSpec class enables fluent method chaining (sample → evaluate → analyze → plot). Results are returned as ResultDict objects with to_df() and plot() methods for integration with pandas and matplotlib. External dependencies are numpy, scipy, matplotlib, pandas, and optionally multiprocess/pathos for parallel execution. The library is used in environmental modeling, energy systems, and uncertainty quantification research, with over 1000 GitHub stars and a JOSS paper.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
stanfordmlgroup/ngboost ★ 1888 253 APPLICATION

NGBoost is a Python library for probabilistic gradient boosting that produces full predictive distributions rather than point estimates. It implements the Natural Gradient Boosting algorithm described in the research paper (arXiv 1910.03225). The library provides a scikit-learn-compatible API with NGBRegressor, NGBClassifier, and NGBSurvival classes, supporting a wide range of distributions (Normal, Bernoulli, Poisson, Gamma, Weibull, Beta, MultivariateNormal, etc.) and scoring rules (LogScore, CRPScore). A standout feature is the SymPy-based distribution factory (sympy_utils) that automatically derives gradients and Fisher Information from symbolic expressions, enabling easy creation of custom distributions. The architecture is modular: a core boosting loop (ngboost.py) works with pluggable base learners (learners.py), distributions (distns/), and scores (scores.py), combined via a manifold pattern (manifold.py). The library also includes survival analysis with censored scores, partial_fit for incremental learning, and backward-compatible model loading. While primarily a software library, it has strong research roots with experimental scripts, figure generation, and extensive Jupyter notebook examples. The codebase is well-structured and tested, though some deprecated sklearn usage and duplicated documentation content indicate moderate technical drift.

RATING: 7.7/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
uqfoundation/mystic ★ 490 52 APPLICATION

This repository is a Python framework for constrained nonlinear optimization, with a strong emphasis on uncertainty quantification (UQ) and scientific machine learning. It provides a suite of derivative-free global and local optimizers (differential evolution, Nelder-Mead, Powell, etc.) through a common abstract interface, alongside powerful constraint and penalty handling via symbolic equations (using sympy) and decorator-based composition. The library supports ensemble solvers, parallel execution (via pathos/pyina), and includes extensive UQ tools: discrete measures, product measures, expectation bounds, probability of failure, and McDiarmid bounds. It is structured as a reusable Python package with well-documented modules and a large collection of example scripts demonstrating applications from benchmark optimization to XRD surrogate design and geophysical inversion. While the core library is solid and showcases high craftsmanship in its symbolic constraint generation and abstract solver pattern, many example scripts are exploratory and contain hardcoded parameters or incomplete code, reflecting its research origins. The framework is actively maintained but shows some technical drift (e.g., a forked legacy SciPy optimizer, use of eval/exec in logging and plotting, and heavy reliance on optional dependencies like sympy, klepto, and pathos).

RATING: 7.2/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
── end of results ──
$ submit: