{ "info": { "author": "Corey Smith", "author_email": "coreys@uchicago.edu", "bugtrack_url": null, "classifiers": [], "description": "# YouChoose\n\n[![Build Status](https://travis-ci.org/csmithchicago/YouChoose.svg?branch=master)](https://travis-ci.org/csmithchicago/YouChoose)\n[![Coverage Status](https://coveralls.io/repos/github/csmithchicago/YouChoose/badge.svg)](https://coveralls.io/github/csmithchicago/YouChoose)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/python/black)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/413dbdc41b89490da86758b6dc980d3c)](https://www.codacy.com/app/csmithchicago/YouChoose?utm_source=github.com&utm_medium=referral&utm_content=csmithchicago/YouChoose&utm_campaign=Badge_Grade)\n[![Documentation Status](https://readthedocs.org/projects/youchoose/badge/?version=latest)](https://youchoose.readthedocs.io/en/latest/?badge=latest)\n[![PyPI version](https://badge.fury.io/py/youchoose.svg)](https://badge.fury.io/py/youchoose)\n\n## Project Overview\n\nA recommender system built on PyTorch. I wanted a library similar to what was provided\nin OpenRec but for PyTorch. Spotlight is a similar package but appears to have died. And\nwhile it does have some nice features, instead of forking it and building on it,\nI wanted to start at the ground floor to build a library that would be simple to use but\nalso easy to configure.\n\n## Project Set-Up\n\n### Virtual Environment\n\nThe best way to run the code is to use a python virtual environment. This will require that you have python3 and git already installed on your system. To begin, run `python3 -m venv project-name` to create a virtual environment in a folder called project-name. Now run `cd project-name` to change directories.\n\n### Install with PIP\n\n```sh\npip install youchoose\n```\n\n### Install From Source\n\nThe following command is then run to clone the repository.\n\n```sh\ngit clone https://github.com/csmithchicago/YouChoose.git\n\nsource bin/activate\ncd youchoose\npip install -r requirements.txt\n```\n\n## Project References\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/csmithchicago/YouChoose", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "youchoose", "package_url": "https://pypi.org/project/youchoose/", "platform": "", "project_url": "https://pypi.org/project/youchoose/", "project_urls": { "Homepage": "https://github.com/csmithchicago/YouChoose" }, "release_url": "https://pypi.org/project/youchoose/0.1.2/", "requires_dist": [ "matplotlib", "numpy", "pandas (>=0.24.2)", "scikit-learn", "sklearn", "torch (>=1.1.0)", "torchvision", "tqdm", "alabaster (==0.7.12) ; extra == 'dev'", "appdirs (==1.4.3) ; extra == 'dev'", "arrow (==0.13.1) ; extra == 'dev'", "asn1crypto (==0.24.0) ; extra == 'dev'", "aspy.refactor-imports (==1.1.0) ; extra == 'dev'", "aspy.yaml (==1.3.0) ; extra == 'dev'", "astroid (==2.0.4) ; extra == 'dev'", "atomicwrites (==1.3.0) ; extra == 'dev'", "attrs (==19.1.0) ; extra == 'dev'", "autodoc (==0.5.0) ; extra == 'dev'", "autograd (==1.2) ; extra == 'dev'", "autopep8 (==1.4.4) ; extra == 'dev'", "Babel (==2.7.0) ; extra == 'dev'", "backcall (==0.1.0) ; extra == 'dev'", "bcrypt (==3.1.7) ; extra == 'dev'", "beautifulsoup4 (==4.7.1) ; extra == 'dev'", "binaryornot (==0.4.4) ; extra == 'dev'", "black (==19.3b0) ; extra == 'dev'", "bleach (==3.1.0) ; extra == 'dev'", "blis (==0.2.4) ; extra == 'dev'", "cached-property (==1.5.1) ; extra == 'dev'", "cachetools (==3.1.0) ; extra == 'dev'", "certifi (==2019.3.9) ; extra == 'dev'", "cffi (==1.12.3) ; extra == 'dev'", "cfgv (==2.0.0) ; extra == 'dev'", "chardet (==3.0.4) ; extra == 'dev'", "codacy-coverage (==1.3.11) ; extra == 'dev'", "colorama (==0.4.1) ; extra == 'dev'", "coverage (==4.5.3) ; extra == 'dev'", "crate-docs-theme (==0.5.78) ; extra == 'dev'", "cryptography (==2.7) ; extra == 'dev'", "cycler (==0.10.0) ; extra == 'dev'", "cymem (==2.0.2) ; extra == 'dev'", "Cython (==0.29.11) ; extra == 'dev'", "cytoolz (==0.9.0.1) ; extra == 'dev'", "decorator (==4.4.0) ; extra == 'dev'", "defusedxml (==0.6.0) ; extra == 'dev'", "dill (==0.2.9) ; extra == 'dev'", "docutils (==0.14) ; extra == 'dev'", "dodgy (==0.1.9) ; extra == 'dev'", "entrypoints (==0.3) ; extra == 'dev'", "ERAlchemy (==1.2.10) ; extra == 'dev'", "flake8 (==3.7.7) ; extra == 'dev'", "ftfy (==4.4.3) ; extra == 'dev'", "future (==0.17.1) ; extra == 'dev'", "hdbscan (==0.8.20) ; extra == 'dev'", "html5lib (==1.0.1) ; extra == 'dev'", "identify (==1.4.5) ; extra == 'dev'", "idna (==2.8) ; extra == 'dev'", "ijson (==2.3) ; extra == 'dev'", "imageio (==2.5.0) ; extra == 'dev'", "imagesize (==1.1.0) ; extra == 'dev'", "importlib-metadata (==0.18) ; extra == 'dev'", "ipykernel (==5.1.1) ; extra == 'dev'", "ipython (==7.6.0) ; extra == 'dev'", "ipython-genutils (==0.2.0) ; extra == 'dev'", "ipywidgets (==7.4.2) ; extra == 'dev'", "isort (==4.3.20) ; extra == 'dev'", "jedi (==0.14.0) ; extra == 'dev'", "Jinja2 (==2.10.1) ; extra == 'dev'", "jinja2-time (==0.2.0) ; extra == 'dev'", "jmespath (==0.9.4) ; extra == 'dev'", "joblib (==0.13.2) ; extra == 'dev'", "jsonpickle (==1.1) ; extra == 'dev'", "jsonschema (==3.0.1) ; extra == 'dev'", "jupyter (==1.0.0) ; extra == 'dev'", "jupyter-client (==5.2.4) ; extra == 'dev'", "jupyter-console (==6.0.0) ; extra == 'dev'", "jupyter-contrib-core (==0.3.3) ; extra == 'dev'", "jupyter-contrib-nbextensions (==0.5.1) ; extra == 'dev'", "jupyter-core (==4.5.0) ; extra == 'dev'", "jupyter-highlight-selected-word (==0.2.0) ; extra == 'dev'", "jupyter-latex-envs (==1.4.6) ; extra == 'dev'", "jupyter-nbextensions-configurator (==0.4.1) ; extra == 'dev'", "kiwisolver (==1.1.0) ; extra == 'dev'", "lazy-object-proxy (==1.3.1) ; extra == 'dev'", "Lifetimes (==0.11.1) ; extra == 'dev'", "lxml (==4.3.4) ; extra == 'dev'", "Markdown (==3.1) ; extra == 'dev'", "MarkupSafe (==1.1.1) ; extra == 'dev'", "matplotlib (==3.1.0) ; extra == 'dev'", "mccabe (==0.6.1) ; extra == 'dev'", "mistune (==0.8.4) ; extra == 'dev'", "more-itertools (==7.0.0) ; extra == 'dev'", "murmurhash (==1.0.2) ; extra == 'dev'", "mwparserfromhell (==0.5.3) ; extra == 'dev'", "mypy (==0.711) ; extra == 'dev'", "mypy-extensions (==0.4.1) ; extra == 'dev'", "nbconvert (==5.5.0) ; extra == 'dev'", "nbformat (==4.4.0) ; extra == 'dev'", "networkx (==2.3) ; extra == 'dev'", "nodeenv (==1.3.3) ; extra == 'dev'", "notebook (==5.7.8) ; extra == 'dev'", "numpy (==1.16.4) ; extra == 'dev'", "packaging (==19.0) ; extra == 'dev'", "pandas (==0.24.2) ; extra == 'dev'", "pandocfilters (==1.4.2) ; extra == 'dev'", "paramiko (==2.6.0) ; extra == 'dev'", "parso (==0.5.0) ; extra == 'dev'", "pep8-naming (==0.4.1) ; extra == 'dev'", "pexpect (==4.7.0) ; extra == 'dev'", "pickleshare (==0.7.5) ; extra == 'dev'", "Pillow (==6.0.0) ; extra == 'dev'", "plac (==1.0.0) ; extra == 'dev'", "pluggy (==0.12.0) ; extra == 'dev'", "pockets (==0.7.2) ; extra == 'dev'", "pony (==0.7.10) ; extra == 'dev'", "poyo (==0.4.2) ; extra == 'dev'", "pre-commit (==1.17.0) ; extra == 'dev'", "preshed (==2.0.1) ; extra == 'dev'", "prometheus-client (==0.7.1) ; extra == 'dev'", "prompt-toolkit (==2.0.9) ; extra == 'dev'", "ptyprocess (==0.6.0) ; extra == 'dev'", "py (==1.8.0) ; extra == 'dev'", "pyasn1 (==0.4.5) ; extra == 'dev'", "pycodestyle (==2.5.0) ; extra == 'dev'", "pycosat (==0.6.3) ; extra == 'dev'", "pycparser (==2.19) ; extra == 'dev'", "pydocstyle (==3.0.0) ; extra == 'dev'", "pydot (==1.4.1) ; extra == 'dev'", "pyemd (==0.5.1) ; extra == 'dev'", "pyflakes (==1.6.0) ; extra == 'dev'", "Pygments (==2.4.2) ; extra == 'dev'", "pylint (==2.1.1) ; extra == 'dev'", "pylint-plugin-utils (==0.5) ; extra == 'dev'", "PyNaCl (==1.3.0) ; extra == 'dev'", "pyOpenSSL (==19.0.0) ; extra == 'dev'", "pyparsing (==2.4.0) ; extra == 'dev'", "Pyphen (==0.9.5) ; extra == 'dev'", "pyrsistent (==0.15.2) ; extra == 'dev'", "PySocks (==1.6.8) ; extra == 'dev'", "pytest (==4.6.3) ; extra == 'dev'", "pytest-cov (==2.7.1) ; extra == 'dev'", "python-coveralls (==2.9.2) ; extra == 'dev'", "python-dateutil (==2.8.0) ; extra == 'dev'", "python-dotenv (==0.10.3) ; extra == 'dev'", "python-Levenshtein (==0.12.0) ; extra == 'dev'", "pytz (==2019.1) ; extra == 'dev'", "PyWavelets (==1.0.3) ; extra == 'dev'", "PyYAML (==4.2b1) ; extra == 'dev'", "pyzmq (==18.0.1) ; extra == 'dev'", "qtconsole (==4.5.1) ; extra == 'dev'", "requests (==2.22.0) ; extra == 'dev'", "rsa (==3.4.2) ; extra == 'dev'", "ruamel.yaml (==0.15.46) ; extra == 'dev'", "scikit-learn (==0.21.2) ; extra == 'dev'", "scipy (==1.3.0) ; extra == 'dev'", "seaborn (==0.9.0) ; extra == 'dev'", "seed-isort-config (==1.9.1) ; extra == 'dev'", "Send2Trash (==1.5.0) ; extra == 'dev'", "setoptconf (==0.2.0) ; extra == 'dev'", "six (==1.12.0) ; extra == 'dev'", "sklearn (==0.0) ; extra == 'dev'", "snowballstemmer (==1.2.1) ; extra == 'dev'", "soupsieve (==1.9.2) ; extra == 'dev'", "Sphinx (==1.7.4) ; extra == 'dev'", "sphinx-rtd-theme (==0.4.3) ; extra == 'dev'", "sphinx-sitemap (==0.3.1) ; extra == 'dev'", "sphinxcontrib-applehelp (==1.0.1) ; extra == 'dev'", "sphinxcontrib-devhelp (==1.0.1) ; extra == 'dev'", "sphinxcontrib-htmlhelp (==1.0.2) ; extra == 'dev'", "sphinxcontrib-jsmath (==1.0.1) ; extra == 'dev'", "sphinxcontrib-napoleon (==0.7) ; extra == 'dev'", "sphinxcontrib-plantuml (==0.14) ; extra == 'dev'", "sphinxcontrib-qthelp (==1.0.2) ; extra == 'dev'", "sphinxcontrib-serializinghtml (==1.1.3) ; extra == 'dev'", "sphinxcontrib-websupport (==1.1.2) ; extra == 'dev'", "SQLAlchemy (==1.3.5) ; extra == 'dev'", "srsly (==0.0.5) ; extra == 'dev'", "sshtunnel (==0.1.5) ; extra == 'dev'", "terminado (==0.8.2) ; extra == 'dev'", "testpath (==0.4.2) ; extra == 'dev'", "thinc (==7.0.4) ; extra == 'dev'", "toml (==0.10.0) ; extra == 'dev'", "toolz (==0.9.0) ; extra == 'dev'", "torch (==1.1.0) ; extra == 'dev'", "torchvision (==0.3.0) ; extra == 'dev'", "tornado (==6.0.2) ; extra == 'dev'", "tqdm (==4.32.2) ; extra == 'dev'", "traitlets (==4.3.2) ; extra == 'dev'", "typed-ast (==1.4.0) ; extra == 'dev'", "urllib3 (==1.24.2) ; extra == 'dev'", "virtualenv (==16.6.1) ; extra == 'dev'", "waitress (==1.3.0) ; extra == 'dev'", "wasabi (==0.2.1) ; extra == 'dev'", "wcwidth (==0.1.7) ; extra == 'dev'", "webencodings (==0.5.1) ; extra == 'dev'", "WebOb (==1.8.5) ; extra == 'dev'", "WebTest (==2.0.33) ; extra == 'dev'", "wget (==3.2) ; extra == 'dev'", "whichcraft (==0.5.2) ; extra == 'dev'", "widgetsnbextension (==3.4.2) ; extra == 'dev'", "wrapt (==1.11.1) ; extra == 'dev'", "yapf (==0.27.0) ; extra == 'dev'", "zipp (==0.5.1) ; extra == 'dev'" ], "requires_python": "", "summary": "YouChoose is an open source recommendation library built on PyTorch.", "version": "0.1.2" }, "last_serial": 5483866, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "e6ce64bdfab2d566adc4ef1316d90970", "sha256": "f36b759c9d6f6ce70958769cdb57f16edc784f2c7df59ffab22139f4c642a5dc" }, "downloads": -1, "filename": "youchoose-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e6ce64bdfab2d566adc4ef1316d90970", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21838, "upload_time": "2019-07-02T01:42:49", "url": "https://files.pythonhosted.org/packages/9a/e5/a38892d0fe8a43bff9cb67ad1ca6f6a9389c96d7d03f591bc3be8c7b587b/youchoose-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "270e4c226f70346d82817586f3adefac", "sha256": "78ce685d787dc0888c144bb605531f244d4a27eef01c584a6a96f570e440922a" }, "downloads": -1, "filename": "youchoose-0.1.0.tar.gz", "has_sig": false, "md5_digest": "270e4c226f70346d82817586f3adefac", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15647, "upload_time": "2019-07-02T01:42:52", "url": "https://files.pythonhosted.org/packages/f4/1e/e7de89ad90e6e3d3c3b2ceca9035e17fa8c20bac78e915d57cee277a00ee/youchoose-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "694abfccc3e87f0e14734cf0d97d93c1", "sha256": "c45defe04a82aa480e5ed52e6fc29e88786db0a395e7fc3af0697670ba293774" }, "downloads": -1, "filename": "youchoose-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "694abfccc3e87f0e14734cf0d97d93c1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21032, "upload_time": "2019-07-02T02:19:35", "url": "https://files.pythonhosted.org/packages/02/03/17b060b1d21d31cf9fd9a8db9cfe6f4317f2e1fa6abe5f09205965cdcf0e/youchoose-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4ea8fe7df07df13911442656aabcee66", "sha256": "122251032e870efad5873206335b172c7908355dee495fefb15f2bcd154469c1" }, "downloads": -1, "filename": "youchoose-0.1.1.tar.gz", "has_sig": false, "md5_digest": "4ea8fe7df07df13911442656aabcee66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13772, "upload_time": "2019-07-02T02:19:37", "url": "https://files.pythonhosted.org/packages/6f/ac/223a5821d6778fd15bc4c52872491c28d9143c9ce2929ef276e3ec788a92/youchoose-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "55672fc8391070acb768d5f8e06fd810", "sha256": "413fdd5d837d9627b7275707bac49938f721255610f307377c4b13d9a22fc8f9" }, "downloads": -1, "filename": "youchoose-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "55672fc8391070acb768d5f8e06fd810", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 34525, "upload_time": "2019-07-03T22:34:26", "url": "https://files.pythonhosted.org/packages/6c/cf/c9a394aef505058fd7a3619f2bb10e9eeddc674f45bc5918e5d10fa8ed39/youchoose-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "834ad72bf3358d615349f855cdc9d3b7", "sha256": "b38aa41dd2183b0dd20c702d551b5c736e311bb6e79b876be1d337adc341ae05" }, "downloads": -1, "filename": "youchoose-0.1.2.tar.gz", "has_sig": false, "md5_digest": "834ad72bf3358d615349f855cdc9d3b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20912, "upload_time": "2019-07-03T22:34:29", "url": "https://files.pythonhosted.org/packages/64/ea/f6e651187b7c67546988a51b00942aa2ac9ca99ad73253f1f63fb1d74c8d/youchoose-0.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "55672fc8391070acb768d5f8e06fd810", "sha256": "413fdd5d837d9627b7275707bac49938f721255610f307377c4b13d9a22fc8f9" }, "downloads": -1, "filename": "youchoose-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "55672fc8391070acb768d5f8e06fd810", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 34525, "upload_time": "2019-07-03T22:34:26", "url": "https://files.pythonhosted.org/packages/6c/cf/c9a394aef505058fd7a3619f2bb10e9eeddc674f45bc5918e5d10fa8ed39/youchoose-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "834ad72bf3358d615349f855cdc9d3b7", "sha256": "b38aa41dd2183b0dd20c702d551b5c736e311bb6e79b876be1d337adc341ae05" }, "downloads": -1, "filename": "youchoose-0.1.2.tar.gz", "has_sig": false, "md5_digest": "834ad72bf3358d615349f855cdc9d3b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20912, "upload_time": "2019-07-03T22:34:29", "url": "https://files.pythonhosted.org/packages/64/ea/f6e651187b7c67546988a51b00942aa2ac9ca99ad73253f1f63fb1d74c8d/youchoose-0.1.2.tar.gz" } ] }