https://github.com/hayesall/rfgb
🐍🚧 Experimental tool for SRL learning in Python. For something more stable, see: https://github.com/srlearn/srlearn
https://github.com/hayesall/rfgb
relational-learning statistical-relational-learning
Last synced: 8 months ago
JSON representation
🐍🚧 Experimental tool for SRL learning in Python. For something more stable, see: https://github.com/srlearn/srlearn
- Host: GitHub
- URL: https://github.com/hayesall/rfgb
- Owner: hayesall
- License: gpl-3.0
- Created: 2018-06-07T16:41:31.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2019-08-14T17:12:28.000Z (almost 7 years ago)
- Last Synced: 2025-09-29T11:22:19.195Z (9 months ago)
- Topics: relational-learning, statistical-relational-learning
- Language: Python
- Homepage: https://rfgb.readthedocs.io/en/latest/
- Size: 331 KB
- Stars: 3
- Watchers: 3
- Forks: 3
- Open Issues: 7
-
Metadata Files:
- Readme: README.rst
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
##############################################
Relational Functional Gradient Boosting (rfgb)
##############################################
|PyPi|_ |License|_ |Travis|_ |Codecov|_ |ReadTheDocs|_
.. |PyPi| image:: https://img.shields.io/pypi/v/rfgb.svg
:alt: Python Package Index (PyPi) latest version.
.. _PyPi: https://pypi.org/project/rfgb/
.. |License| image:: https://img.shields.io/github/license/hayesall/rfgb.svg
:alt: License.
.. _License: https://github.com/hayesall/rfgb/blob/master/LICENSE
.. |Travis| image:: https://travis-ci.org/hayesall/rfgb.svg?branch=master
:alt: Master branch build status.
.. _Travis: https://travis-ci.org/hayesall/rfgb
.. |Codecov| image:: https://codecov.io/gh/hayesall/rfgb/branch/master/graphs/badge.svg?branch=master
:alt: Master branch code coverage.
.. _Codecov: https://codecov.io/github/hayesall/rfgb?branch=master
.. |ReadTheDocs| image:: https://readthedocs.org/projects/rfgb/badge/?version=latest
:alt: Documentation build status and link to documentation.
.. _ReadTheDocs: http://rfgb.readthedocs.io/en/latest/
**rfgb**: Relational Functional Gradient Boosting (in Python).
- **Documentation**: https://rfgb.readthedocs.io/en/latest/
- **Questions?** Contact `Alexander L. Hayes (hayesall) `_
Installation
------------
Stable builds may be installed from PyPi
.. code-block:: bash
pip install rfgb
Or develop further by cloning the repository
.. code-block:: bash
git clone https://github.com/hayesall/rfgb.git
cd rfgb/
python setup.py develop
Quick-Start
-----------
Learning with a relational dependency network.
.. code-block:: bash
cd testDomains/Logistics/
rfgb init
rfgb learn rdn -target unload
Additional options for each subcommand may be viewed by passing ``-h`` as a parameter.
.. code-block:: bash
rfgb -h
rfgb learn rdn -h
Classification with Expert Advice (``-advice``)
--------------------------------------------------
Preferred and non-preferred labels may be provided as advice during classification via logical rules. This advice may be specified in a file named ``advice.txt`` in the train directory for a dataset.
Four datasets (BlocksWorld, HeartAttack, Logistics, and MoodDisorder) have an advice file included for demonstration
1. Logistics
.. code-block:: bash
cd testDomains/Logistics/
rfgb init
rfgb learn rdn -advice -target unload
2. HeartAttack
.. code-block:: bash
cd testDomains/HeartAttack/
rfgb init
rfgb learn rdn -advice -target ha
Targets
-------
"Targets" specify what is learned, examples of the target are provided in ``pos.txt``, ``neg.txt``, or ``examples.txt`` (for regression). These are specified here for convenience.
+---------------+------------------------+
| **Dataset** | **Target** |
+---------------+------------------------+
| BlocksWorld | ``putdown`` |
+---------------+------------------------+
| BostonHousing | ``medv`` |
+---------------+------------------------+
| HeartAttack | ``ha`` |
+---------------+------------------------+
| Insurance | ``value`` |
+---------------+------------------------+
| Logistics | ``unload`` |
+---------------+------------------------+
| MoodDisorder | ``bipolar`` |
+---------------+------------------------+
| TicTacToe | ``put`` or ``dontput`` |
+---------------+------------------------+
| ToyCancer | ``cancer`` |
+---------------+------------------------+
| XOR | ``xor`` |
+---------------+------------------------+
In Development
--------------
- Test cases (codecov >90%)
- General interaction improvements for commandline and library
- Learning Markov Logic Networks
License
-------
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
A full `copy of the license `_ is available in the base of this repository. For more information, see https://www.gnu.org/licenses/