{ "info": { "author": "Dayvid Victor , Thyago Porpino ", "author_email": "brew-python-devs@googlegroups.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering" ], "description": "=============================\nbrew\n=============================\n\n.. image:: https://badge.fury.io/py/brew.png\n :target: http://badge.fury.io/py/brew\n\n.. image:: https://travis-ci.org/viisar/brew.png?branch=master\n :target: https://travis-ci.org/viisar/brew\n\n.. image:: https://landscape.io/github/viisar/brew/master/landscape.svg?style=flat\n :target: https://landscape.io/github/viisar/brew/master\n :alt: Code Health\n\n.. image:: https://coveralls.io/repos/github/viisar/brew/badge.svg?branch=master\n :target: https://coveralls.io/github/viisar/brew?branch=master\n\n.. image:: https://badges.gitter.im/Join%20Chat.svg\n :alt: Join the chat at https://gitter.im/viisar/brew\n :target: https://gitter.im/viisar/brew?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n\n\n**brew: A Multiple Classifier Systems API**\n\n| This project was started in 2014 by *Dayvid Victor* and *Thyago Porpino*\n| for the Multiple Classifier Systems class at Federal University of Pernambuco.\n\n\n| The aim of this project is to provide an easy API for Ensembling, Stacking, \n| Blending, Ensemble Generation, Ensemble Pruning, Dynamic Classifier Selection, \n| and Dynamic Ensemble Selection.\n\nFeatures\n===========\n* General: Ensembling, Stacking and Blending.\n* Ensemble Classifier Generators: Bagging, Random Subspace, SMOTE-Bagging, ICS-Bagging, SMOTE-ICS-Bagging.\n* Dynamic Selection: Overall Local Accuracy (OLA), Local Class Accuracy (LCA), Multiple Classifier Behavior (MCB), K-Nearest Oracles Eliminate (KNORA-E), K-Nearest Oracles Union (KNORA-U), A Priori Dynamic Selection, A Posteriori Dynamic Selection, Dynamic Selection KNN (DSKNN).\n* Ensemble Combination Rules: majority vote, min, max, mean and median.\n* Ensemble Diversity Metrics: Entropy Measure E, Kohavi Wolpert Variance, Q Statistics, Correlation Coefficient p, Disagreement Measure, Agreement Measure, Double Fault Measure.\n* Ensemble Pruning: Ensemble Pruning via Individual Contribution (EPIC).\n\nExample\n============\n\n.. code-block:: python\n\n import numpy as np\n import matplotlib.pyplot as plt\n import matplotlib.gridspec as gridspec\n import itertools\n\n import sklearn\n\n from sklearn.linear_model import LogisticRegression\n from sklearn.svm import SVC\n from sklearn.ensemble import RandomForestClassifier\n\n from brew.base import Ensemble, EnsembleClassifier\n from brew.stacking.stacker import EnsembleStack, EnsembleStackClassifier\n from brew.combination.combiner import Combiner\n\n from mlxtend.data import iris_data\n from mlxtend.evaluate import plot_decision_regions\n\n # Initializing Classifiers\n clf1 = LogisticRegression(random_state=0)\n clf2 = RandomForestClassifier(random_state=0)\n clf3 = SVC(random_state=0, probability=True)\n\n # Creating Ensemble\n ensemble = Ensemble([clf1, clf2, clf3])\n eclf = EnsembleClassifier(ensemble=ensemble, combiner=Combiner('mean'))\n\n # Creating Stacking\n layer_1 = Ensemble([clf1, clf2, clf3])\n layer_2 = Ensemble([sklearn.clone(clf1)])\n\n stack = EnsembleStack(cv=3)\n\n stack.add_layer(layer_1)\n stack.add_layer(layer_2)\n\n sclf = EnsembleStackClassifier(stack)\n\n clf_list = [clf1, clf2, clf3, eclf, sclf]\n lbl_list = ['Logistic Regression', 'Random Forest', 'RBF kernel SVM', 'Ensemble', 'Stacking']\n\n # Loading some example data\n X, y = iris_data()\n X = X[:,[0, 2]]\n\n # Plotting Decision Regions\n gs = gridspec.GridSpec(2, 3)\n fig = plt.figure(figsize=(10, 8))\n\n itt = itertools.product([0, 1, 2], repeat=2)\n\n for clf, lab, grd in zip(clf_list, lbl_list, itt):\n clf.fit(X, y)\n ax = plt.subplot(gs[grd[0], grd[1]])\n fig = plot_decision_regions(X=X, y=y, clf=clf, legend=2)\n plt.title(lab)\n plt.show()\n\n\n.. image:: https://raw.githubusercontent.com/viisar/brew/master/docs/sources/img/iris_decision_regions_2d.png\n :alt: decision regions plots\n :align: center\n\n\nDependencies\n============\n- Python 2.7+\n- scikit-learn >= 0.15.2\n- Numpy >= 1.6.1\n- SciPy >= 0.9\n- Matplotlib >= 0.99.1 (examples, only)\n- mlxtend (examples, only)\n\n\nInstalling\n==========\n\nYou can easily install brew using ``pip``::\n\n pip install brew\n\nor, if you prefer an up-to-date version, get it from here::\n\n pip install git+https://github.com/viisar/brew.git\n\n\nImportant References\n====================\n\n- Kuncheva, Ludmila I. Combining pattern classifiers: methods and algorithms. John Wiley & Sons, 2014.\n- Zhou, Zhi-Hua. Ensemble methods: foundations and algorithms. CRC Press, 2012.\n\n\n\n\nDocumentation\n-------------\n\nThe full documentation is at http://brew.rtfd.org.\n\n\n\nHistory\n-------\n\n0.1.0 (2014-11-12)\n++++++++++++++++++\n\n* First release on PyPI.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/viisar/brew", "keywords": "brew", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "brew", "package_url": "https://pypi.org/project/brew/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/brew/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/viisar/brew" }, "release_url": "https://pypi.org/project/brew/0.1.4/", "requires_dist": null, "requires_python": null, "summary": "BREW: Python Multiple Classifier System API", "version": "0.1.4" }, "last_serial": 2533277, "releases": { "0.1.0": [], "0.1.1": [ { "comment_text": "", "digests": { "md5": "a3aaec2c55d9ca1284a715bc5f5caeec", "sha256": "b579a1b8e679acdbdc960a0b2a2a99bf8f9a058da33586b65239ff750633bbc4" }, "downloads": -1, "filename": "brew-0.1.1.zip", "has_sig": false, "md5_digest": "a3aaec2c55d9ca1284a715bc5f5caeec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34054, "upload_time": "2015-03-24T01:19:27", "url": "https://files.pythonhosted.org/packages/b3/c6/ab3328b05bcf3bfb6e453ddb18ae356f9b167dcfec0ab1bf2289c48bade2/brew-0.1.1.zip" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "75fc2c9ea0eb7c97b7f26dc6454f27a6", "sha256": "44da282909c963c4c1506cbaab481f23720f50a0ca6da325fde8e2d2459a6e9f" }, "downloads": -1, "filename": "brew-0.1.2.zip", "has_sig": false, "md5_digest": "75fc2c9ea0eb7c97b7f26dc6454f27a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37862, "upload_time": "2015-06-22T19:25:44", "url": "https://files.pythonhosted.org/packages/cf/67/65d3ea968f55f9ac12e052476cbf7e950aa5d740ff24339f1feaf425934c/brew-0.1.2.zip" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "d504cc9c1d97782ccd1979ef493b56fb", "sha256": "44c2b3e3177d5a81d1f99230dcc0bdc880c03920dbbca6cf2f60bca6ea8ec136" }, "downloads": -1, "filename": "brew-0.1.3.zip", "has_sig": false, "md5_digest": "d504cc9c1d97782ccd1979ef493b56fb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42976, "upload_time": "2016-05-28T13:17:13", "url": "https://files.pythonhosted.org/packages/4d/d7/ea56c3726e7539d80c9a2d3c67ceaa1008cf5802e9bf552a2413b004f7b9/brew-0.1.3.zip" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "2f9561aea0c754570bc03f05e2dcbb8c", "sha256": "11f23fe972631685e2a146f91747f78bbcad9dd2e20e6ea84a3058459c605948" }, "downloads": -1, "filename": "brew-0.1.4.zip", "has_sig": false, "md5_digest": "2f9561aea0c754570bc03f05e2dcbb8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48846, "upload_time": "2016-10-11T22:53:08", "url": "https://files.pythonhosted.org/packages/71/19/75f6d42ca862c6b31e2da9864d94f59fe81978ac5d40c43937a1c17fd065/brew-0.1.4.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2f9561aea0c754570bc03f05e2dcbb8c", "sha256": "11f23fe972631685e2a146f91747f78bbcad9dd2e20e6ea84a3058459c605948" }, "downloads": -1, "filename": "brew-0.1.4.zip", "has_sig": false, "md5_digest": "2f9561aea0c754570bc03f05e2dcbb8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48846, "upload_time": "2016-10-11T22:53:08", "url": "https://files.pythonhosted.org/packages/71/19/75f6d42ca862c6b31e2da9864d94f59fe81978ac5d40c43937a1c17fd065/brew-0.1.4.zip" } ] }