{
"info": {
"author": "Bishwamittra Ghosh",
"author_email": "bishwamittra.ghosh@gmail.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Topic :: Software Development :: Build Tools"
],
"description": "# IMLI\n\nIMLI is an incremental learning framework based on MaxSAT for generating interpretable classification rules via partition-based training methodology. This tool is based on our [paper](https://bishwamittra.github.io/publication/imli-ghosh.pdf) published in AAAI/ACM Conference on AI, Ethics, and Society(AIES), 2019. \n\n\n\n\n# Directory Description\n\nThe directory `benchmarks/` consists of all the benchmark files used for the experiment. \n\nThe directory `rulelearning` contains all the scripts that are employed in testing and required for reproducibility. \nIn the `rulelearning` directory, we have added `imli.py` which is the incremental learning framework for generating interpretable rules. To run `imli.py`, you will need an off the self MaxSAT solver (e.g., Open-Wbo) to be in the PATH variable.\n\n# PIP Install\nRun the following command to install this framework.\n\n```\npip install rulelearning\n```\n\n# Install MaxSAT solvers\n\nTo install Open-wbo, follow the instructions in the official [link](http://sat.inesc-id.pt/open-wbo/).\nAfter the installation is complete, add the path of the binary in the PATH variable. \n```\nexport PATH=$PATH:'/path/to/open-wbo/'\n```\nOther off the shelf MaxSAT solvers can also be used for this framework.\n# Usage\n\nImport rulelearning in Python.\n```\nimport rulelearning\n```\n\nCall an instance of `imli` object. Specify the parameters in `imli()` if needed. For example, in order to set `open-wbo` as the MaxSAT solver, pass the parameter `solver=\"open-wbo\"`.\n```\nmodel=rulelearning.imli()\n```\nDiscretize any dataset in csv format by calling the following function. `benchmarks/` contains a set of sample datasets.\n```\nX,y=model.discretize(\"benchmarks/iris_bintarget.csv\")\n```\n If the dataset contains categorical features, specify the index of such categorical features as a list in the parameter. Look for other parameter choices too. For example:\n```\nX,y=model.discretize(\"benchmarks/credit_card_clients.csv\",categoricalColumnIndex=[2,3,4])\n```\nTrain the model as follows. \n```\nmodel.fit(X,y)\n```\nTo retrive the learned rule, call the `getRule()` function.\n```\nmodel.getRule()\n```\nTo compute the predictions on a test set e.g., `{XTest,yTest}`, call `predict(Xtest,yTest)` function.\n```\nyhat=model.predict(XTest,yTest)\n```\nPlay with other getter functions to learn various attributes of the trained model.\n\n\nFor more details, refer to the source code.\n\n# Issues, questions, bugs, etc.\nPlease click on \"issues\" at the top and [create a new issue](https://github.com/meelgroup/MLIC/issues). All issues are responded to promptly.\n\n# Contact\n[Bishwamittra Ghosh](https://bishwamittra.github.io/) (bishwa@comp.nus.edu.sg)\n\n# How to cite\n@inproceedings{GM19,
\nauthor={Ghosh, Bishwamittra and Meel, Kuldeep S.},
\ntitle={IMLI: An Incremental Framework for MaxSAT-Based Learning of Interpretable Classification Rules},
\nbooktitle={Proceedings of AAAI/ACM Conference on AI, Ethics, and Society(AIES)},
\nmonth={1},
\nyear={2019},}\n\n# Old Versions\nThe 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. \n\n\n",
"description_content_type": "text/markdown",
"docs_url": null,
"download_url": "https://github.com/meelgroup/MLIC/archive/v1.05.tar.gz",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/meelgroup/MLIC",
"keywords": "Classification Rules,Interpretable Rules,CNF Classification Rules,DNF Classification Rules,MaxSAT-based Rule Learning",
"license": "MIT",
"maintainer": "",
"maintainer_email": "",
"name": "rulelearning",
"package_url": "https://pypi.org/project/rulelearning/",
"platform": "",
"project_url": "https://pypi.org/project/rulelearning/",
"project_urls": {
"Download": "https://github.com/meelgroup/MLIC/archive/v1.05.tar.gz",
"Homepage": "https://github.com/meelgroup/MLIC"
},
"release_url": "https://pypi.org/project/rulelearning/1.5/",
"requires_dist": [
"numpy",
"pandas",
"sklearn"
],
"requires_python": "",
"summary": "This library can be used to generate interpretable classification rules expressed as CNF/DNF",
"version": "1.5"
},
"last_serial": 5868315,
"releases": {
"1.1": [
{
"comment_text": "",
"digests": {
"md5": "163dc1a2385f76432e174f7731af1fb8",
"sha256": "67a89b90aac3ca1355958f2e5fb0cde9955df836ef5aa3cf2bb771845e31eb1f"
},
"downloads": -1,
"filename": "rulelearning-1.1.tar.gz",
"has_sig": false,
"md5_digest": "163dc1a2385f76432e174f7731af1fb8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8188,
"upload_time": "2019-03-05T13:35:12",
"url": "https://files.pythonhosted.org/packages/73/fd/b1a1a0fe3f6c968ab3efb7dd5804b3d97692ccb2aaaec5cfb5f95fc4a17d/rulelearning-1.1.tar.gz"
}
],
"1.2": [
{
"comment_text": "",
"digests": {
"md5": "cb79491db3ebf6f0af279908541d38bb",
"sha256": "730e18a46f906c3175fb7070a8b9d4a08d5674fecf1f39ec1ca06e306b33f71c"
},
"downloads": -1,
"filename": "rulelearning-1.2.tar.gz",
"has_sig": false,
"md5_digest": "cb79491db3ebf6f0af279908541d38bb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8293,
"upload_time": "2019-03-08T04:15:28",
"url": "https://files.pythonhosted.org/packages/92/59/5730ec3ccf7bd5baf3d051f2e0e3f33512804021c7f0128eb929393ff268/rulelearning-1.2.tar.gz"
}
],
"1.3": [
{
"comment_text": "",
"digests": {
"md5": "46a5fa4b2407999bff1377445120b569",
"sha256": "cd2f9347e68df110b438c065912d5af255227525a1dc0cc820b1c5ac984e531f"
},
"downloads": -1,
"filename": "rulelearning-1.3.tar.gz",
"has_sig": false,
"md5_digest": "46a5fa4b2407999bff1377445120b569",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8268,
"upload_time": "2019-03-19T11:08:50",
"url": "https://files.pythonhosted.org/packages/6d/00/e30cb2d337ddbb73e198ae6b6cb1b6f20058ec6e424f6a3eab8cca1f0a97/rulelearning-1.3.tar.gz"
}
],
"1.4": [
{
"comment_text": "",
"digests": {
"md5": "5f9561a734a8a13cc2e03cd56a13cb47",
"sha256": "1897abbd167e675fb8307a3fb86ece0194d9bfee2a53f674a272eabd4e40a079"
},
"downloads": -1,
"filename": "rulelearning-1.4.tar.gz",
"has_sig": false,
"md5_digest": "5f9561a734a8a13cc2e03cd56a13cb47",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8823,
"upload_time": "2019-08-12T09:32:43",
"url": "https://files.pythonhosted.org/packages/19/d4/3e36c0f16c0540b173e9c20530bfb0239d05820e36d88c7ee1009d4db694/rulelearning-1.4.tar.gz"
}
],
"1.5": [
{
"comment_text": "",
"digests": {
"md5": "3e53d76a0bf902f65e279bdff7f95cb6",
"sha256": "97130ab0710e66e8c358341d8410e3a6dd2b2ff06c36350ead9c64e60a94668b"
},
"downloads": -1,
"filename": "rulelearning-1.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3e53d76a0bf902f65e279bdff7f95cb6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 9178,
"upload_time": "2019-09-22T08:41:49",
"url": "https://files.pythonhosted.org/packages/a0/b1/5729ab952b1f2a576469f1d254b1a59609a987c3ee4c8d1525867b06858c/rulelearning-1.5-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "a4b7809fa2364c5b6afcd54adf11f36a",
"sha256": "d6800823ec9cf02ba67c7a7a2c0bdec8f6f836dc4ce29bbef1db1823812cf3b8"
},
"downloads": -1,
"filename": "rulelearning-1.5.tar.gz",
"has_sig": false,
"md5_digest": "a4b7809fa2364c5b6afcd54adf11f36a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8791,
"upload_time": "2019-09-22T08:41:51",
"url": "https://files.pythonhosted.org/packages/44/7c/cf80427a0705efc5620c9a4113e724a35c2006f967389196f85253a31357/rulelearning-1.5.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "3e53d76a0bf902f65e279bdff7f95cb6",
"sha256": "97130ab0710e66e8c358341d8410e3a6dd2b2ff06c36350ead9c64e60a94668b"
},
"downloads": -1,
"filename": "rulelearning-1.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3e53d76a0bf902f65e279bdff7f95cb6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 9178,
"upload_time": "2019-09-22T08:41:49",
"url": "https://files.pythonhosted.org/packages/a0/b1/5729ab952b1f2a576469f1d254b1a59609a987c3ee4c8d1525867b06858c/rulelearning-1.5-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "a4b7809fa2364c5b6afcd54adf11f36a",
"sha256": "d6800823ec9cf02ba67c7a7a2c0bdec8f6f836dc4ce29bbef1db1823812cf3b8"
},
"downloads": -1,
"filename": "rulelearning-1.5.tar.gz",
"has_sig": false,
"md5_digest": "a4b7809fa2364c5b6afcd54adf11f36a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8791,
"upload_time": "2019-09-22T08:41:51",
"url": "https://files.pythonhosted.org/packages/44/7c/cf80427a0705efc5620c9a4113e724a35c2006f967389196f85253a31357/rulelearning-1.5.tar.gz"
}
]
}