{ "info": { "author": "Darius Morawiec", "author_email": "nok@users.noreply.github.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# sklearn-porter\n\n[![GitHub license](https://img.shields.io/pypi/l/sklearn-porter.svg)](https://raw.githubusercontent.com/nok/sklearn-porter/master/license.txt)\n[![Stack Overflow](https://img.shields.io/badge/stack%20overflow-ask%20questions-blue.svg)](https://stackoverflow.com/questions/tagged/sklearn-porter)\n[![Join the chat at https://gitter.im/nok/sklearn-porter](https://badges.gitter.im/nok/sklearn-porter.svg)](https://gitter.im/nok/sklearn-porter?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)\n[![Twitter](https://img.shields.io/twitter/follow/darius_morawiec.svg?label=follow&style=popout)](https://twitter.com/darius_morawiec)\n\nTranspile trained [scikit-learn](https://github.com/scikit-learn/scikit-learn) estimators to C, Java, JavaScript and others.
It's recommended for limited embedded systems and critical applications where performance matters most.\n\n\n## Estimators\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EstimatorProgramming language
ClassifierJava *JSCGoPHPRuby
svm.SVC\u2713, \u2713 \u1d35\u2713\u2713\u2713\u2713
svm.NuSVC\u2713, \u2713 \u1d35\u2713\u2713\u2713\u2713
svm.LinearSVC\u2713, \u2713 \u1d35\u2713\u2713\u2713\u2713\u2713
tree.DecisionTreeClassifier\u2713, \u2713 \u1d31, \u2713 \u1d35\u2713, \u2713 \u1d31\u2713, \u2713 \u1d31\u2713, \u2713 \u1d31\u2713, \u2713 \u1d31\u2713, \u2713 \u1d31
ensemble.RandomForestClassifier\u2713 \u1d31, \u2713 \u1d35\u2713 \u1d31\u2713 \u1d31\u2713 \u1d31\u2713 \u1d31\u2713 \u1d31
ensemble.ExtraTreesClassifier\u2713 \u1d31, \u2713 \u1d35\u2713 \u1d31\u2713 \u1d31\u2713 \u1d31\u2713 \u1d31
ensemble.AdaBoostClassifier\u2713 \u1d31, \u2713 \u1d35\u2713 \u1d31, \u2713 \u1d35\u2713 \u1d31
neighbors.KNeighborsClassifier\u2713, \u2713 \u1d35\u2713, \u2713 \u1d35
naive_bayes.GaussianNB\u2713, \u2713 \u1d35\u2713
naive_bayes.BernoulliNB\u2713, \u2713 \u1d35\u2713
neural_network.MLPClassifier\u2713, \u2713 \u1d35\u2713, \u2713 \u1d35
RegressorJava *JSCGoPHPRuby
neural_network.MLPRegressor\u2713
\n\n\u2713 = is full-featured,\u3000\u1d31 = with embedded model data,\u3000\u1d35 = with imported model data,\u3000* = default language\n\n\n## Installation\n\n### Stable\n\n[![Build Status stable branch](https://img.shields.io/travis/nok/sklearn-porter/stable.svg)](https://travis-ci.org/nok/sklearn-porter)\n[![PyPI](https://img.shields.io/pypi/v/sklearn-porter.svg)](https://pypi.python.org/pypi/sklearn-porter)\n[![PyPI](https://img.shields.io/pypi/pyversions/sklearn-porter.svg)](https://pypi.python.org/pypi/sklearn-porter)\n\n```bash\n$ pip install sklearn-porter\n```\n\n### Development\n\n[![Build Status master branch](https://img.shields.io/travis/nok/sklearn-porter/master.svg)](https://travis-ci.org/nok/sklearn-porter)\n\nIf you want the [latest changes](https://github.com/nok/sklearn-porter/blob/master/changelog.md#unreleased), you can install this package from the [master](https://github.com/nok/sklearn-porter/tree/master) branch:\n\n```bash\n$ pip uninstall -y sklearn-porter\n$ pip install --no-cache-dir https://github.com/nok/sklearn-porter/zipball/master\n```\n\n\n## Usage\n\n\n### Export\n\nThe following example demonstrates how you can transpile a [decision tree estimator](http://scikit-learn.org/stable/modules/tree.html#classification) to Java:\n\n```python\nfrom sklearn.datasets import load_iris\nfrom sklearn.tree import tree\nfrom sklearn_porter import Porter\n\n# Load data and train the classifier:\nsamples = load_iris()\nX, y = samples.data, samples.target\nclf = tree.DecisionTreeClassifier()\nclf.fit(X, y)\n\n# Export:\nporter = Porter(clf, language='java')\noutput = porter.export(embed_data=True)\nprint(output)\n```\n\nThe exported [result](examples/estimator/classifier/DecisionTreeClassifier/java/basics_embedded.pct.py#L60-L110) matches the [official human-readable version](http://scikit-learn.org/stable/_images/iris.svg) of the decision tree.\n\n\n### Integrity\n\nYou should always check and compute the integrity between the original and the transpiled estimator:\n\n```python\n# ...\nporter = Porter(clf, language='java')\n\n# Compute integrity score:\nintegrity = porter.integrity_score(X)\nprint(integrity) # 1.0\n```\n\n\n### Prediction\n\nYou can compute the prediction(s) in the target programming language:\n\n```python\n# ...\nporter = Porter(clf, language='java')\n\n# Prediction(s):\nY_java = porter.predict(X)\ny_java = porter.predict(X[0])\ny_java = porter.predict([1., 2., 3., 4.])\n```\n\n\n## Notebooks\n\nYou can run and test all notebooks by starting a Jupyter notebook server locally:\n\n```bash\n$ make open.examples\n$ make stop.examples\n```\n\n\n## CLI\n\nIn general you can use the porter on the command line:\n\n```\n$ porter [--to ]\n [--class_name ] [--method_name ]\n [--export] [--checksum] [--data] [--pipe]\n [--c] [--java] [--js] [--go] [--php] [--ruby]\n [--version] [--help]\n```\n\nThe following example shows how you can save a trained estimator to the [pickle format](http://scikit-learn.org/stable/modules/model_persistence.html#persistence-example):\n\n```python\n# ...\n\n# Extract estimator:\njoblib.dump(clf, 'estimator.pkl', compress=0)\n```\n\nAfter that the estimator can be transpiled to JavaScript by using the following command:\n\n```bash\n$ porter estimator.pkl --js\n```\n\nThe target programming language is changeable on the fly:\n\n```bash\n$ porter estimator.pkl --c\n$ porter estimator.pkl --java\n$ porter estimator.pkl --php\n$ porter estimator.pkl --java\n$ porter estimator.pkl --ruby\n```\n\nFor further processing the argument `--pipe` can be used to pass the result:\n\n```bash\n$ porter estimator.pkl --js --pipe > estimator.js\n```\n\nFor instance the result can be minified by using [UglifyJS](https://github.com/mishoo/UglifyJS2):\n\n```bash\n$ porter estimator.pkl --js --pipe | uglifyjs --compress -o estimator.min.js\n```\n\n\n## Development\n\n\n### Environment\n\nYou have to install required modules for broader development:\n\n```bash\n$ make install.environment # conda environment (optional)\n$ make install.requirements.development # pip requirements\n```\n\nIndependently, the following compilers and intepreters are required to cover all tests:\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
NameVersionCommand
GCC>=4.2gcc --version
Java>=1.6java -version
PHP>=5.6php --version
Ruby>=2.4.1ruby --version
Go>=1.7.4go version
Node.js>=6node --version
\n\n\n### Testing\n\nThe tests cover module functions as well as matching predictions of transpiled estimators. Start all tests with:\n\n```bash\n$ make test\n```\n\nThe test files have a specific pattern: `'[Algorithm][Language]Test.py'`:\n\n```bash\n$ pytest tests -v -o python_files='RandomForest*Test.py'\n$ pytest tests -v -o python_files='*JavaTest.py'\n```\n\nWhile you are developing new features or fixes, you can reduce the test duration by changing the number of tests:\n\n```bash\n$ N_RANDOM_FEATURE_SETS=5 N_EXISTING_FEATURE_SETS=10 \\\n pytest tests -v -o python_files='*JavaTest.py'\n```\n\n\n### Quality\n\nIt's highly recommended to ensure the code quality. For that [Pylint](https://github.com/PyCQA/pylint/) is used. Start the linter with:\n\n```bash\n$ make lint\n```\n\n\n## Citation\n\nIf you use this implementation in you work, please add a reference/citation to the paper. You can use the following BibTeX entry:\n\n```\n@unpublished{skpodamo,\n author = {Darius Morawiec},\n title = {sklearn-porter},\n note = {Transpile trained scikit-learn estimators to C, Java, JavaScript and others},\n url = {https://github.com/nok/sklearn-porter}\n}\n```\n\n\n## License\n\nThe module is Open Source Software released under the [MIT](license.txt) license.\n\n\n## Questions?\n\nDon't be shy and feel free to contact me on [Twitter](https://twitter.com/darius_morawiec) or [Gitter](https://gitter.im/nok/sklearn-porter).\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/nok/sklearn-porter", "keywords": "sklearn,scikit-learn", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "sklearn-porter", "package_url": "https://pypi.org/project/sklearn-porter/", "platform": "", "project_url": "https://pypi.org/project/sklearn-porter/", "project_urls": { "Homepage": "https://github.com/nok/sklearn-porter" }, "release_url": "https://pypi.org/project/sklearn-porter/0.7.3/", "requires_dist": [ "six", "scikit-learn (>=0.14.1)" ], "requires_python": "", "summary": "Transpile trained scikit-learn models to C, Java, JavaScript and others.", "version": "0.7.3" }, "last_serial": 5146978, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "d7a6b382f057114ebaa18c1646a6d4b8", "sha256": "9186b4d9d31c2740fb0c966533206f225f1582ebccef0f7f4f5c25857a1d11e8" }, "downloads": -1, "filename": "sklearn_porter-0.1.0-py2.7.egg", "has_sig": false, "md5_digest": "d7a6b382f057114ebaa18c1646a6d4b8", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 59769, "upload_time": "2016-11-06T14:12:09", "url": "https://files.pythonhosted.org/packages/58/c0/82d31f97f6c7f469546df87e151c32128f276b14caad46cd0750bc60298e/sklearn_porter-0.1.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "17785ed72f1f29cfd0c56e4e238b8773", "sha256": "7e5efd50d7cb649ebe8e89ad3bbd9bbbc60952a03f36686dba57d97dd55a5543" }, "downloads": -1, "filename": "sklearn_porter-0.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "17785ed72f1f29cfd0c56e4e238b8773", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 62246, "upload_time": "2016-11-06T14:12:02", "url": "https://files.pythonhosted.org/packages/af/3c/b7c5d9b78446032973f3512f426255f9eb9c21f19357d2e42f64f7e54974/sklearn_porter-0.1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a6c3548d83ae0dd954e561896866e286", "sha256": "7ed1251c8a27bb52c2a9d6b084f1be11aeccbf07b22e7c6a40e5e44f330e3ae5" }, "downloads": -1, "filename": "sklearn-porter-0.1.0.tar.gz", "has_sig": false, "md5_digest": "a6c3548d83ae0dd954e561896866e286", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30594, "upload_time": "2016-11-06T14:12:06", "url": "https://files.pythonhosted.org/packages/4e/73/ab7f0d2ed3192faaee2f28256064bc6898cadc2e5334cbb66d2a1aaab861/sklearn-porter-0.1.0.tar.gz" } ], "0.2.0": [], "0.2.1": [ { "comment_text": "", "digests": { "md5": "398f27f46846bcbf5290a10a06498460", "sha256": "96f9654a6c4537d0ae3d5b08e91ef9b9af4d809181b334cafe313cd7739f53a1" }, "downloads": -1, "filename": "sklearn_porter-0.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "398f27f46846bcbf5290a10a06498460", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 56371, "upload_time": "2016-12-10T10:58:34", "url": "https://files.pythonhosted.org/packages/25/ca/8499426a0dba9378dca0f0d9fd42f433f74baa8ae811dbbd075bf0ae287e/sklearn_porter-0.2.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "960f1db10ee8f0d808ce91cef84e52ee", "sha256": "9e54f012153524161608c612c1333cc262c4ea805c3fc7014b8f74040df5d850" }, "downloads": -1, "filename": "sklearn-porter-0.2.1.tar.gz", "has_sig": false, "md5_digest": "960f1db10ee8f0d808ce91cef84e52ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18519, "upload_time": "2016-12-10T10:58:36", "url": "https://files.pythonhosted.org/packages/bc/93/60605d2d2ab8bfd44afbca878f99a0bdc48e63d7f48eb0b0726a2d59277d/sklearn-porter-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "ae80e404b1fe83e925e1cdbaea345508", "sha256": "b90caef17925ad95b5697fbcff2e455689309e13aedf883e4bbb5164d467b55d" }, "downloads": -1, "filename": "sklearn_porter-0.3.0-py2-none-any.whl", "has_sig": false, "md5_digest": "ae80e404b1fe83e925e1cdbaea345508", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 72891, "upload_time": "2017-01-08T22:37:03", "url": "https://files.pythonhosted.org/packages/73/39/8380b2e76df4b1d33a3d1f1a8442709c240fcf0058a2b232789634a65a94/sklearn_porter-0.3.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7ac9352ef845f4c63757be7d77c1accb", "sha256": "406cf4fd628ed954fe01561a11a0625a4c43bd5efa40c6f8b5a63b0744ff266d" }, "downloads": -1, "filename": "sklearn-porter-0.3.0.tar.gz", "has_sig": false, "md5_digest": "7ac9352ef845f4c63757be7d77c1accb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25047, "upload_time": "2017-01-08T22:37:06", "url": "https://files.pythonhosted.org/packages/dc/fd/972c19fdc47f197f1913d0dee89dccd2697069449b85d3ec482fc3404119/sklearn-porter-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "455665624fd917808ac6b1579efeb4fe", "sha256": "1c20b4058a255d34f06419f461228c4c5c9233e14a693b4b060f0307f634e3a8" }, "downloads": -1, "filename": "sklearn_porter-0.3.1-py2-none-any.whl", "has_sig": false, "md5_digest": "455665624fd917808ac6b1579efeb4fe", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 87672, "upload_time": "2017-01-28T16:39:45", "url": "https://files.pythonhosted.org/packages/e9/a2/b3e22ca0d3187e46ef42da389d816e4a3a56c4512984081852ce7f3def88/sklearn_porter-0.3.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "88f90ae8bfc70e0fe7fc42a334607cee", "sha256": "7a5afa2a54190384b53cc39f003c4b115f237bc431b548f08e5236f318c98c0a" }, "downloads": -1, "filename": "sklearn-porter-0.3.1.tar.gz", "has_sig": false, "md5_digest": "88f90ae8bfc70e0fe7fc42a334607cee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28482, "upload_time": "2017-01-28T16:39:47", "url": "https://files.pythonhosted.org/packages/e0/86/ac72007a362730d4fabedd998f6944b56a9a8b12d2d7fda4d79581106aeb/sklearn-porter-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "4006d686264cc7650cb7be9550a3b387", "sha256": "0358c05becaf4a1593115a85d7be5af06173f92468b26444ad1448b21b7257a3" }, "downloads": -1, "filename": "sklearn_porter-0.3.2-py2-none-any.whl", "has_sig": false, "md5_digest": "4006d686264cc7650cb7be9550a3b387", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 87953, "upload_time": "2017-01-29T22:15:36", "url": "https://files.pythonhosted.org/packages/52/69/de241f9d6548c6c1b8b130009f719990b9faf93b91487e2b1b6affdaa421/sklearn_porter-0.3.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e84d32da8029be9cf48b5710acab30a0", "sha256": "d0150225c8807e9d9d23cf793a80443d382140a3d1b013e54abc7b031f9db809" }, "downloads": -1, "filename": "sklearn-porter-0.3.2.tar.gz", "has_sig": false, "md5_digest": "e84d32da8029be9cf48b5710acab30a0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28774, "upload_time": "2017-01-29T22:15:39", "url": "https://files.pythonhosted.org/packages/73/ee/b867e7aff406266f6cf1efe0a288921d3a5f1357673646460c79e71b554f/sklearn-porter-0.3.2.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "237ded4ff77a846695c7e645ce75bfb8", "sha256": "301a7f575d76800e2307bd6d1a05177969560cb891acb52e2b4def776a175915" }, "downloads": -1, "filename": "sklearn_porter-0.4.0-py2-none-any.whl", "has_sig": false, "md5_digest": "237ded4ff77a846695c7e645ce75bfb8", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 92325, "upload_time": "2017-03-23T23:57:35", "url": "https://files.pythonhosted.org/packages/a3/78/a00a01297d59ebeb9f25fab2d01192c192c29bf54ff7d8cc4b9cfaaa7380/sklearn_porter-0.4.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "87b654764302a5e3ec98d6ccf8ae5cfd", "sha256": "fc6c44904b559dcd146c54c8aec1965ae34132cee612875a03031b22a8d14675" }, "downloads": -1, "filename": "sklearn-porter-0.4.0.tar.gz", "has_sig": false, "md5_digest": "87b654764302a5e3ec98d6ccf8ae5cfd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30671, "upload_time": "2017-03-23T23:57:37", "url": "https://files.pythonhosted.org/packages/63/4b/abccc749a8307c01484b9d10583e2d1acabf05357979304f12e80388aae4/sklearn-porter-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "a13b8a68b1c6a1484f3fd8cfe7c25c17", "sha256": "718e5ff670a3e41ef5d849818b09124f2f07399fa10a3df2af3fe4905114b679" }, "downloads": -1, "filename": "sklearn_porter-0.4.1-py2-none-any.whl", "has_sig": false, "md5_digest": "a13b8a68b1c6a1484f3fd8cfe7c25c17", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 93319, "upload_time": "2017-04-16T20:58:30", "url": "https://files.pythonhosted.org/packages/d1/bf/6c37f409f3b06409d4513d43eccae9010ec0dac261ab5efa4f17bf5e66e9/sklearn_porter-0.4.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a16d12cea3fb091c48c0383c1d3f2422", "sha256": "0a6b1b0cbea67768cef783f3a7d8884fbfbb0a973406e42f562c116abfb63c28" }, "downloads": -1, "filename": "sklearn-porter-0.4.1.tar.gz", "has_sig": false, "md5_digest": "a16d12cea3fb091c48c0383c1d3f2422", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31720, "upload_time": "2017-04-16T20:58:32", "url": "https://files.pythonhosted.org/packages/ac/fb/41598a03607dbca075e3354207a0d8bd090af440f644ff8b60e3736dfb8e/sklearn-porter-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "8f8b67eb90459747f12328bdfad60be1", "sha256": "66dbe07e7fb65f3a88d2dd7547bedcd2511415a2fbb9bd8f68b8387155474ce5" }, "downloads": -1, "filename": "sklearn_porter-0.5.0-py2-none-any.whl", "has_sig": false, "md5_digest": "8f8b67eb90459747f12328bdfad60be1", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 122227, "upload_time": "2017-05-26T21:33:39", "url": "https://files.pythonhosted.org/packages/06/72/7e8aa42dac2106904465ce9113563deae16af4eed0f82f86d51da1b0eff1/sklearn_porter-0.5.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "76e01de5be31c241a26bbf9b7c89d66a", "sha256": "f28f39948e07483c2b8c70ced9eab955bfa8d169693f63444dacc96cc9dffeec" }, "downloads": -1, "filename": "sklearn-porter-0.5.0.tar.gz", "has_sig": false, "md5_digest": "76e01de5be31c241a26bbf9b7c89d66a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38039, "upload_time": "2017-05-26T21:33:41", "url": "https://files.pythonhosted.org/packages/1c/2e/c3725984d30164ad31a70879a0762772b0eb6ef325a784721202592c00e6/sklearn-porter-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "f3bd91f430a1bb95c6aa9741ee8816f6", "sha256": "5059c7eecf68296244ca60ad5388ba490f8abbf68629281c5d8df17e2acd6532" }, "downloads": -1, "filename": "sklearn_porter-0.5.1-py2-none-any.whl", "has_sig": false, "md5_digest": "f3bd91f430a1bb95c6aa9741ee8816f6", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 122226, "upload_time": "2017-08-21T22:53:29", "url": "https://files.pythonhosted.org/packages/41/30/636111fb090a478fdb022f4afd12bb21513f8de8f9a00d7d03b80da665b6/sklearn_porter-0.5.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "434cd8e8988e58b284c43d94110c0615", "sha256": "1cd25b0e5b44f49043cd050d31b02726e8e77b76f91ea99bb637310ffbfd71a1" }, "downloads": -1, "filename": "sklearn-porter-0.5.1.tar.gz", "has_sig": false, "md5_digest": "434cd8e8988e58b284c43d94110c0615", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37544, "upload_time": "2017-08-21T22:53:31", "url": "https://files.pythonhosted.org/packages/ed/2a/f8d76a7306f83c9238a156917bbca128ec72f3b51d69345db085a8049a14/sklearn-porter-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "6835de1fed92d7dc32a2ae05b1935d61", "sha256": "6e64e0d5d7ef4513ab4356015d8952b915837482c7eb6d5c6e8b4b2624bf33df" }, "downloads": -1, "filename": "sklearn_porter-0.5.2-py2-none-any.whl", "has_sig": false, "md5_digest": "6835de1fed92d7dc32a2ae05b1935d61", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 122367, "upload_time": "2017-08-26T21:37:36", "url": "https://files.pythonhosted.org/packages/8c/7b/1f23086ec979d1528b64b04863cd94146edc1a88c7728b96dffe1c641d06/sklearn_porter-0.5.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c0e4d141d9ba6d0ebf2eb630f81e525f", "sha256": "9e9dfa51f78a4ee875f2c53970943695f429466b167821119748927d2b66450c" }, "downloads": -1, "filename": "sklearn-porter-0.5.2.tar.gz", "has_sig": false, "md5_digest": "c0e4d141d9ba6d0ebf2eb630f81e525f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37720, "upload_time": "2017-08-26T21:37:38", "url": "https://files.pythonhosted.org/packages/3a/28/e591f47d6089cba13c0d1fec77784cb5a064a9e5570fb7b0acdddad142a0/sklearn-porter-0.5.2.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "47f54a3d1fc8c605a2006c1e31de6fa2", "sha256": "8c16aec58a6b21376b51a65397b8af283fe6014c02140196637b12dbcd770dd3" }, "downloads": -1, "filename": "sklearn_porter-0.6.0-py2-none-any.whl", "has_sig": false, "md5_digest": "47f54a3d1fc8c605a2006c1e31de6fa2", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 132967, "upload_time": "2017-12-04T21:57:16", "url": "https://files.pythonhosted.org/packages/a9/c9/2f7ad0a6c5bb3367a9ede45611c39c19e7c35e547fdcfca4ceb63e5b87e8/sklearn_porter-0.6.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "21689598d49de05912024996cc28b5c0", "sha256": "296581994dbe941f8670c8b6c463248769cfcc96be46c8c3fe49d3b76d944357" }, "downloads": -1, "filename": "sklearn-porter-0.6.0.tar.gz", "has_sig": false, "md5_digest": "21689598d49de05912024996cc28b5c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 69915, "upload_time": "2017-12-04T21:57:19", "url": "https://files.pythonhosted.org/packages/7f/63/fadecdb53c5bf38680fa0de9f6dd042644879f8a8cdedffbde622ec313b5/sklearn-porter-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "67a29c91a197c448ab0bde9f29570c36", "sha256": "0676c45d75e55d96e830a4439457126fefe6663fcbce92e3a405586929302a66" }, "downloads": -1, "filename": "sklearn_porter-0.6.1-py2-none-any.whl", "has_sig": false, "md5_digest": "67a29c91a197c448ab0bde9f29570c36", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 134816, "upload_time": "2018-01-02T14:01:16", "url": "https://files.pythonhosted.org/packages/33/e2/55640b494a7baa74b50ed75a6e7535c3851bcacf7d5268e89b7706aecb28/sklearn_porter-0.6.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b2526ff6e577d3bc1c25e0712d0b89d3", "sha256": "45c4994a0c3e661dcab6ed68a79f2f441e4ea20b1b7557675bff873827685661" }, "downloads": -1, "filename": "sklearn-porter-0.6.1.tar.gz", "has_sig": false, "md5_digest": "b2526ff6e577d3bc1c25e0712d0b89d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 70087, "upload_time": "2018-01-02T14:01:19", "url": "https://files.pythonhosted.org/packages/2c/98/0f59620db5ce85c15e53d357e21221f002a218c199b12017126b2f09e465/sklearn-porter-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "c878b344bd6671b58e484b8a7cdd36f8", "sha256": "fcf3a5b233b097d9997c263bd31a07bc483f7fee0ea74e5b71e5a006b859e3c7" }, "downloads": -1, "filename": "sklearn_porter-0.6.2-py2-none-any.whl", "has_sig": false, "md5_digest": "c878b344bd6671b58e484b8a7cdd36f8", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 134765, "upload_time": "2018-02-03T22:08:23", "url": "https://files.pythonhosted.org/packages/7b/0c/d4f160732473d3bd62f1365ff3e6e72e90bd0e35b037e4f74d8808003f37/sklearn_porter-0.6.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a89dd2dfb68d998f9282cbe376d8fd47", "sha256": "6aa606f4859e5bb68a3b67d28b31226c849e0d9ca5501a52e51bc316891eeb40" }, "downloads": -1, "filename": "sklearn-porter-0.6.2.tar.gz", "has_sig": false, "md5_digest": "a89dd2dfb68d998f9282cbe376d8fd47", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 70468, "upload_time": "2018-02-03T22:08:27", "url": "https://files.pythonhosted.org/packages/35/a0/b281a9c3c9772cb1210cd76503aeaab9afb2d8f32cdcb5d66fe4165335b6/sklearn-porter-0.6.2.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "b69e7298608874a4d84a81ad7055b1dd", "sha256": "469f59eeae7c24232b6ad87cafd6d21854d51ed58432c7ba719f1e7e9ca3fed5" }, "downloads": -1, "filename": "sklearn_porter-0.7.0-py2-none-any.whl", "has_sig": false, "md5_digest": "b69e7298608874a4d84a81ad7055b1dd", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 144237, "upload_time": "2019-01-20T00:53:06", "url": "https://files.pythonhosted.org/packages/b7/38/6e5b935f92c170ed7dc803fabc3e582e0b9de674a0d5e8ee37ab31c962d0/sklearn_porter-0.7.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "045e25438cc3d0bfbfe8aea13dd028f9", "sha256": "5e91c8261a0dd465fbebb0ffeca58108ad499fb49728cdbe906579f7eb9aad7d" }, "downloads": -1, "filename": "sklearn-porter-0.7.0.tar.gz", "has_sig": false, "md5_digest": "045e25438cc3d0bfbfe8aea13dd028f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 78954, "upload_time": "2019-01-20T00:53:10", "url": "https://files.pythonhosted.org/packages/2f/2e/91b3bbf44d91a1e3f148704b365e4e945fff91678d62040011ec2f0529c3/sklearn-porter-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "84c94e3aede9e42e28b0fe725de0ac95", "sha256": "8a29e1ce67468b094c467c524ebb46f64eccc00f402b886ec40d6421dcaaab52" }, "downloads": -1, "filename": "sklearn_porter-0.7.1-py2-none-any.whl", "has_sig": false, "md5_digest": "84c94e3aede9e42e28b0fe725de0ac95", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 144266, "upload_time": "2019-01-20T11:45:10", "url": "https://files.pythonhosted.org/packages/e1/b0/6503dc8e655bc3c93c20e4a791733ac9414cd5cdb51c52a4c88b63d8723f/sklearn_porter-0.7.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bb427fe9f4ca7b6dd9e02beb0f84d8d6", "sha256": "2460a26346cc662c5d9ad85e1e35616173f331c8d53db8e1248263dd0acb3892" }, "downloads": -1, "filename": "sklearn-porter-0.7.1.tar.gz", "has_sig": false, "md5_digest": "bb427fe9f4ca7b6dd9e02beb0f84d8d6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79091, "upload_time": "2019-01-20T11:45:12", "url": "https://files.pythonhosted.org/packages/1a/df/4c2351c491e69e12bc3b852aad133e4d7268fe84458fa87dc673f4f6befa/sklearn-porter-0.7.1.tar.gz" } ], "0.7.2": [ { "comment_text": "", "digests": { "md5": "441b11770a7b289511e19e8f164accbc", "sha256": "8848d1f550d81210eee1b5d5329f9e9b1aae53b6cd94ab24529e5237ce6c3ed5" }, "downloads": -1, "filename": "sklearn_porter-0.7.2-py2-none-any.whl", "has_sig": false, "md5_digest": "441b11770a7b289511e19e8f164accbc", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 144291, "upload_time": "2019-01-20T12:53:37", "url": "https://files.pythonhosted.org/packages/bc/52/7a1a0de32978960249992e4abbbabf06ec21fcd7312feca2a85a9185ad84/sklearn_porter-0.7.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d674ef423b5a4d6c5f992d5ea02189ee", "sha256": "515f7b0576e7388fe780c80eebce7a13fdf56b1d5538de0ad4cd2252da09450b" }, "downloads": -1, "filename": "sklearn-porter-0.7.2.tar.gz", "has_sig": false, "md5_digest": "d674ef423b5a4d6c5f992d5ea02189ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79599, "upload_time": "2019-01-20T12:53:40", "url": "https://files.pythonhosted.org/packages/3d/ff/8c6cddd9472dbd0f70e27d020ab1c375090d61cf0782e0f20caab0451907/sklearn-porter-0.7.2.tar.gz" } ], "0.7.3": [ { "comment_text": "", "digests": { "md5": "b85f248e03859a8bfd303f2bb3c44a2b", "sha256": "fe52498b3796b58624eb8f5de86e75015be69c5e454d71662e5bff038a2d27ae" }, "downloads": -1, "filename": "sklearn_porter-0.7.3-py2-none-any.whl", "has_sig": false, "md5_digest": "b85f248e03859a8bfd303f2bb3c44a2b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 144290, "upload_time": "2019-04-15T22:13:06", "url": "https://files.pythonhosted.org/packages/2e/b5/f95fa6d6c032d3ff6f8adb4dbdb528d9e2c4f7f44600ffb9607b72044975/sklearn_porter-0.7.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d88303540d47e40ec06ea4ecacc219e1", "sha256": "00ef19d2e842ebdcaae32192604934737b2a9a603c65d7929d03e4cb7012ba14" }, "downloads": -1, "filename": "sklearn-porter-0.7.3.tar.gz", "has_sig": false, "md5_digest": "d88303540d47e40ec06ea4ecacc219e1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79757, "upload_time": "2019-04-15T22:13:09", "url": "https://files.pythonhosted.org/packages/03/0d/659b7f8e6405532c05cdf381a335cbcc62ace139d8bd8e76bdf4099bc9ec/sklearn-porter-0.7.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b85f248e03859a8bfd303f2bb3c44a2b", "sha256": "fe52498b3796b58624eb8f5de86e75015be69c5e454d71662e5bff038a2d27ae" }, "downloads": -1, "filename": "sklearn_porter-0.7.3-py2-none-any.whl", "has_sig": false, "md5_digest": "b85f248e03859a8bfd303f2bb3c44a2b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 144290, "upload_time": "2019-04-15T22:13:06", "url": "https://files.pythonhosted.org/packages/2e/b5/f95fa6d6c032d3ff6f8adb4dbdb528d9e2c4f7f44600ffb9607b72044975/sklearn_porter-0.7.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d88303540d47e40ec06ea4ecacc219e1", "sha256": "00ef19d2e842ebdcaae32192604934737b2a9a603c65d7929d03e4cb7012ba14" }, "downloads": -1, "filename": "sklearn-porter-0.7.3.tar.gz", "has_sig": false, "md5_digest": "d88303540d47e40ec06ea4ecacc219e1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79757, "upload_time": "2019-04-15T22:13:09", "url": "https://files.pythonhosted.org/packages/03/0d/659b7f8e6405532c05cdf381a335cbcc62ace139d8bd8e76bdf4099bc9ec/sklearn-porter-0.7.3.tar.gz" } ] }