{ "info": { "author": "Dat Tran, Alexandros Iosifidis", "author_email": "viebboy@gmail.com, iosifidis.alekos@gmail.com", "bugtrack_url": null, "classifiers": [ "Operating System :: POSIX" ], "description": "# PyGOP: A Python library for Generalized Operational Perceptron (GOP) based algorithms\n[![Documentation Status](https://readthedocs.org/projects/pygop/badge/?version=latest)](http://pygop.readthedocs.io/en/latest/?badge=latest)\n[![Build Status](https://travis-ci.org/viebboy/PyGOP.svg?branch=master)](https://travis-ci.org/viebboy/PyGOP)\n\nThis package implements progressive learning algorithms using [Generalized Operational Perceptron](https://www.sciencedirect.com/science/article/pii/S0925231216312851). PyGOP supports both single machine and cluster environment using CPU or GPU. This implementation includes the following algorithms:\n\n* Progressive Operational Perceptron ([POP](https://www.sciencedirect.com/science/article/pii/S0925231216312851))\n* Heterogeneous Multilayer Generalized Operational Perceptron ([HeMLGOP](https://arxiv.org/abs/1804.05093)) and its variants\n* Fast Progressive Operational Perceptron ([POPfast](https://arxiv.org/abs/1808.06377)) \n* Progressive Operational Perceptron with Memory ([POPmemO](https://arxiv.org/abs/1808.06377), [POPmemH](https://arxiv.org/abs/1808.06377))\n\n\n\n\nWhat is Generalized Operational Perceptron?\n===========================================\n\n\n[Generalized Operational Perceptron](https://www.sciencedirect.com/science/article/pii/S0925231216312851) is an artificial neuron model that was proposed to replace the traditional McCulloch-Pitts neuron model. While standard perceptron model only performs a linear transformation followed by non-linear thresholding, GOP model encapsulates a diversity of both linear and non-linear operations (with traditional perceptron as a special case). Each GOP is characterized by learnable synaptic weights and an operator set comprising of 3 types of operations: nodal operation, pooling operation and activation operation. The 3 types of operations performed by a GOP loosely resemble the neuronal activities in a biological learning system of mammals in which each neuron conducts electrical signals over three distinct operations:\n\n* Modification of input signal from the synapse connection in the Dendrites.\n* Pooling operation of the modified input signals in the Soma.\n* Sending pulses when the pooled potential exceeds a limit in the Axon hillock.\n\nBy defining a set of nodal operators, pooling operators and activation operators, each GOP can select the suitable operators based on the problem at hand. Thus learning a GOP-based network involves finding the suitable operators as well as updating the synaptic weights. The author of GOP proposed Progressive Operational Perceptron (POP) algorithm to progressively learn GOP-based networks. Later, [Heterogeneous Multilayer Generalized Operational Perceptron (HeMLGOP)](https://arxiv.org/pdf/1804.05093.pdf) algorithm and its variants (HoMLGOP, HeMLRN, HoMLRN) were proposed to learn heterogeneous architecture of GOPs with efficient operator set search procedure. In addition, fast version of POP, i.e., [POPfast](https://arxiv.org/pdf/1808.06377.pdf) was proposed together with memory extensions [POPmemO](https://arxiv.org/pdf/1808.06377.pdf), [POPmemH](https://arxiv.org/pdf/1808.06377.pdf) that augment POPfast by incorporating memory path.\n\nInstallation\n============\n\nPyPi installation\n-----------------\n\nTensorflow is required before installing PyGOP.\nTo install tensorflow CPU version through *pip*::\n\n pip install tensorflow\n\nOr the GPU version::\n\n pip install tensorflow-gpu\n\nTo install PyGOP with required dependencies::\n\n pip install pygop\n\nAt the moment, PyGOP only supports Linux with both python 2 and python 3 (tested on Python 2.7 and Python 3.4, 3.5, 3.6, 3.7 with tensorflow for cpu)\n\nInstallation from source\n------------------------\n\nTo install latest version from github, clone the source from the project repository and install with setup.py::\n\n git clone https://github.com/viebboy/PyGOP\n cd PyGOP\n python setup.py install --user\n\n\nDocumentation\n=============\n\nFull documentation can be found [here](https://pygop.readthedocs.io)\n\n\nReference\n=========\n\nIf you use one of the algorithms, please cite the corresponding articles:\n\n* S. Kiranyaz, T. Ince, A. Iosifidis and M. Gabbouj, \"Progressive Operational Perceptron\", Neurocomputing, vol 224, pp. 142-154, 2017.\n* D. T. Tran, S. Kiranyaz, M. Gabbouj and A. Iosifidis, \"Heterogeneous Multilayer Generalized Operational Perceptron\", arXiv preprint arXiv:1804.05093, 2018.\n* D. T. Tran, S. Kiranyaz, M. Gabbouj and A. Iosifidis, \"Progressive Operational Perceptron with Memory\", arXiv preprint arXiv:1808.06377, 2018.\n\n\n\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/viebboy/PyGOP", "keywords": "", "license": "LICENSE.txt", "maintainer": "", "maintainer_email": "", "name": "pygop", "package_url": "https://pypi.org/project/pygop/", "platform": "", "project_url": "https://pypi.org/project/pygop/", "project_urls": { "Homepage": "https://github.com/viebboy/PyGOP" }, "release_url": "https://pypi.org/project/pygop/0.2.2/", "requires_dist": [ "python-version (>=\"2.7\")", "numpy (>=1.13)", "dill (>=0.2.6)", "joblib (>=0.11)", "keras (>=2.2.1)" ], "requires_python": "", "summary": "Python package that implements various algorithms using Generalized Operational Perceptron", "version": "0.2.2" }, "last_serial": 5196731, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "8ad08cf4421f7efb46f3daef39b7e89d", "sha256": "d3c70c06139a76b67893df975acdf5a773c761db76ba4d05c1947cb3a877d6b4" }, "downloads": -1, "filename": "pygop-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8ad08cf4421f7efb46f3daef39b7e89d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 57811, "upload_time": "2018-10-03T10:22:24", "url": "https://files.pythonhosted.org/packages/7a/ef/b0fa4e88f41288dce7c554ca0c56dfac8d9ee2450040649b2fe293e43540/pygop-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bebc936f7369275a72ff3c81b5dde3ca", "sha256": "afff44243f2ab3a5bb80ad6ecb4c51c4fd99c69535c83fa7b902387a8061ea49" }, "downloads": -1, "filename": "pygop-0.1.1.tar.gz", "has_sig": false, "md5_digest": "bebc936f7369275a72ff3c81b5dde3ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33181, "upload_time": "2018-10-03T10:22:26", "url": "https://files.pythonhosted.org/packages/e1/f4/5f9a5cb1cab33f092251b4ad272644cfc7f5088186f8951f392d4ed8a2ef/pygop-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "3396820a3c93be28e144c4e305510dbe", "sha256": "7605ca30b55ba0385b2e1dc682e301ba0074a529b0b23305a96d80e2900147c9" }, "downloads": -1, "filename": "pygop-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3396820a3c93be28e144c4e305510dbe", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 58120, "upload_time": "2018-10-03T12:12:30", "url": "https://files.pythonhosted.org/packages/e0/9b/ccf22caef210273ff9ca3aec61153f2e720adc1a1b69f69d4594c7d8f5cc/pygop-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cbe4d1d01671e7cb2e5cbe802b1b59aa", "sha256": "5b5cf7ed485ffa7d72b13ddb987abd7b3dfd005e1215e0c4f8e7b5af0150c926" }, "downloads": -1, "filename": "pygop-0.1.2.tar.gz", "has_sig": false, "md5_digest": "cbe4d1d01671e7cb2e5cbe802b1b59aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33549, "upload_time": "2018-10-03T12:12:31", "url": "https://files.pythonhosted.org/packages/cc/2a/9e92d4c8bbd39e187c122fcce483e081f62d189041dfa2c9c7e0d2e8869e/pygop-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "40f01d614556be6d0ac52ac7f3369b08", "sha256": "1031ee78c0eb55aa516442fbc238f260b4f26f4b90a6a3fea8268007e28d2c0c" }, "downloads": -1, "filename": "pygop-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "40f01d614556be6d0ac52ac7f3369b08", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 60566, "upload_time": "2018-10-03T15:09:32", "url": "https://files.pythonhosted.org/packages/a8/d9/737da7e4aaa021529f28dd7407bf0a317ddbfbdfceba604c8c0c86da9386/pygop-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f53b25ccd3dc2098209c753b8d7d32e4", "sha256": "41486ff147593c9eafaa6931ade05898d871862c524a660f86137254a51679af" }, "downloads": -1, "filename": "pygop-0.1.3.tar.gz", "has_sig": false, "md5_digest": "f53b25ccd3dc2098209c753b8d7d32e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34696, "upload_time": "2018-10-03T15:09:34", "url": "https://files.pythonhosted.org/packages/e5/45/b0ca44a1eede37dfe83273873d5859f5ed28a63542a11703d59c2428ff85/pygop-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "4a8dd903c14464ef3cf16a5a2c9eacc6", "sha256": "b95fc7ac0f6db614fb3d4c08e258229ab7ca4aa904f63a95564cd1f16fdb60c9" }, "downloads": -1, "filename": "pygop-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4a8dd903c14464ef3cf16a5a2c9eacc6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 60587, "upload_time": "2018-10-03T20:29:30", "url": "https://files.pythonhosted.org/packages/62/84/f36cba5e188e42f897205210a8d68cf8ee4d52457d4f20a72707c56dff70/pygop-0.1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6c34a2acb80551c69b205fbc939d5c9a", "sha256": "62c44bff0a3528a426e75f816360503a7fe2e65cb8f81100cf8d50dea15c2df2" }, "downloads": -1, "filename": "pygop-0.1.4.tar.gz", "has_sig": false, "md5_digest": "6c34a2acb80551c69b205fbc939d5c9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34724, "upload_time": "2018-10-03T20:29:31", "url": "https://files.pythonhosted.org/packages/58/e0/c47af73e18be214b021281dd17d098b5f58e19d7dc9469b2baa2e23c5871/pygop-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "70121ef9437f9f7e2002fbd802eb65ea", "sha256": "7cfd5cc1d6bb692a998b08a4a56ce11e6afb5461ed3d62df916ab0264797fef6" }, "downloads": -1, "filename": "pygop-0.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "70121ef9437f9f7e2002fbd802eb65ea", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 58033, "upload_time": "2018-10-03T22:38:07", "url": "https://files.pythonhosted.org/packages/4a/e2/f10b8ad7c328fc47e14ed729a40af89f6cef278eee7613076d23b42dc28d/pygop-0.1.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d093e84b43dffadc1c84db690cf102d7", "sha256": "74958e1026d471426e7b2ad7025cf1aa06f07b18154be0d2165408a9db489ba2" }, "downloads": -1, "filename": "pygop-0.1.5.tar.gz", "has_sig": false, "md5_digest": "d093e84b43dffadc1c84db690cf102d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33631, "upload_time": "2018-10-03T22:38:08", "url": "https://files.pythonhosted.org/packages/79/7d/c7d6308fa0e91eb1c7ecebaef4ef00cefa49aacaf1f423aab6795ec79645/pygop-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "7c95ba4086e88b11364acd3236188452", "sha256": "ae7643e8efbf9899d11f7fcd78031d95dca74814d69e3e0dac7f7ab23a378474" }, "downloads": -1, "filename": "pygop-0.1.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7c95ba4086e88b11364acd3236188452", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 58038, "upload_time": "2018-10-04T00:56:05", "url": "https://files.pythonhosted.org/packages/06/fd/37fe8b25a8f104c8e7aaa8d2a0c9222ba7c7bf3c2e19f41ee288a4b37aa0/pygop-0.1.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "79fe4c4b0e49515d73e9ed4b6b1018f2", "sha256": "3344b037c5079143c78945381d0e5719a1f9c47ccb040521bf0eb9b4f92a7dfd" }, "downloads": -1, "filename": "pygop-0.1.6.tar.gz", "has_sig": false, "md5_digest": "79fe4c4b0e49515d73e9ed4b6b1018f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33646, "upload_time": "2018-10-04T00:56:08", "url": "https://files.pythonhosted.org/packages/59/e9/7362feb7a103f6d7c42fa2f89f1ca644f82d6c7d87c8e0a737126d0bb47f/pygop-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "c12b01c5352996d9585203be0c8c33fa", "sha256": "54e85dd642c9dbe67023ffc296f0410018a9a7adb7efa17ba88c848b2370aab7" }, "downloads": -1, "filename": "pygop-0.1.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c12b01c5352996d9585203be0c8c33fa", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 58047, "upload_time": "2018-10-08T09:19:24", "url": "https://files.pythonhosted.org/packages/62/6b/08afa78c34d8ed1b661122b44d9d80080d425195a052a2967ba8e3d59492/pygop-0.1.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "042c7d5626ac08380a769106d3761168", "sha256": "1eeab04e1cb008c0c18f09991bb12b1cca389506a71f3646218a32c49255ced9" }, "downloads": -1, "filename": "pygop-0.1.7.tar.gz", "has_sig": false, "md5_digest": "042c7d5626ac08380a769106d3761168", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33663, "upload_time": "2018-10-08T09:19:26", "url": "https://files.pythonhosted.org/packages/80/f6/13a795a7e13c52107e04ad6539472086f7105615ec8b4b09ecf89cf2b7b0/pygop-0.1.7.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "a28ebbd8a511bd4bb40a2b1cfdb25294", "sha256": "36d8f5edbbcde4c874f5e180f50e8fde7a9834777ab4497b42ca79133362a2d3" }, "downloads": -1, "filename": "pygop-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a28ebbd8a511bd4bb40a2b1cfdb25294", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 60913, "upload_time": "2018-12-17T00:47:01", "url": "https://files.pythonhosted.org/packages/85/67/f8f301572691fb6137f1a1c4f202d958d5b83aa4ef1c93fd41bc09eb4f25/pygop-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "69478b109848426824ac038c3c6ac1bc", "sha256": "75d01945f6594b7c61e55d8ae363b6510efad4ac0f5d815a11d6468d1069352a" }, "downloads": -1, "filename": "pygop-0.2.0.tar.gz", "has_sig": false, "md5_digest": "69478b109848426824ac038c3c6ac1bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34707, "upload_time": "2018-12-17T00:47:04", "url": "https://files.pythonhosted.org/packages/f9/70/ab25de489afdde816ca71866af206fc14d209839984e85d5a4f08e00b92a/pygop-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "ba5d9c13a42fccbbfa7e93ebc2e5221b", "sha256": "d38256dcf627f1eebc7cd181773404a6c536a17565188db8a770b78d69399b3d" }, "downloads": -1, "filename": "pygop-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ba5d9c13a42fccbbfa7e93ebc2e5221b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 60585, "upload_time": "2018-12-29T17:56:26", "url": "https://files.pythonhosted.org/packages/67/a0/0fd0b4f10f716ff9d7214ecd6752e4795f63931286a268209f6992606a1c/pygop-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4f08548f28ab856f2ea6a0f9ea1261a9", "sha256": "bf86827aec7ff1e576667cf2a2b354dbc641dc6fa3da06d2e9cff6c9e3db1055" }, "downloads": -1, "filename": "pygop-0.2.1.tar.gz", "has_sig": false, "md5_digest": "4f08548f28ab856f2ea6a0f9ea1261a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34660, "upload_time": "2018-12-29T17:56:28", "url": "https://files.pythonhosted.org/packages/20/aa/173e90f66b2e7ec6631b82b99a5a501d63a52f28dbb0319fb391b8c2de77/pygop-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "a5cf4d16fa6273fe36a85112194608bc", "sha256": "49470a617f280bbbfeb8bfee5cdb1db2307a4e1090247d7225e4072aeff5cf1d" }, "downloads": -1, "filename": "pygop-0.2.2-py2-none-any.whl", "has_sig": false, "md5_digest": "a5cf4d16fa6273fe36a85112194608bc", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 61140, "upload_time": "2019-04-27T13:59:11", "url": "https://files.pythonhosted.org/packages/79/e9/44d0a2d3df79e83d4b3645b4cb4fe1fe3cbc9a0c35b78fd8d71ac50317be/pygop-0.2.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f4ab88a4741210f83c6003ab8eeb32dc", "sha256": "0a09bb4692ae8eadd9f78763a1db111fc43c2ae21cd4df68749104fc12de3731" }, "downloads": -1, "filename": "pygop-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "f4ab88a4741210f83c6003ab8eeb32dc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 60350, "upload_time": "2019-04-27T13:55:32", "url": "https://files.pythonhosted.org/packages/d1/3d/1f988459927667c9bcb0c6fb69d60029dc385c465a21991e2c4f07e0f6b0/pygop-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0a304b334ae2b4b628659cd4b40cf030", "sha256": "e446527193818bbf31fee3bb1c4321a9a186069dd3af85c82d31c60ff4ed5beb" }, "downloads": -1, "filename": "pygop-0.2.2.tar.gz", "has_sig": false, "md5_digest": "0a304b334ae2b4b628659cd4b40cf030", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36178, "upload_time": "2019-04-27T13:55:37", "url": "https://files.pythonhosted.org/packages/c3/43/89869ea6bb27e6cae4c7f9f2b990c55317cb6353147539414617a84a1ff6/pygop-0.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a5cf4d16fa6273fe36a85112194608bc", "sha256": "49470a617f280bbbfeb8bfee5cdb1db2307a4e1090247d7225e4072aeff5cf1d" }, "downloads": -1, "filename": "pygop-0.2.2-py2-none-any.whl", "has_sig": false, "md5_digest": "a5cf4d16fa6273fe36a85112194608bc", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 61140, "upload_time": "2019-04-27T13:59:11", "url": "https://files.pythonhosted.org/packages/79/e9/44d0a2d3df79e83d4b3645b4cb4fe1fe3cbc9a0c35b78fd8d71ac50317be/pygop-0.2.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f4ab88a4741210f83c6003ab8eeb32dc", "sha256": "0a09bb4692ae8eadd9f78763a1db111fc43c2ae21cd4df68749104fc12de3731" }, "downloads": -1, "filename": "pygop-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "f4ab88a4741210f83c6003ab8eeb32dc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 60350, "upload_time": "2019-04-27T13:55:32", "url": "https://files.pythonhosted.org/packages/d1/3d/1f988459927667c9bcb0c6fb69d60029dc385c465a21991e2c4f07e0f6b0/pygop-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0a304b334ae2b4b628659cd4b40cf030", "sha256": "e446527193818bbf31fee3bb1c4321a9a186069dd3af85c82d31c60ff4ed5beb" }, "downloads": -1, "filename": "pygop-0.2.2.tar.gz", "has_sig": false, "md5_digest": "0a304b334ae2b4b628659cd4b40cf030", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36178, "upload_time": "2019-04-27T13:55:37", "url": "https://files.pythonhosted.org/packages/c3/43/89869ea6bb27e6cae4c7f9f2b990c55317cb6353147539414617a84a1ff6/pygop-0.2.2.tar.gz" } ] }