Skip to main content

License: MIT

IMLI

IMLI is an interpretable classification rule learning framework based on incremental mini-batch learning. This tool can be used to learn classification rules expressible in propositional logic, in particular in CNF, DNF, and relaxed CNF.

This tool is based on our CP-2018, AIES-2019, and ECAI-2020 papers.

Install

  • Install the PIP library.
pip install pyrulelearn
  • Run pip install -r requirements.txt to install all necessary python packages available from pip.

This framework requires installing an off-the-shelf MaxSAT solver to learn CNF/DNF rules. Additionally, to learn relaxed-CNF rules, an LP (Linear Programming) solver is required.

Install MaxSAT solvers

To install Open-wbo, follow the instructions from here. After the installation is complete, add the path of the binary to the PATH variable.

export PATH=$PATH:'/path/to/open-wbo/'

Other off-the-shelf MaxSAT solvers can also be used for this framework.

Install CPLEX

To install the linear programming solver, i.e., CPLEX, download and install it from IBM. To setup the Python API of CPLEX, follow the instructions from here.

Documentation

See the documentation in the notebook.

Issues, questions, bugs, etc.

Please click on "issues" at the top and create a new issue. All issues are responded to promptly.

Contact

Bishwamittra Ghosh (bghosh@u.nus.edu)

Citations

@inproceedings{GMM20,
author={Ghosh, Bishwamittra and Malioutov, Dmitry and Meel, Kuldeep S.},
title={Classification Rules in Relaxed Logical Form},
booktitle={Proc. of ECAI},
year={2020},}

@inproceedings{GM19,
author={Ghosh, Bishwamittra and Meel, Kuldeep S.},
title={{IMLI}: An Incremental Framework for MaxSAT-Based Learning of Interpretable Classification Rules},
booktitle={Proc. of AIES},
year={2019},}

@inproceedings{MM18,
author={Malioutov, Dmitry and Meel, Kuldeep S.},
title={{MLIC}: A MaxSAT-Based framework for learning interpretable classification rules},
booktitle={Proceedings of International Conference on Constraint Programming (CP)},
month={08},
year={2018},}

Old Versions

The old version, MLIC (non-incremental framework) is available under the branch "MLIC". Please read the README of the old release to know how to compile the code.

Metadata

Release files for pyrulelearn 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyrulelearn 1.1.1
File Size Uploaded
pyrulelearn-1.1.1.tar.gz 21.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyrulelearn 1.1.1
File Interpreter ABI Platform
pyrulelearn-1.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 43.8 kB

Release files / pyrulelearn-1.1.1.tar.gz

Download URL pyrulelearn-1.1.1.tar.gz
Size 21.8 kB
Tags Source
SHA-256 checksum
How to use checksums
515974374f6a9fd82a3c5964a5f723b28fce074605d17983512bc89b0e4e1d6e
BLAKE2b-256 checksum
How to use checksums
2950667894d8c5626edf9bda10b546acf377b211007c1aa25fcc55f1b8a6e087
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.6

Release files / pyrulelearn-1.1.1-py3-none-any.whl

Download URL pyrulelearn-1.1.1-py3-none-any.whl
Size 22.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
94698d66bdd27f40043ef15fc28f33344bbee8c1ba4ff2e6f223a9cb10ae4486
BLAKE2b-256 checksum
How to use checksums
c41c27418aa356d3ac78ebb5f891bdcb36d61a7ab3d81c1076d3550ed40cfa4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.6

Release history Release notifications | RSS feed

This release

1.1.1 This release

2 release files

1.1.0

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page