%global commit ae8bcdd27cfa2e80513c9fb8be526860958e6cab %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global commitdate 20260429 Name: python-bayesml Version: 0.4.1^%{commitdate}git%{shortcommit} Release: %autorelease Summary: Your First Library for Bayesian Machine Learning License: BSD-3-Clause URL: https://bayesml.github.io/BayesML/ Source: https://github.com/bayesml/BayesML/archive/%{commit}/BayesML-%{shortcommit}.tar.gz BuildSystem: pyproject BuildOption(install): -l bayesml BuildArch: noarch BuildRequires: python3-devel # Tests BuildRequires: python3dist(pytest) # Docs BuildRequires: pandoc BuildRequires: python3dist(installer) BuildRequires: python3dist(myst-parser) BuildRequires: python3dist(nbsphinx) BuildRequires: python3dist(numpydoc) BuildRequires: python3dist(sphinx-book-theme) BuildRequires: graphviz BuildRequires: texinfo %global _description %{expand: BayesML contributes to wide society thourgh promoting education, research, and application of machine learning based on Bayesian statistics and Bayesian decision theory. Characteristics Easy-to-use: You can use pre-defined Bayesian statistical models by simply importing it. You don't need to define models yourself like PyMC or Stan. Bayesian Decision Theoretic API: BayesML's API corresponds to the structure of decision-making based on Bayesian decision theory. Bayesian decision theory is a unified framework for handling various decision-making processes, such as parameter estimation and prediction of new data. Therefore, BayesML enables intuitive operations for a wider range of decision-making compared to the fit-predict type API adopted in libraries like scikit-learn. Moreover, many of our models also implement fit-predict functions. Model Visualization Functions: All packages have methods to visualize the probabilistic data generative model, generated data from that model, and the posterior distribution learned from the data in 2~3 dimensional space. Thus, you can effectively understand the characteristics of probabilistic data generative models and algorithms through the generation of synthetic data and learning from them. Fast Algorithms Using Conjugate Prior Distributions: Many of our learning algorithms adopt exact calculation methods or variational Bayesian methods that effectively use the conjugacy between probabilistic data generative models and prior distributions. Therefore, they are much faster than general-purpose MCMC methods and are also suitable for online learning. Although some algorithms adopt MCMC methods, but they use MCMC methods specialized for each model, taking advantage of conjugacy.} %description %_description %package -n python3-bayesml Summary: %{summary} %description -n python3-bayesml %_description %build -a pushd doc %python3 -m installer --destdir=tempinstall %{_pyproject_wheeldir}/*.whl PYTHONPATH="tempinstall/usr/lib/python%{python3_version}/site-packages/:$PYTHONPATH" \ sphinx-build -b texinfo . texinfo pushd texinfo makeinfo --docbook bayesml.texi popd popd %install -a mkdir -p %{buildroot}%{_datadir}/help/en/python-bayesml install -m644 doc/texinfo/bayesml.xml %{buildroot}%{_datadir}/help/en/python-bayesml cp -p -r doc/texinfo/bayesml-figures %{buildroot}%{_datadir}/help/en/python-bayesml %check -a %pytest tests %files -n python3-bayesml -f %{pyproject_files} %doc README.md %dir %{_datadir}/help/en/ %doc %lang(en) %{_datadir}/help/en/python-bayesml/ %changelog %autochangelog