{ "info": { "author": "Mohamed Abdou", "author_email": "matex512@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Flexible_Neural_Net\nA simple and flexible python library that allows you to build custom Neural Networks where you can easily tweak parameters to change how your network behaves\n\n## Installation\n```pip install flexible-neural-network```\n\n## Initialization\n* First initialize a Neural Net object and pass number of inputs, outputs, and hidden layers\n\n ```myNN = NeuralNet(number_of_inputs, number_of_outputs, number_of_hidden_layers)```\n* You can choose how what _activation function_ to use from: \"relu\", \"sigmoid, \"tanh\"\n\n ```myNN = NeuralNet(number_of_inputs, number_of_outputs, number_of_hidden_layers, activation_func=\"sigmoid\")```\n* You can choose modify the _learning rate_\n\n ```myNN = NeuralNet(number_of_inputs, number_of_outputs, number_of_hidden_layers, learning_rate=0.1)```\n* You can choose tweak the number of nodes in each _hidden layer_\n\n * by assigning an integer number such as 3: _if there was 4 hidden layers then each layer will have 3 nodes => [3, 3, 3, 3]_\n\n ```myNN = NeuralNet(number_of_inputs, number_of_outputs, number_of_hidden_layers, nodes_in_each_layer=3)```\n\n * by assigning a list of integers number such as [3, 5, 2, 3] that has a length of *number_of_hidden_layers*: _if there was 4 hidden layers then each layer will have different number of nodes nodes correspondingly => [3, 5, 2, 3]_\n\n ```myNN = NeuralNet(number_of_inputs, number_of_outputs, number_of_hidden_layers, nodes_in_each_layer=[3, 5, 2, 3])```\n\n\n## How to use\n\n#### Assuming you initialized your object and data as below:\n\n```myNN = NeuralNet(2, 1, 2, nodes_in_each_layer=4, learning_rate=0.1, activation_func=\"sigmoid\")```\n```\ndata = np.array([\n [3, 1.5, 1],\n [2, 1, 0],\n [4, 1.5, 1],\n [3, 1, 0],\n [3.5, .5, 1],\n [2, .5, 0],\n [5.5, 1, 1],\n [1, 1, 0]\n ])\n\nmystery_data = [2, 1] # should be classified as 1\n```\n\n#### You can:\n\n_Here we specified the number of epochs to be 1_\n* *Train single entries:* \n ```myNN.train(data[0, 0:2], data[0, 2], epochs=1)```\n\n* *Train multiple entries*\n ```myNN.train_many(data[:, 0:2], data[:, 2], epochs=1)```\n\n* *test single/multiple entries*\n ```output = myNN.test(mystery_flower)```\n where output is always an np.ndarray with size as the specfied in the object's constructor. _for the current example it's = [1.45327823]_\n\n* *Save NN for later*\n ```myNN.save(\"file_name\")```\n\n* *Load NN without the need for retraining*\n ```myNN = NeuralNet.load(\"file_name\")```\n\nObviously NNs **do not** give exact answers and its our job to determine which class is it belongs to and judging from the training data we only have class 0, or 1 and the output we got is nearer to 1 than 0 so we should **classify it as 1**\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/Mohamed-512/Flexible_Neural_Net", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "flexible-neural-network", "package_url": "https://pypi.org/project/flexible-neural-network/", "platform": "", "project_url": "https://pypi.org/project/flexible-neural-network/", "project_urls": { "Homepage": "https://github.com/Mohamed-512/Flexible_Neural_Net" }, "release_url": "https://pypi.org/project/flexible-neural-network/0.0.42/", "requires_dist": null, "requires_python": "", "summary": "A simple and flexible python library that allows you to build custom Neural Networks where you can easily tweak parameters to change how your network behaves", "version": "0.0.42" }, "last_serial": 5766345, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "be765cd455ecc27d133733c0b0509426", "sha256": "9cb9001a78a49c7b2c0bbc24099ba0f02e09fdbc9abf80b118e507f41c67939f" }, "downloads": -1, "filename": "Flexible_Neural_Network-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "be765cd455ecc27d133733c0b0509426", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1361, "upload_time": "2019-08-25T09:36:45", "url": "https://files.pythonhosted.org/packages/58/3a/561008841440b392f7e6286d6746bc210d072a5aef32c541649eb6f8c005/Flexible_Neural_Network-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d693098f019704371ca4fa55370e634d", "sha256": "cc04472eb5d0ae9d013cf78b0abfceca43ec7cf11a465396592754f775a0b1f1" }, "downloads": -1, "filename": "Flexible_Neural_Network-0.0.1.tar.gz", "has_sig": false, "md5_digest": "d693098f019704371ca4fa55370e634d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1883, "upload_time": "2019-08-25T09:36:47", "url": "https://files.pythonhosted.org/packages/57/3a/8363c57f3d7a1bd83e9565b7c7a0bfff773a5950a1fe427b1380fe965c5d/Flexible_Neural_Network-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "cde2e1f875935a69b7529f6b818ffad8", "sha256": "74961fea0d60f2c9b52071afdf0c3a0a5925ccbf0910f3369f1b8882fff1faf9" }, "downloads": -1, "filename": "flexible_neural_network-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "cde2e1f875935a69b7529f6b818ffad8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6531, "upload_time": "2019-08-25T10:57:10", "url": "https://files.pythonhosted.org/packages/02/73/25ad64c933e8b18456133c3d9aff38c52e4568872e39c7c7aac36edfefac/flexible_neural_network-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d01fabc2cb061ee5b525c012aa5e9dcc", "sha256": "34b7316c1284735a96e2ddf16e602911b22e1e99e04909d9f6f5c48238a6c4b8" }, "downloads": -1, "filename": "flexible_neural_network-0.0.2.tar.gz", "has_sig": false, "md5_digest": "d01fabc2cb061ee5b525c012aa5e9dcc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4693, "upload_time": "2019-08-25T10:57:11", "url": "https://files.pythonhosted.org/packages/b9/8e/0ec3d7e52504f52a76e5ad2ff84c0e9a96e967a95123ffc327f5e39eb617/flexible_neural_network-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "548d4d9c36587dd7664a02e48e368245", "sha256": "239d26f32d93fbd35bff10b872a4ba90f5bb44ff592359bd804c9e268a13dce1" }, "downloads": -1, "filename": "flexible_neural_network-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "548d4d9c36587dd7664a02e48e368245", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6703, "upload_time": "2019-08-29T13:31:26", "url": "https://files.pythonhosted.org/packages/a0/c3/18a6498dc62066170041937739bafca142b3415874b4cb046eb95fb60037/flexible_neural_network-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "179f9f1c6c7e936d0cb665ff11cb1c76", "sha256": "b868f3fd562d746ca12910a06ef2362ac8c856122cb830f43a43648eec84b923" }, "downloads": -1, "filename": "flexible-neural-network-0.0.3.tar.gz", "has_sig": false, "md5_digest": "179f9f1c6c7e936d0cb665ff11cb1c76", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4978, "upload_time": "2019-08-29T13:31:31", "url": "https://files.pythonhosted.org/packages/35/c0/9f54fd7ae39f9afa7c79ec1afef537b209d5260c35746481daa22514ef4c/flexible-neural-network-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "bba08091a4cb6c0e82338c3a4ab1314a", "sha256": "3bc88940e7bdfd516474d36dd68d529724b28aa6843de7e8b759f2b133de4098" }, "downloads": -1, "filename": "flexible_neural_network-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "bba08091a4cb6c0e82338c3a4ab1314a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6799, "upload_time": "2019-09-01T07:39:37", "url": "https://files.pythonhosted.org/packages/36/e1/beb75e0db85a38dce9bf82c7001e87d94dd959957b2938b50cb5326123d1/flexible_neural_network-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4a5326ae21eeb81f42a1c20c83df2602", "sha256": "f6cbc2619278b498f6f68a0bb9d98dc5f0c950645d66fddd4a1f67de1cbf6319" }, "downloads": -1, "filename": "flexible-neural-network-0.0.4.tar.gz", "has_sig": false, "md5_digest": "4a5326ae21eeb81f42a1c20c83df2602", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5081, "upload_time": "2019-09-01T06:32:12", "url": "https://files.pythonhosted.org/packages/30/fd/7f7da5332503512572a9af00ce50cc5b94df95cc7a6efad6c6ceb0eb6022/flexible-neural-network-0.0.4.tar.gz" } ], "0.0.41": [ { "comment_text": "", "digests": { "md5": "63506c8aed05f9bbf94603d1e3085ac1", "sha256": "ab9d0a7e9ba74ed497b2ffec05512a090d4173c8dd82cac06dc65fae48f6a84d" }, "downloads": -1, "filename": "flexible_neural_network-0.0.41-py3-none-any.whl", "has_sig": false, "md5_digest": "63506c8aed05f9bbf94603d1e3085ac1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6809, "upload_time": "2019-09-01T07:41:13", "url": "https://files.pythonhosted.org/packages/c9/a4/5f7770a8b7e04b56b8cafa168bd07cb7addc6c329be3e0cca626a94aab4f/flexible_neural_network-0.0.41-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2501354b8593249591bb349aae79fa59", "sha256": "ddef60e61191744c4c3ac309a4936c757c05781404b5d5a0f449df8bd6e22053" }, "downloads": -1, "filename": "flexible-neural-network-0.0.41.tar.gz", "has_sig": false, "md5_digest": "2501354b8593249591bb349aae79fa59", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5080, "upload_time": "2019-09-01T07:41:15", "url": "https://files.pythonhosted.org/packages/42/2b/9ab9c31eb546b075cd51dad644031522343485d1760d0e2e029478c16c73/flexible-neural-network-0.0.41.tar.gz" } ], "0.0.42": [ { "comment_text": "", "digests": { "md5": "13648811bd5af11ea692b8d77f44744a", "sha256": "77f950912b2cc9b67f9729663d074c18275a00db009b5a89108e79ffedbba260" }, "downloads": -1, "filename": "flexible_neural_network-0.0.42-py3-none-any.whl", "has_sig": false, "md5_digest": "13648811bd5af11ea692b8d77f44744a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6808, "upload_time": "2019-09-01T07:48:14", "url": "https://files.pythonhosted.org/packages/45/25/bb6e43091f514fd3b36958c40ec4df42403c77f01ef4a5ce08b66e24f763/flexible_neural_network-0.0.42-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "31bccff5b043742d8abd082e2201b971", "sha256": "69745b34ba82e0fa85fde4710a616061ef898eb7ad863ee1e31b634ea11fe474" }, "downloads": -1, "filename": "flexible-neural-network-0.0.42.tar.gz", "has_sig": false, "md5_digest": "31bccff5b043742d8abd082e2201b971", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5087, "upload_time": "2019-09-01T07:48:16", "url": "https://files.pythonhosted.org/packages/0f/29/2e25fe08981d21698b48f00030c3fc48412c146bf5ac654b8966279b3512/flexible-neural-network-0.0.42.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "13648811bd5af11ea692b8d77f44744a", "sha256": "77f950912b2cc9b67f9729663d074c18275a00db009b5a89108e79ffedbba260" }, "downloads": -1, "filename": "flexible_neural_network-0.0.42-py3-none-any.whl", "has_sig": false, "md5_digest": "13648811bd5af11ea692b8d77f44744a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6808, "upload_time": "2019-09-01T07:48:14", "url": "https://files.pythonhosted.org/packages/45/25/bb6e43091f514fd3b36958c40ec4df42403c77f01ef4a5ce08b66e24f763/flexible_neural_network-0.0.42-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "31bccff5b043742d8abd082e2201b971", "sha256": "69745b34ba82e0fa85fde4710a616061ef898eb7ad863ee1e31b634ea11fe474" }, "downloads": -1, "filename": "flexible-neural-network-0.0.42.tar.gz", "has_sig": false, "md5_digest": "31bccff5b043742d8abd082e2201b971", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5087, "upload_time": "2019-09-01T07:48:16", "url": "https://files.pythonhosted.org/packages/0f/29/2e25fe08981d21698b48f00030c3fc48412c146bf5ac654b8966279b3512/flexible-neural-network-0.0.42.tar.gz" } ] }