{ "info": { "author": "Astha Gupta", "author_email": "astha736@gmail.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 2.7" ], "description": "################################# README.txt###############################################\r\n# Name of the project\t: PACBayesianNMF \r\n\r\n# Purpose \t\t\t\t: Implementation of a PAC-Bayesian approach to Non-Negative Matrix\r\n\r\n#\t\t\t\t\t\t Factorization, usein block gradient descent.\r\n\r\n# Authors\t\t\t\t: Astha Gupta \t\t\r\n\r\n#\t\t\t\t\t\t Benjamin Guedj \t\r\n\r\n# Reference \t\t\t: Source: https://arxiv.org/abs/1601.01345\r\n\r\n#\t\t\t\t\t\t P. Alquier and B. Guedj (2016). \"A Sharp Oracle Inequality\r\n\r\n#\t\t\t\t\t\t for Bayesian Non-Negative Matrix Factorization\", arXiv preprint.\r\n\r\n#\t\t\t\t\t\t Please refer to the paper above for a full description on the \r\n\r\n#\t\t\t\t\t\t implemented algorithm.\r\n\r\n#License\t\t\t\t: GPLv3 \r\n\r\n#########################################################################################\r\n\r\n# List of important files and functions \r\n\r\n# \t\t#################################################################################\r\n\r\n#\t \t\".\\pacbayesiannmf\\blockGradientDescent.py\"\r\n\r\n#\t \tContains class called blockGradientDescent\r\n\r\n#\t\t-> setDataMatrix(self,dataMatrix):\tfunction to set dataMatrix \r\n\r\n#\t\t-> setNoOfPatterns(self,K):\t\t\tfunction to set no of patterns to find \r\n\r\n#\t\t-> setConditionOnAllSteps(self,concondition_on_step = 1e-2,\r\n\r\n#\t\t condition_on_inside_step_U = 1e-3,\r\n\r\n#\t\t condition_on_inside_step_V = 1e-3): Set exit conditions for block\r\n\r\n#\t\t\t\t\t\t\t\t\t\t\t gradient descent \r\n\r\n#\t\t-> setConditionOnOutsideStep(self,concondition_on_step = 1e-2):\r\n\r\n#\t\t Set value for the most outside step, minimize for UV\r\n\r\n#\t\t-> setConditionOnInsideStepU(self,condition_on_inside_step_U = 1e-3):\r\n\r\n#\t\t Set value for the inner loop that minimizes for U\r\n\r\n#\t\t-> setConditionOnInsideStepV(self,condition_on_inside_step_V = 1e-3):\r\n\r\n#\t\t Set value for the inner loop that minimized for V\r\n\r\n#\r\n\r\n#\t\t-> def applyBlockGradientDescent(self,b = 1e6,lmbd = (float(1)/4)*100,\r\n\r\n#\t\t pas = 1e-3,printflag = 0): \r\n\r\n#\t\t This is the main function that applies blockGradientDescent \r\n\r\n#\t\t b is used to inforce sparcity \r\n\r\n#\t\t lmbd is lambda from the algorithm \r\n\r\n# pas is constant used in algorithm for calculating new U and V \r\n\r\n#\t\t##################################################################################\t\r\n\r\n##########################################################################################\t\t \r\n\r\n# Usage: Import package, create a 2d dataMatrix with each row as a datapoint having values\r\n\r\n# \t\t between 0 to 1. Create an object of class with parameters as dataMatrix and an \r\n\r\n#\t\t integer that specifies no of patterns to be detected. Set other parameters using\r\n\r\n#\t\t set*() methods. Finally to apply Block Gradient Descent use \t\t\r\n\r\n# \t\t applyBlockGradientDescent() method \r\n\r\n#\r\n\r\n# from pacbayesiannmf import *\r\n\r\n# z = blockGradientDescent(dataMatrix,2)\r\n\r\n# z.setConditionOnAllSteps(1e-4,1e-6,1e-6)\r\n\r\n# (U,V,crit,out)= z.applyBlockGradientDescent(printflag = 1)\r\n\r\n#\r\n\r\n# Most important output is V, which contains the signal. Each column of V \r\n\r\n# crit gives as an array with distance between actual datamatrix and estimated UV with each step\r\n\r\n# out is a list of values of different variables with each step, helps in debugging \r\n\r\n###########################################################################################\r\n\r\n################################## END#####################################################", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/astha736/PACbayesianNMF", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://researchers.lille.inria.fr/bguedj/", "keywords": "PAC-Bayesian Non-Negative Matrix Factorization Quasi-Bayesian Block Gradient Descent", "license": "GPLv3", "maintainer": "Benjamin Guedj", "maintainer_email": "benjamin.guedj@inria.fr", "name": "PACbayesianNMF", "package_url": "https://pypi.org/project/PACbayesianNMF/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/PACbayesianNMF/", "project_urls": { "Download": "https://github.com/astha736/PACbayesianNMF", "Homepage": "http://researchers.lille.inria.fr/bguedj/" }, "release_url": "https://pypi.org/project/PACbayesianNMF/0.1.3/", "requires_dist": null, "requires_python": null, "summary": "Implementing NMF with a PAC-Bayesian approach relying upon block gradient descent", "version": "0.1.3" }, "last_serial": 2216440, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "105eee12e4fd4fb94bc0b17bf635fb77", "sha256": "64f66fd882e1b72832d8d30adbe0ea7bceec6f8ae5641fa908f15d9096eeb8cb" }, "downloads": -1, "filename": "PACbayesianNMF-0.1.0.tar.gz", "has_sig": false, "md5_digest": "105eee12e4fd4fb94bc0b17bf635fb77", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4496, "upload_time": "2016-07-11T17:40:14", "url": "https://files.pythonhosted.org/packages/07/68/f045a40fa8d0b6ee7e7b85bf5b98ac16fbf5197df95960a81461c69f5dfb/PACbayesianNMF-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "92e30afeb31d832d0f86cf76fd24ae79", "sha256": "7a22b03d38bb06c8b2bff0ee30676413f1637230108457a7681b6716becb005c" }, "downloads": -1, "filename": "PACbayesianNMF-0.1.1.zip", "has_sig": false, "md5_digest": "92e30afeb31d832d0f86cf76fd24ae79", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1856228, "upload_time": "2016-07-12T09:46:44", "url": "https://files.pythonhosted.org/packages/f9/8c/1a8b90ebaa233328db3490aa7ad565386cffdb51432d3fbbb3507958cf39/PACbayesianNMF-0.1.1.zip" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "fd685cf9b7adb85e9278d0030cffe9d3", "sha256": "2f40223c891c1f1857b07fa891a548638dceab737ec9cfdb78ae23cadec5437b" }, "downloads": -1, "filename": "PACbayesianNMF-0.1.2.zip", "has_sig": false, "md5_digest": "fd685cf9b7adb85e9278d0030cffe9d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1854106, "upload_time": "2016-07-12T09:51:55", "url": "https://files.pythonhosted.org/packages/54/b2/0b58184e981d57832c5119cc23888a464c9b48be176c09570716d98306de/PACbayesianNMF-0.1.2.zip" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "12cd25b08663ca9881b2e977482343d9", "sha256": "2aa8bece2aa3a64487c4080a2a38be1c523bf8cb8df37af560673433e9766d91" }, "downloads": -1, "filename": "PACbayesianNMF-0.1.3.zip", "has_sig": false, "md5_digest": "12cd25b08663ca9881b2e977482343d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1854117, "upload_time": "2016-07-12T11:49:21", "url": "https://files.pythonhosted.org/packages/c8/23/2b9e53515cb4c3c39603a6d1944d0acf09d26f46e41faf893991c09c025d/PACbayesianNMF-0.1.3.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "12cd25b08663ca9881b2e977482343d9", "sha256": "2aa8bece2aa3a64487c4080a2a38be1c523bf8cb8df37af560673433e9766d91" }, "downloads": -1, "filename": "PACbayesianNMF-0.1.3.zip", "has_sig": false, "md5_digest": "12cd25b08663ca9881b2e977482343d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1854117, "upload_time": "2016-07-12T11:49:21", "url": "https://files.pythonhosted.org/packages/c8/23/2b9e53515cb4c3c39603a6d1944d0acf09d26f46e41faf893991c09c025d/PACbayesianNMF-0.1.3.zip" } ] }