diff options
Diffstat (limited to 'python-veroku.spec')
-rw-r--r-- | python-veroku.spec | 348 |
1 files changed, 348 insertions, 0 deletions
diff --git a/python-veroku.spec b/python-veroku.spec new file mode 100644 index 0000000..ea42be9 --- /dev/null +++ b/python-veroku.spec @@ -0,0 +1,348 @@ +%global _empty_manifest_terminate_build 0 +Name: python-veroku +Version: 1.0.171 +Release: 1 +Summary: An open source library for building and performing inference with probabilistic graphical models. +License: BSD 3-Clause License +URL: https://github.com/ejlouw/veroku +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/82/55/ea160d2b13cc3179e6b3443d143b58bd4d815fc924229dfe7070c9849aea/veroku-1.0.171.tar.gz +BuildArch: noarch + +Requires: python3-numdifftools +Requires: python3-scipy +Requires: python3-matplotlib +Requires: python3-seaborn +Requires: python3-graphviz +Requires: python3-Pillow +Requires: python3-ipython +Requires: python3-pandas +Requires: python3-tqdm +Requires: python3-ipympl +Requires: python3-numpy +Requires: python3-networkx + +%description +<div align="center"> + <img src="logo.svg"> +</div> + +[comment]: # (doc-start) + + + +### Installation +For installing through pip: +```bash +pip install veroku +``` + +To clone this git repo: +``` +git clone https://github.com/ejlouw/veroku.git +cd veroku/ +pip install -r requirements.txt +``` +It is recommended to use a separate conda virtual environment when installing the dependencies, to avoid interfering +with existing packages. To get started with conda environments, see the +[installation guide](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html). +For more information on using conda environments see +[managing environments guide](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html) + +### Overview +<div style="text-align: justify"> +Veroku is an open source library for building and performing inference with probabilistic graphical models (PGMs) in +python. PGMs provide a framework for performing efficient probabilistic inference with very high dimensional +distributions. A typical example of a well-known type of PGM is the Kalman filter that can be used to obtain +probabilistic estimates of a hidden state of a process or system, given noisy measurements. PGMs can in principle be +used for any problem that involves uncertainty and is therefore applicable to many problems.</div> + +Veroku currently supports the following probability distributions: +* Categorical (sparse and dense implementations) +* Gaussian +* Gaussian mixture<sup>1</sup> +* Linear Gaussian<sup>2</sup> +* Non-linear Gaussian<sup>3</sup> + +<sup>1</sup> This class still has some experimental functionality (specifically the Gaussian mixture division methods) +and is, therefore, still in the factors.experimental sub-package. +<sup>2</sup> Using the Gaussian class - see the Kalman filter example notebook.<br/> +<sup>3</sup>This implementation is still experimental (see the factors.experimental sub-package). + + +<div style="text-align: justify"> +These distributions can be used as factors to represent a factorised distribution. These factors can be used, together +with the <code>cluster_graph</code> module to automatically create valid cluster graphs. Inference can be performed in these graphs +using message passing algorithms. Currently only the LBU (Loopy Belief Update) message-passing algorithm is supported. +</div> + +<br/> +Example notebooks: + +* [Toy example](https://github.com/ejlouw/veroku/blob/master/examples/slip_on_grass.ipynb) +* [Kalman filter](https://github.com/ejlouw/veroku/blob/master/examples/Kalman_filter.ipynb) +* [Sudoku](https://github.com/ejlouw/veroku/blob/master/examples/sudoku.ipynb) + + + +### On the Roadmap +The following distributions, models and features are on the roadmap to be added to veroku: +* Conditional Gaussian +* Dirichlet distribution +* Wishart distribution +* Normal-Wishart distribution +* Plate models +* Structure Learning +* Causal Inference + +### Dependencies +For the python dependencies see the [requirements](https://github.com/ejlouw/veroku/blob/master/requirements.txt) file. +The following additional dependencies are also required for some functionality (these are not installed automatically + with the `pip install`): + +##### Graphviz +See https://graphviz.org/download/ for installation instructions. + +### Contributing +If you would like to contribute to veroku, please see the [contributing guide](https://github.com/ejlouw/veroku/blob/master/contributing.md). + +### License +Veroku is released under a 3-Clause BSD license. You can view the license +[here](https://github.com/ejlouw/veroku/blob/master/LICENSE). + + + + +%package -n python3-veroku +Summary: An open source library for building and performing inference with probabilistic graphical models. +Provides: python-veroku +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-veroku +<div align="center"> + <img src="logo.svg"> +</div> + +[comment]: # (doc-start) + + + +### Installation +For installing through pip: +```bash +pip install veroku +``` + +To clone this git repo: +``` +git clone https://github.com/ejlouw/veroku.git +cd veroku/ +pip install -r requirements.txt +``` +It is recommended to use a separate conda virtual environment when installing the dependencies, to avoid interfering +with existing packages. To get started with conda environments, see the +[installation guide](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html). +For more information on using conda environments see +[managing environments guide](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html) + +### Overview +<div style="text-align: justify"> +Veroku is an open source library for building and performing inference with probabilistic graphical models (PGMs) in +python. PGMs provide a framework for performing efficient probabilistic inference with very high dimensional +distributions. A typical example of a well-known type of PGM is the Kalman filter that can be used to obtain +probabilistic estimates of a hidden state of a process or system, given noisy measurements. PGMs can in principle be +used for any problem that involves uncertainty and is therefore applicable to many problems.</div> + +Veroku currently supports the following probability distributions: +* Categorical (sparse and dense implementations) +* Gaussian +* Gaussian mixture<sup>1</sup> +* Linear Gaussian<sup>2</sup> +* Non-linear Gaussian<sup>3</sup> + +<sup>1</sup> This class still has some experimental functionality (specifically the Gaussian mixture division methods) +and is, therefore, still in the factors.experimental sub-package. +<sup>2</sup> Using the Gaussian class - see the Kalman filter example notebook.<br/> +<sup>3</sup>This implementation is still experimental (see the factors.experimental sub-package). + + +<div style="text-align: justify"> +These distributions can be used as factors to represent a factorised distribution. These factors can be used, together +with the <code>cluster_graph</code> module to automatically create valid cluster graphs. Inference can be performed in these graphs +using message passing algorithms. Currently only the LBU (Loopy Belief Update) message-passing algorithm is supported. +</div> + +<br/> +Example notebooks: + +* [Toy example](https://github.com/ejlouw/veroku/blob/master/examples/slip_on_grass.ipynb) +* [Kalman filter](https://github.com/ejlouw/veroku/blob/master/examples/Kalman_filter.ipynb) +* [Sudoku](https://github.com/ejlouw/veroku/blob/master/examples/sudoku.ipynb) + + + +### On the Roadmap +The following distributions, models and features are on the roadmap to be added to veroku: +* Conditional Gaussian +* Dirichlet distribution +* Wishart distribution +* Normal-Wishart distribution +* Plate models +* Structure Learning +* Causal Inference + +### Dependencies +For the python dependencies see the [requirements](https://github.com/ejlouw/veroku/blob/master/requirements.txt) file. +The following additional dependencies are also required for some functionality (these are not installed automatically + with the `pip install`): + +##### Graphviz +See https://graphviz.org/download/ for installation instructions. + +### Contributing +If you would like to contribute to veroku, please see the [contributing guide](https://github.com/ejlouw/veroku/blob/master/contributing.md). + +### License +Veroku is released under a 3-Clause BSD license. You can view the license +[here](https://github.com/ejlouw/veroku/blob/master/LICENSE). + + + + +%package help +Summary: Development documents and examples for veroku +Provides: python3-veroku-doc +%description help +<div align="center"> + <img src="logo.svg"> +</div> + +[comment]: # (doc-start) + + + +### Installation +For installing through pip: +```bash +pip install veroku +``` + +To clone this git repo: +``` +git clone https://github.com/ejlouw/veroku.git +cd veroku/ +pip install -r requirements.txt +``` +It is recommended to use a separate conda virtual environment when installing the dependencies, to avoid interfering +with existing packages. To get started with conda environments, see the +[installation guide](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html). +For more information on using conda environments see +[managing environments guide](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html) + +### Overview +<div style="text-align: justify"> +Veroku is an open source library for building and performing inference with probabilistic graphical models (PGMs) in +python. PGMs provide a framework for performing efficient probabilistic inference with very high dimensional +distributions. A typical example of a well-known type of PGM is the Kalman filter that can be used to obtain +probabilistic estimates of a hidden state of a process or system, given noisy measurements. PGMs can in principle be +used for any problem that involves uncertainty and is therefore applicable to many problems.</div> + +Veroku currently supports the following probability distributions: +* Categorical (sparse and dense implementations) +* Gaussian +* Gaussian mixture<sup>1</sup> +* Linear Gaussian<sup>2</sup> +* Non-linear Gaussian<sup>3</sup> + +<sup>1</sup> This class still has some experimental functionality (specifically the Gaussian mixture division methods) +and is, therefore, still in the factors.experimental sub-package. +<sup>2</sup> Using the Gaussian class - see the Kalman filter example notebook.<br/> +<sup>3</sup>This implementation is still experimental (see the factors.experimental sub-package). + + +<div style="text-align: justify"> +These distributions can be used as factors to represent a factorised distribution. These factors can be used, together +with the <code>cluster_graph</code> module to automatically create valid cluster graphs. Inference can be performed in these graphs +using message passing algorithms. Currently only the LBU (Loopy Belief Update) message-passing algorithm is supported. +</div> + +<br/> +Example notebooks: + +* [Toy example](https://github.com/ejlouw/veroku/blob/master/examples/slip_on_grass.ipynb) +* [Kalman filter](https://github.com/ejlouw/veroku/blob/master/examples/Kalman_filter.ipynb) +* [Sudoku](https://github.com/ejlouw/veroku/blob/master/examples/sudoku.ipynb) + + + +### On the Roadmap +The following distributions, models and features are on the roadmap to be added to veroku: +* Conditional Gaussian +* Dirichlet distribution +* Wishart distribution +* Normal-Wishart distribution +* Plate models +* Structure Learning +* Causal Inference + +### Dependencies +For the python dependencies see the [requirements](https://github.com/ejlouw/veroku/blob/master/requirements.txt) file. +The following additional dependencies are also required for some functionality (these are not installed automatically + with the `pip install`): + +##### Graphviz +See https://graphviz.org/download/ for installation instructions. + +### Contributing +If you would like to contribute to veroku, please see the [contributing guide](https://github.com/ejlouw/veroku/blob/master/contributing.md). + +### License +Veroku is released under a 3-Clause BSD license. You can view the license +[here](https://github.com/ejlouw/veroku/blob/master/LICENSE). + + + + +%prep +%autosetup -n veroku-1.0.171 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-veroku -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu May 18 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.171-1 +- Package Spec generated |