Metadata-Version: 2.1
Name: pyrulelearn
Version: 1.0.8
Summary: This library can be used to generate interpretable classification rules expressed as CNF/DNF and relaxed-CNF
Home-page: https://github.com/meelgroup/MLIC
Author: Bishwamittra Ghosh
Author-email: bishwamittra.ghosh@gmail.com
License: MIT
Download-URL: https://github.com/meelgroup/MLIC/archive/v1.0.7.tar.gz
Description: [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/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](https://bishwamittra.github.io/publication/imli-ghosh.pdf), and [relaxed CNF](https://bishwamittra.github.io/publication/ecai_2020/paper.pdf).   
        
        This tool  is based on our [CP-2018](https://arxiv.org/abs/1812.01843), [AIES-2019](https://bishwamittra.github.io/publication/imli-ghosh.pdf), and  [ECAI-2020](https://bishwamittra.github.io/publication/ecai_2020/paper.pdf) 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](http://sat.inesc-id.pt/open-wbo/).
        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](https://www.ibm.com/support/pages/downloading-ibm-ilog-cplex-optimization-studio-v1290).  To setup the Python API of CPLEX, follow the instructions from [here](https://www.ibm.com/support/knowledgecenter/SSSA5P_12.7.0/ilog.odms.cplex.help/CPLEX/GettingStarted/topics/set_up/Python_setup.html).
        
        # Documentation
        
        See the documentation in the [notebook](documentation.ipynb).
        
        ## Issues, questions, bugs, etc.
        Please click on "issues" at the top and [create a new issue](https://github.com/meelgroup/MLIC/issues). All issues are responded to promptly.
        
        ## Contact
        [Bishwamittra Ghosh](https://bishwamittra.github.io/) (bghosh@u.nus.edu)
        
        ## Citations
        
        
        @inproceedings{GMM20,<br />
        author={Ghosh, Bishwamittra and Malioutov, Dmitry and  Meel, Kuldeep S.},<br />
        title={Classification Rules in Relaxed Logical Form},<br />
        booktitle={Proc. of ECAI},<br />
        year={2020},}
        
        @inproceedings{GM19,<br />
        author={Ghosh, Bishwamittra and  Meel, Kuldeep S.},<br />
        title={{IMLI}: An Incremental Framework for MaxSAT-Based Learning of Interpretable Classification Rules},<br />
        booktitle={Proc. of AIES},<br />
        year={2019},}
        
        @inproceedings{MM18,<br />
        author={Malioutov, Dmitry and  Meel, Kuldeep S.},<br />
        title={{MLIC}: A MaxSAT-Based framework for learning interpretable classification rules},<br />
        booktitle={Proceedings of International Conference on Constraint Programming (CP)},<br />
        month={08},<br />
        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. 
        
Keywords: Classification Rules,Interpretable Rules,CNF Classification Rules,DNF Classification Rules,MaxSAT-based Rule Learning
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Description-Content-Type: text/markdown
