Skip to main content

Relational Functional Gradient Boosting in Python.

Project description

Relational Functional Gradient Boosting in Python.

https://img.shields.io/github/license/starling-lab/rfgb.py.svg?style=flat-square https://img.shields.io/github/tag/starling-lab/rfgb.py.svg?style=flat-square https://img.shields.io/travis/starling-lab/rfgb.py.svg?style=flat-square https://img.shields.io/codecov/c/github/starling-lab/rfgb.py/master.svg?style=flat-square https://readthedocs.org/projects/rfgbpy/badge/?version=stable&style=flat-square

Kaushik Roy (@kkroy36) and Alexander L. Hayes (@batflyer)

Installation

Stable builds on PyPi

pip install rfgb

Development builds on GitHub

pip install git+git://github.com/starling-lab/rfgb.py.git

Quick-Start

  1. git clone https://github.com/starling-lab/rfgb.py.git

  2. cd rfgb.py

  3. Perform classification in a logistics domain:

    python -m rfgb -target unload -train testDomains/Logistics/train/ -test testDomains/Logistics/test/ -trees 10
    

Classification with Expert Advice (-expAdvice)

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

    python -m rfgb -expAdvice -target unload -train testDomains/Logistics/train/ -test testDomains/Logistics/test/ -trees 10
    
  2. HeartAttack

    python -m rfgb -expAdvice -target ha -train testDomains/HeartAttack/train/ -test testDomains/HeartAttack/test/ -trees 10
    

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%)
  • [ ] Learning Markov Logic Networks
  • [ ] Learning with Soft-Margin

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/

Acknowledgements

The authors would like to thank Professor Sriraam Natarajan, Professor Gautam Kunapuli, and fellow members of the StARLinG Lab at the University of Texas at Dallas.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
rfgb-0.2.2-py2.py3-none-any.whl (51.8 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Jun 14, 2018
rfgb-0.2.2.tar.gz (20.2 kB) Copy SHA256 hash SHA256 Source None Jun 14, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page